gpt4 book ai didi

python - matplotlib图形水平轴标签自动对齐或重新缩放

转载 作者:行者123 更新时间:2023-12-01 05:41:46 24 4
gpt4 key购买 nike

我试图使用 matplotbib 绘制时间序列数据图,问题是观察值太多,因此标签重叠并且不太适合大小的图形。

我正在考虑三种解决方案,一种是缩小观察值的标签大小,一种是将文本更改为垂直顺序或倾斜方式,最后是仅指定第一个和最后几个观察值,它们之间有点。该代码是为了证明我的观点。

我想知道有人可以帮忙吗?谢谢

from datetime import date
import numpy as np
from pandas import *
import matplotlib.pyplot as plt

N = 100
data = np.array(np.random.randn(N))
time_index = date_range(date.today(), periods = len(data))
plt.plot(time_index, data)

最佳答案

对于你的简单情节,你可以这样做

plt.xticks(rotation=90).

或者,您可以使用

指定要显示的刻度
plt.xticks(<certain range of values>)
plt.xticklabels(<labels for those values>)

编辑:

就我个人而言,我会改用面向对象的 pyplot 方式。

f = plt.figure()
ax = f.add_subplot(111)

ax.plot(<stuff>)
ax.tick_params(axis='x', labelsize='8')

plt.setp( ax.xaxis.get_majorticklabels(), rotation=90 )
# OR
xlabels = ax.get_xticklabels()
for label in xlabels:
label.set_rotation(90)

plt.show()

关于python - matplotlib图形水平轴标签自动对齐或重新缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17370430/

24 4 0