使用虚线很好,因为它提供了一种区分线条的方式,不依赖于读者能否感知颜色差异。问题在于,它们只有在线条的细节都大于虚线模式时才有效。Matplotlib's
我可以通过画两次相同的线来实现这种效果,一次用实线,然后再用虚线覆盖相同的数据,但这会使管理alpha透明度变得复杂(当一个图中有几条相交的线时,半透明线是理想的)。下面的黑色和灰色线条是使用以下代码生成的:
编辑:希望使用单个调用
Axes.plot
函数的文档描述了如何自定义线条的颜色(使用color
关键字)以及如何自定义虚线的模式(dash
关键字)。有没有办法通过单个调用Axes.plot
使图形在两种不同可选颜色之间交替而不是“存在”和“不存在”?我可以通过画两次相同的线来实现这种效果,一次用实线,然后再用虚线覆盖相同的数据,但这会使管理alpha透明度变得复杂(当一个图中有几条相交的线时,半透明线是理想的)。下面的黑色和灰色线条是使用以下代码生成的:
ax.plot(xv1, yv1, marker="None", linestyle="-", color=(0.8, 0.8, 0.8, 1.0))
ax.plot(xv1, yv1, marker="None", linestyle="--", color=(0.0, 0.0, 0.0, 1.0))
编辑:希望使用单个调用
Axis.plot
实现此操作的另一个原因是,在创建图例时可以正确地显示示例线(这是我在答案中找到的唯一剩余的缺点)。