我正在使用python和matplotlib来生成图形输出
有没有一种简单的方法来生成点划线样式?
我知道'--'
,'-.'
和':'
选项。不幸的是,'-..'
不会产生点划线
我查看了set_dashes
命令,但这似乎控制了破折号的长度和两个相邻破折号之间的空间。
一种选择可以是在彼此的顶部绘制两条线;在破折号之间留有足够空间的一个虚线 - 并且一个虚线,与破折号一样大的点宽且间隔开,使得两个点位于每个破折号之间。我不怀疑这可以做到,我只是希望有一个更简单的方法
我忽略了一个选择吗?
答案 0 :(得分:56)
您可以定义custom dashes:
import matplotlib.pyplot as plt
line, = plt.plot([1,5,2,4], '-')
line.set_dashes([8, 4, 2, 4, 2, 4])
plt.show()
[8, 4, 2, 4, 2, 4]
表示
@Achim指出您还可以指定dashes
参数:
plt.plot([1,5,2,4], '-', dashes=[8, 4, 2, 4, 2, 4])
plt.show()
产生与上面相同的结果。