使用 Matplotlib 在线图中制作不同颜色的标记

问题描述 投票:0回答:1

我有一个数据集,我使用线图绘制某些值 这些点由圆形标记表示

我想要做的是 - 让标记的颜色对应于点的性质(y>=0)为绿色,(y<0)

)为红色

有没有办法可以在线图中实现这一点?我可以在 matplotlib 中使用任何其他类型的绘图来实现它吗?

a = [1,2,3,4,5]
b = [1,5,-1,-2,0]
fig = plt.figure()
ax = fig.add_axes([0,0,3,3])
ax.plot(a, b, marker='o', mfc=['green','green','red','red','green'])
plt.show()

这就是我想做的事情

python matplotlib plot
1个回答
0
投票

你可以这样做

ax.plot(a, b)
ax.scatter(a, b, c=['green' if e >= 0 else 'red' for e in b])
© www.soinside.com 2019 - 2024. All rights reserved.