matplotlib:参数`which`在tick_params中做了什么

时间:2017-08-21 21:08:35

标签: python matplotlib

from matplotlib import pyplot as plt
.
.
.
plt.tick_params(axis='both', which='major', labelsize=16)

我检查了matplotlib.pyplot.tick_params中的参数“which”。据说默认是'主要';将参数应用于 滴答。

所以我试图将'= major'更改为'minor'。似乎只有标签尺寸变小。但是,标签大小不应该由参数'labelsize'控制吗?

我还尝试将labelsize=16更改为labelsize=106,同时保留which='minor'。事实证明没有任何反应。

1 个答案:

答案 0 :(得分:1)

参数which确实选择其中"minor""major""both"中的哪些参数适用。

默认情况下,即使您使用

更改其大小,matplotlib图中也没有小标记标签
plt.tick_params(axis='both', which='minor', labelsize=16)

你没有看到任何变化。但请注意如果你的情节中有小标记,那么它们的尺寸改变。

在下面的示例中,我们使用定位器打开次要刻度,然后使用格式化程序打开次要刻度标签。然后ax.tick_params(axis='both', which='minor', labelsize=8)为次要标记提供8的字体大小。

enter image description here

import matplotlib.pyplot as plt
from matplotlib.ticker import MultipleLocator, ScalarFormatter

fig, ax = plt.subplots()
ax.plot([0,10,20,30], [0,2,1,2])

ax.xaxis.set_minor_locator(MultipleLocator(1))
ax.xaxis.set_minor_formatter(ScalarFormatter())

ax.tick_params(axis='both', which='major', labelsize=16, pad=12)
ax.tick_params(axis='both', which='minor', labelsize=8)

plt.show()