首页 > 解决方案 > 在 matplotlib 中设置网格线上点之间的距离

问题描述

我正在绘制一个带有网格的 matplotlib 图,沿着主轴和次轴。此外,我已将短轴线样式设置为":",因此网格线是点而不是实线。但是这些点之间的距离很近,很难区分。有没有办法控制这些点之间的间距?以下是我的代码:

import matplotlib.pyplot as plt

plt.grid(which='major', linewidth='0.7')
plt.grid(which='minor', linewidth='0.7', ls=":")
plt.semilogy(np.linspace(-4, 20, 25), some_data, 'C1', marker='o', markersize=20)

我得到以下图表 图形

虽然短轴是虚线,但它看起来几乎像长轴,它是实线。我想知道是否可以指定点之间的距离,使其看起来不那么密集。谢谢。

标签: pythonmatplotlibgraph

解决方案


dashes参数/参数可让您指定。

plt.grid(which='minor', linewidth='0.7', ls=":", dashes=(1,10,1,10))

dashes是一个Line2D属性,因此您应该能够为任何Line2D艺术家设置间距。


推荐阅读