1

我在 matplotlib 中以 loglog 比例绘制多条曲线,为了使它们可区分,我使用了标记。由于数据点很多,我使用markevery=100。但是对于对数刻度上的水平轴,它们会聚集在一起。有没有办法让标记也以对数方式间隔开?

4

1 回答 1

3

markevery与其指定将在每个数据点上放置标记的整数,不如N使用浮点数来确保这些点沿线等距分布(无论使用线性还是对数刻度)。

every=0.1,(即浮点数)然后标记将沿线以大致相等的距离间隔开;沿标记之间的线的距离是通过将坐标区边界框对角线的显示坐标距离乘以 every 的值来确定的。

t = np.arange(0.01, 30, 0.01)
plt.loglog(t, 20 * np.exp(-t / 10.0), '-o', markevery=0.1)

在此处输入图像描述

于 2016-06-23T15:47:04.820 回答