删除日志图中特定的 xaxis 刻度标签,matplotlib

Removing specific xaxis tick labels in a log-plot, matplotlib

我有一个对数对数等高线图,我需要为其显示次要刻度线。所以我用了

ax.xaxis.set_minor_formatter(fmt("%.1f"))
ax.yaxis.set_minor_formatter(fmt("%.1f"))

其中 fmtfrom matplotlib.ticker import FormatStrFormatter as fmt

这很好用,给我所有的小问题。然而,正如您从附图中看到的那样,x 轴刻度, 尤其是 7.0,8.0 and 9.0 是重叠 的刻度,我只想 专门删除它们,但保留其他小滴答声。

这可能吗?我找不到删除特定小刻度的代码。

发布问题后,我立即找到了一个简单的解决方案。

就是用ax.xaxis.set_minor_locator(plt.FixedLocator([2,3,4,5]))

FixedLocator 中的列表可以完成这项工作。