有没有人对在情节上呈现重叠线的最佳方式有什么建议?我有很多,我的想法是在不重叠的地方用不同颜色的实线,在重叠的地方用虚线,这样所有的颜色都可见,重叠的颜色也能看到。
但是,我该怎么做。
原文由 coffeecup 发布,翻译遵循 CC BY-SA 4.0 许可协议
有没有人对在情节上呈现重叠线的最佳方式有什么建议?我有很多,我的想法是在不重叠的地方用不同颜色的实线,在重叠的地方用虚线,这样所有的颜色都可见,重叠的颜色也能看到。
但是,我该怎么做。
原文由 coffeecup 发布,翻译遵循 CC BY-SA 4.0 许可协议
我在高度离散化的情节上遇到了同样的问题。
这里的起始情况:
import matplotlib.pyplot as plt
grid=[x for x in range(10)]
graphs=[
[1,1,1,4,4,4,3,5,6,0],
[1,1,1,5,5,5,3,5,6,0],
[1,1,1,0,0,3,3,2,4,0],
[1,2,4,4,3,2,3,2,4,0],
[1,2,3,3,4,4,3,2,6,0],
[1,1,3,3,0,3,3,5,4,3],
]
for gg,graph in enumerate(graphs):
plt.plot(grid,graph,label='g'+str(gg))
plt.legend(loc=3,bbox_to_anchor=(1,0))
plt.show()
没有人能说出绿线和蓝线的确切位置
和我的“解决方案”
import matplotlib.pyplot as plt
grid=[x for x in range(10)]
graphs=[
[1,1,1,4,4,4,3,5,6,0],
[1,1,1,5,5,5,3,5,6,0],
[1,1,1,0,0,3,3,2,4,0],
[1,2,4,4,3,2,3,2,4,0],
[1,2,3,3,4,4,3,2,6,0],
[1,1,3,3,0,3,3,5,4,3],
]
for gg,graph in enumerate(graphs):
lw=10-8*gg/len(graphs)
ls=['-','--','-.',':'][gg%4]
plt.plot(grid,graph,label='g'+str(gg), linestyle=ls, linewidth=lw)
plt.legend(loc=3,bbox_to_anchor=(1,0))
plt.show()
我非常感谢有关改进的建议!
原文由 Markus Dutschke 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答899 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
只需降低线条的不透明度,使它们透明。您可以使用 alpha 变量来实现。例子:
plt.plot(x, y, alpha=0.7)
其中 alpha 范围为 0-1,0 表示不可见。