python 如何更改标记边框宽度和影线宽度?

gpfsuwkq  于 2023-05-21  发布在  Python
关注(0)|答案(3)|浏览(304)

在这个散点图中的标记示例中,我将颜色设置为绿色,将边缘颜色设置为黑色,并将阴影设置为“|“。为了使填充图案显示出来,我必须设置边缘颜色,但是当我这样做时,我会在标记周围得到一个非常厚的边框。两个问题:
1)如何设置边框的大小(最好设置为0)?
2)如何增加剖面线的粗细?

rdlzhqv9

rdlzhqv91#

1.要控制标记边框的粗细,您只需为scatter()设置linewidth(或为plot()设置markeredgewidth)。
1.可以通过重复符号(在下面的示例中,'|'在R/H窗格中重复;注意,为了获得NW->SE对角线,符号必须被转义,因此需要两倍的字符才能真正使其加倍-'\\\\'是密度2,而'||||'是密度4)。但是,我不认为阴影内的各条线的粗细是可控的。
请参见下面的代码示例以生成如下散点图:

import matplotlib.pyplot as plt
# generate some data
x = [1,2,3,4,5,8]
y= [i**2 for i in x]
y2= [60-i**2+3*i for i in x]

# plot markers with thick borders
plt.subplot(121)
plt.scatter(x,y, s=500, marker='s', edgecolor='black', linewidth=3, facecolor='green', hatch='|')
# compare with no borders, and denser hatch.
plt.subplot(122)
plt.scatter(x,y2, s=500, marker='s', edgecolor='black', linewidth=0, facecolor='green', hatch='||||')

plt.show()

matplotlib关于集合和分散的文档。

osh3o9ms

osh3o9ms2#

这是在你提出这个问题的几年后,但我发现的唯一方法是改变matplotlib.rc。
您可以在实际的.rc文件中或在Python脚本中执行此操作,例如:
import matplotlib as mpl
mpl.rc('hatch', color='k', linewidth=1.5)
这将使脚本中的所有填充线都变成黑色,厚度为1.5,而不是默认的1.0。

bmvo0sr5

bmvo0sr53#

如果使用plt.plot,则需要传递参数markeredgewidth

相关问题