gpt4 book ai didi

python - 如何使用 matplotlib 增加刻度字体大小而不传递标签?

转载 作者:行者123 更新时间:2023-12-01 09:05:28 26 4
gpt4 key购买 nike

我想增加绘图上的刻度字体大小(x 轴和 y 轴),而不将标签作为输入参数传递给 ax.set_yticklabels()

例如,假设我有下面的 y 数据(x 数据对于本示例并不重要,因此您可以设置 x=np.arange(len(y)) )

import numpy as np
import matplotlib.pylab as plt
y = np.array([ 5840.5, 3579.5, 2578. , 965.5, 748. , 485. ])
fig,ax = plt.subplots(figsize=(12,8))
plt.plot(np.arange(len(y)), y)
plt.show()

enter image description here

现在我想做的是增加 y 刻度的字体大小,但我想让标签保持与 matplotlib 创建它们相同的位置。所以我尝试了

ax.set_yticklabels(fontsize=20)
>>> TypeError: set_yticklabels() missing 1 required positional argument: 'labels'

这当然行不通。但是如果我传递一些标签作为参数

y = np.array([ 5840.5,  3579.5,  2578. ,   965.5,   748. ,   485. ])
fig,ax = plt.subplots(figsize=(12,8))
plt.plot(np.arange(len(y)), y)
ax.set_yticklabels(np.arange(0,y.max(),1000), fontsize=20)
plt.show()

enter image description here

字体大小确实增加了,但标签和比例与原始绘图不同。我需要能够更改任何数组的字体大小 y ,不仅仅是上面给出的这个示例,因此不可能传递特定标签。

理想情况下,我想要的看起来像这样:与第一个图中相同的标签和比例,但 y 刻度字体大小更大。我想在每次绘图时不传递标签来生成此图,因为我的 x 和 y 变量是动态的。有没有办法做到这一点? enter image description here

最佳答案

您可以设置 ytick rc 参数,它将更改每个后续绘图的 ytick 字体大小:

import matplotlib
matplotlib.rc('ytick', labelsize=20)

或者,如果您只想对一个图形执行此操作,您可以循环遍历每个标签并更改字体大小:

for label in ax.get_yticklabels():
label.set_fontsize(20)

关于python - 如何使用 matplotlib 增加刻度字体大小而不传递标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52093610/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com