在散点图的pyplot文档中:
matplotlib.pyplot.scatter(x, y, s=20, c='b', marker='o', cmap=None, norm=None,
vmin=None, vmax=None, alpha=None, linewidths=None,
faceted=True, verts=None, hold=None, **kwargs)
标记大小
点^2
是哪种单位?这是什么意思?s=100
是否意味着10像素x10像素
?
基本上,我试图用不同的标记大小绘制散点图,我想弄清楚s
数字的含义。
这可能是一种有点混乱的方式来定义大小,但您基本上是在指定标记的区域。这意味着,要使标记的宽度(或高度)加倍,需要将s
增加4倍。[因为A=WH=>(2W)(2H)=4A]
但是,这样定义标记的大小是有原因的。由于将面积缩放为宽度的平方,因此将宽度增加一倍实际上会使尺寸增加2倍以上(实际上增加了4倍)。要了解这一点,请考虑以下两个示例及其产生的输出。
# doubling the width of markers
x = [0,2,4,6,8,10]
y = [0]*len(x)
s = [20*4**n for n in range(len(x))]
plt.scatter(x,y,s=s)
plt.show()
给出
# doubling the area of markers
x = [0,2,4,6,8,10]
y = [0]*len(x)
s = [20*2**n for n in range(len(x))]
plt.scatter(x,y,s=s)
plt.show()
给出
现在,标记的表观大小以直观的方式大致线性增加。
至于什么是‘点’的确切含义,它是相当任意的绘图目的,你可以只是缩放你的所有大小一个常数,直到他们看起来合理。
这是标记大小的不同功能看起来的样子:
x = [0,2,4,6,8,10,12,14,16,18]
s_exp = [20*2**n for n in range(len(x))]
s_square = [20*n**2 for n in range(len(x))]
s_linear = [20*n for n in range(len(x))]
plt.scatter(x,[1]*len(x),s=s_exp, label='$s=2^n$', lw=1)
plt.scatter(x,[0]*len(x),s=s_square, label='$s=n^2$')
plt.scatter(x,[-1]*len(x),s=s_linear, label='$s=n$')
plt.ylim(-1.5,1.5)
plt.legend(loc='center left', bbox_to_anchor=(1.1, 0.5), labelspacing=3)
plt.show()
问题内容: 我有一组要显示为散点图的数据。我希望将每个点绘制为大小的平方。 问题是散布函数读取的大小为点^ 2。我想要的是让每个点都由面积dx ^ 2的正方形表示,该面积以“真实”单位(绘图单位)表示。希望您能明白这一点。 我还有另一个问题。散点图功能用黑色边框绘制标记,如何删除该选项并且完全没有边框? 问题答案: 从 用户数据 坐标系转换为 显示 坐标系。 并使用edgecolors =’non
如何更改散点图中标记线的粗细?是中的有效属性;图是否有等价属性? 我不是想改变尺寸而是线条粗细!
这可能吗?谢谢
我想标记我在python中绘制的每个点,但我没有找到合适的方法。 假设我有两个名为和的元素列表,我以这种方式打印它们: 我想用变量k来标记每个点,的范围显然是从到。谢谢你抽出时间
散点图沿 X 和 Y 轴放置的各个数据点来绘制数据。 图表属性 选择图表类型后,可以更改其属性来自定义图表: 选项 描述 常规 背景颜色 设置图表区域的背景颜色。 不透明度 设置背景颜色的不透明度。 显示边框 显示图表外部边框。 边界颜色 设置图表外部边框的颜色。 显示标题 显示图表的主要标题。 标题 指定图表的标题。 标题字体 设置标题的字体样式。 位置 设置标题的位置。 对齐 设置标题的水平对
散点图沿 X 和 Y 轴放置的各个数据点来绘制数据。 图表属性 选择图表类型后,可以更改其属性来自定义图表: 选项 描述 常规 背景颜色 设置图表区域的背景颜色。 显示边框 显示图表外部边框。 边界颜色 设置图表外部边框的颜色。 显示标题 显示图表的主要标题。 标题 指定图表的标题。 标题字体 设置标题的字体样式。 位置 设置标题的位置。 对齐 设置标题的水平对齐方式。 数据 颜色 设置数据系列的