Как отформатировать ось диаграммы с накоплением matplotlib, чтобы показать только заданный диапазон? - PullRequest
1 голос
/ 22 октября 2019

Я пытаюсь создать простую диаграмму областей с накоплением. Вот мой код:

x = [1990,1995,2000,2005,2010]
y = [df['a'],df['b'],df['c']]
...
plt.stackplot(x,y, labels=['a,b,c'], ...)
...
plt.show()

Тем не менее, ось X на созданном графике увеличивается с интервалом 2,5, поэтому выглядит это так: 1990.0, 1992.5, 1995.0 ....

Как мне изменить его так, чтобы график, созданный на оси X, увеличивался с интервалами в 5?

1 Ответ

1 голос
/ 22 октября 2019

Вы можете создать подзаговор и установить мажорные и минорные локаторы оси x следующим образом:

import matplotlib.pyplot as plt
from matplotlib.ticker import (AutoMinorLocator, MultipleLocator)
fig, ax = plt.subplots()
ax.set_xlim(1990, 2015)

ax.xaxis.set_major_locator(MultipleLocator(5))
ax.xaxis.set_minor_locator(AutoMinorLocator(1))
plt.stackplot(x,y, labels=['a,b,c'], ...)
plt.show()
...