pandas - Matplotlib:如何使用 pandas plot api 在散点图中绘制一个空圆?

标签 pandas matplotlib scatter-plot

<分区>

我正在尝试使用 pandas api 绘制散点图,其中每个点都是一个空圆,仅具有边框颜色和透明度。我在这段代码中尝试了很多调整:

 ax = ddf.plot.scatter(
        x='espvida', 
        y='e_anosestudo', 
        c=ddf['cor'],
        alpha=.2,
        marker='o');

生成的图如下所示:

Scatter plot

如果你仔细观察这些点:

filled points

您会看到它们具有透明的填充颜色和边框。我希望它只有一个透明边框。我会怎么做?

最佳答案

我似乎无法让它与 DataFrame.plot.scatter 一起工作;它似乎不尊重 facecolors='none' kwarg,可能是因为一些默认颜色参数被传递给 plt.scatter

相反,返回到 matplotlib,指定 facecolors='none' 并将 edgecolors 设置为 df 中的列 表示颜色。

示例数据

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

df = pd.DataFrame({'x': np.random.normal(1,1,1000),
                   'y': np.random.normal(1,1,1000),
                   'color': list('rgby')*250})

plt.scatter(df.x.values, df.y.values, facecolors='none', edgecolors=df['color'], alpha=0.2, s=100)
plt.show()

enter image description here

关于pandas - Matplotlib:如何使用 pandas plot api 在散点图中绘制一个空圆?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52490041/

相关文章:

python - pandas dataframe 对象到日期时间分钟

python - Pandas boxplot 覆盖/覆盖 matplotlib 图

python - 我想用 matplotlib 在一个 Canvas 上写一些图表,使用 pyqt5

Python:如何使用类来绘制不同的线?

python - pandas scatter_matrix 函数中 'ax' 关键字的用途

matlab - 具有多个标记的散点图

带有间隙的 iOS Scatter 核心图

python - 将数据帧中的值替换为其他行中的值 "target row"

python - 如何将 DataFrame 拆分为 FirstName 列和 LastName 列

python - 在 python 中创建动画的方法?