首页 > 解决方案 > matplotlib 中的雪佛龙线型

问题描述

是否可以在 matplotlib(或任何其他 python 绘图库)中使用更复杂的形状制作虚线样式?制作具有不同间距以及点和破折号组合的线条样式很容易,但我追求的是这样的:

在此处输入图像描述

我可以设想一种方法,从头开始编写一个函数以采用自定义 V 形标记样式并计算出显示它的角度和正确的间距等。然而,这似乎是解决问题的一种过于复杂的方法很容易分解为不同的指定线宽之类的东西。

标签: pythonmatplotliblinestyle

解决方案


如果你找到更好的乳胶符号,你可以做这样的事情。

import numpy as np
import matplotlib
matplotlib.rc('text', usetex=True)
matplotlib.rcParams['text.latex.preamble'] = [r'\boldmath', r'\usepackage{amsmath}', r'\usepackage{amssymb}', r'\usepackage{fontawesome}']
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot('111')
ax.plot(np.linspace(0,10,10),np.repeat(10,10),marker='$>$',ls='',ms=50,mew=10)
plt.show()

在此处输入图像描述

看看fontawesome乳胶包中的符号,它可能更接近你想要的东西。然后,您可以将标记替换marker='$>$'为另一个乳胶符号。


推荐阅读