繁体   English   中英

更改散点图 plot 标记厚度

[英]change scatter plot marker thickness

如何更改散点图 plot plt.scatter()中标记线的粗细? markeredgewidthplt.plot()中的有效属性; scatter是否有任何等效属性?

例如,当您更改散点图 plot 的大小时( marker = 'x' ),标记只会变大,但线条粗细不会改变。

我不是想改变大小,而是改变线条粗细!

您正在寻找 kwarg linewidths 例如:

import matplotlib.pyplot as plt
import numpy as np
x = y = np.arange(5)

fig,ax = plt.subplots(1)

ax.scatter(x,y,  s=100,marker='x',color='b',linewidths=1)
ax.scatter(x,y+1,s=100,marker='x',color='r',linewidths=2)
ax.scatter(x,y+2,s=100,marker='x',color='g',linewidths=3)

plt.show()

注意:在某些版本的matplotlib ,尽管手册目前是这样说的(2020 年 4 月),但似乎 kwarg 是linewidth ,而不是linewidths 这是matplotlib github 上的一个已知问题

在此处输入图片说明

Ubuntu-18.04和安装matplotlib==3.2.0python-3.6.9 ,你只需要设置linewidth属性(不是linewidths ):

import matplotlib.pyplot as plt
import numpy as np
x = y = np.arange(5)

fig,ax = plt.subplots(1)

ax.scatter(x,y,  s=100,marker='x',color='b',linewidth=1)
ax.scatter(x,y+1,s=100,marker='x',color='r',linewidth=2)
ax.scatter(x,y+2,s=100,marker='x',color='g',linewidth=6)

plt.show()

在此处输入图片说明

为简洁起见,您也可以简单地使用lw而不是linewidth

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM