Python 如何绘制渐变色线?

Python 如何绘制渐变色线?,python,matplotlib,Python,Matplotlib,此代码使用渐变颜色绘制散点图: import matplotlib.pyplot as plt import numpy as np x = np.arange(30) y = x t = x plt.scatter(x, y, c=t) plt.colorbar() plt.show() 但是,我如何用x和y坐标绘制渐变色线 ? 编辑:正如评论中所建议的,一个最小的工作示例可以是 import numpy as np import matplotlib.pyplot as plt f

此代码使用渐变颜色绘制散点图:

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(30)
y = x
t = x

plt.scatter(x, y, c=t)
plt.colorbar()
plt.show()


但是,我如何用
x
y
坐标绘制渐变色
线
?


编辑:正如评论中所建议的,一个最小的工作示例可以是

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection

x    = np.linspace(0,1, 100)
y    = np.linspace(0,1, 100)
cols = np.linspace(0,1,len(x))

points = np.array([x, y]).T.reshape(-1, 1, 2)
segments = np.concatenate([points[:-1], points[1:]], axis=1)

fig, ax = plt.subplots()
lc = LineCollection(segments, cmap='viridis')
lc.set_array(cols)
lc.set_linewidth(2)
line = ax.add_collection(lc)
fig.colorbar(line,ax=ax)

是的,但我似乎无法让它在matplotlib中的简单线条上工作,即Line2d对象,一次只支持一种颜色。如果你想有一个颜色渐变,你将需要使用线条集合。技术是将线条划分成小块,并用一种颜色绘制每一块。提供的链接显示了它是如何工作的。虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接以供参考。如果链接页面发生更改,则仅链接的答案可能无效-