Matplotlib: квартальные второстепенные метки - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть квартальные данные, которые я пытаюсь построить с помощью Matplotlib.Я хочу, чтобы основные ярлыки xtick отображали годы, а второстепенные ярлыки xtick - кварталы.

Однако все, что я могу найти, это данные ежемесячно .То есть следующий код (с использованием функции mdates в matplotlib) будет делать ежемесячные мелкие помехи, но я не вижу ежеквартального варианта ...

Любая помощь?

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates

A = pd.DataFrame(np.random.rand(6*4))
A.index = pd.date_range(start = "2017", periods = len(A), freq = "QS")

fig, ax = plt.subplots(figsize = (10,6))

ax.plot(A)

years = mdates.YearLocator()   # every year
months = mdates.MonthLocator()  # every month
yearsFmt = mdates.DateFormatter('%Y')

ax.xaxis.set_major_locator(years)
ax.xaxis.set_major_formatter(yearsFmt)
ax.xaxis.set_minor_locator(months)

1 Ответ

0 голосов
/ 16 февраля 2019

MonthLocator принимает несколько аргументов.Вы можете использовать bymonth (первый) и указать месяцы, для которых вы хотите иметь галочки.Четверть занимает 3 месяца, поэтому 1,4,7,10 должно быть тем, что вам нужно.

months = mdates.MonthLocator((1,4,7,10))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...