真的只有4个Matplotlib线型吗?

Lee*_*Lee 14 python plot matplotlib

我一直在寻找matplotlib中的新线条样式,唯一可用的线条样式是[" - "," - "," - .",":",].(样式选项['','','无',]不计算,因为它们只是隐藏线条.)

Matplotlib pyplot中真的只有4种线型吗?是否有任何扩展可以添加更多的线条样式?有没有办法自定义线条样式?三个字符线样式怎么样:

  • ' - .':破折号点
  • ' - ..':破折点
  • '...':点点(空格)
  • 'xxx':x在一条线上
  • '\ /':Zig zags即'\ /\/\/\/'
  • '::':parrallel dots,即:::::

这些只是扩展线条样式范围的一些想法.

tmd*_*son 15

您可以使用dasheskwarg设置自定义短划线样式.

来自文档:

设置破折号序列,破折号序列以点开墨水.如果seq为空或seq =(None,None),则linestyle将设置为solid.

以下是一些基于您的一些建议的示例.显然,还有很多方法可以自定义它.

import matplotlib.pyplot as plt

fig,ax = plt.subplots(1)

# 3 dots then space
ax.plot(range(10), range(10),     dashes=[3,6,3,6,3,18],  lw=3,c='b')

# dash dash dot
ax.plot(range(10), range(0,20,2), dashes=[12,6,12,6,3,6], lw=3,c='r')

# dash dot dot
ax.plot(range(10), range(0,30,3), dashes=[12,6,3,6,3,6],  lw=3,c='g')
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述