【问题标题】:python matplotlib dash-dot-dot - how to?python matplotlib dash-dot-dot - 如何?
【发布时间】:2013-01-20 12:55:35
【问题描述】:

我正在使用 python 和 matplotlib 来生成图形输出。
有没有一种简单的方法来生成点划线样式?
我知道'--''-.'':' 选项。不幸的是,'-..' 不会产生点划线。
我看过set_dashes 命令,但这似乎控制了破折号的长度和两个相邻破折号之间的空间。
一种选择可能是在彼此之上绘制两条线;一种是虚线,虚线之间有足够的空间 - 一种是虚线,与虚线一样大的点宽且间隔开,因此每个虚线之间有两个点。我不怀疑这是可以做到的,我只是希望有一种更简单的方法。
我是否忽略了一个选项?

【问题讨论】:

    标签: python matplotlib linestyle


    【解决方案1】:

    你可以定义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] 表示

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

    @Achim 注意到您还可以指定dashes 参数:

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

    产生与上述相同的结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-15
      相关资源
      最近更新 更多