Matplotlib中使用LineCollection时是否可以设置透明度?

mea*_*ngs 1 python matplotlib pandas

有许多关于在 Matplotlib 中使用 LineCollections 的有用帖子。

我有工作代码,但无法弄清楚如何设置线条的透明度。例如,在 Pandas 中,这很简单:

df.plot(kind='line',alpha=.25)
Run Code Online (Sandbox Code Playgroud)

但是,我选择了 LineCollection 方法,因为我想绘制一个包含 >15k 行的数据框,而上面的示例不起作用。

我尝试ax.set_alpha(.25)在我的代码中添加:

fig, ax = plt.subplots()

ax.set_xlim(np.min(may_days), np.max(may_days))
ax.set_ylim(np.min(may_segments.min()), np.max(may_segments.max()))

line_segments = LineCollection(may_segments,cmap='jet')

line_segments.set_array(may_days)
ax.add_collection(line_segments)

ax.set_alpha(.05)

ax.set_title('Daily May Data')

plt.show()
Run Code Online (Sandbox Code Playgroud)

但没有任何变化。

不幸的是,我无法提供我正在使用的数据样本;然而,我发现这个Matplotlib gallery 文档的第二个例子很容易复制。

Gab*_*ski 5

您可以按照与 pandas 相同的方式进行操作。

line_segments = LineCollection(may_segments, cmap='jet', alpha=0.05)
Run Code Online (Sandbox Code Playgroud)