如何在 matplotlib 中完全自定义的位置放置小刻度?

coa*_*tum 5 python customization plot matplotlib axis-labels

假设我想在自定义位置向 x 轴添加次要刻度,相当于此主要刻度的命令:plt.xticks([1,2,3])

我努力了:

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,4,9]
plt.scatter(x,y)
ax = plt.gca()
ax.xaxis.set_minor_locator([1.1, 1.9, 2.5])
Run Code Online (Sandbox Code Playgroud)

但这会引发错误,因为最后一个命令可能需要一个股票代码对象,而不是参数中的列表。有什么Pythonic的方法可以解决这个问题吗?

She*_*ore 8

您只需添加以下行并打开标志minor即可True

ax.set_xticks([1.1, 1.9, 2.5], minor=True)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述