pythonmatplotlib短跑点 – 如何?

我正在使用python和matplotlib来生成graphics输出。
有没有简单的方法来生成点划线样式?
我知道'--''-.' ,和':'选项。 不幸的是, '-..'不会导致点划线。
我已经看了set_dashes命令,但似乎控制破折号的长度和两个相邻的破折号之间的空间。
一种select可能是将两条线彼此重叠; 一个破折号之间有足够的空间 – 一个点,与破折号一样大的点宽和间隔,以便每个破折号之间有两个点。 我不怀疑这可以做,我只是希望有一个更简单的方法。
我忽略了一个选项吗?

你可以定义自定义破折号 :

 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]意思

  • 8点,(破折号)
  • 4分,
  • 2点,(点)
  • 4分,
  • 2点,(点)
  • 4分。

@Achim指出你也可以指定dashes参数:

 plt.plot([1,5,2,4], '-', dashes=[8, 4, 2, 4, 2, 4]) plt.show() 

产生与上面所示相同的结果。