如何在matplotlib中用单个绘图命令绘制多彩曲线
如果我理解得没错,这个函数:
matplotlib.pyplot.plot(x, y)
会画出 len(x)-1 条独立的线段——一条是从 (x[0], y[0]) 到 (x[1], y[1]),另一条是从 (x[1], y[1]) 到 (x[2], y[2]),依此类推。在我的应用中,我想显示一条曲线,这条曲线是由一系列线段连接数据点而成的。不过,在每两个数据点之间,还有一个额外的数据(z),我想用线段的颜色来表示这个数据。显然,有一种方法可以做到这一点,如下所示:
for i in range(len(x)-1)):
matplotlib.pyplot.plot(x[i:i+2],y[i:i+2], color=z[i])
但是有没有办法可以不需要为每条线段单独调用 matplotlib.pyplot.plot 呢?
1 个回答
1
你可以使用 matplotlib.collections.LineCollection
这个工具,它可以接收一个叫 colors
的参数(这个参数是一个包含RGBA元组的序列)。