У меня есть геоданные с датой в виде строки и датой в качестве datetime64 [нс].Я использую matplotlib 3.0.2.Я попытался очистить данные, используя plt.cla()
, plt.clear()
и plt.clf(
), как упоминалось в других публикациях и вопросах, но, несмотря ни на что, данные отображают то, что представляется форматированием по главной и второстепенной осям, без каких-либо подсказок - при условиичто в plot_date
первое число месяца является «большой» осью. Это мой график (отредактировано для ясности) .Кажется, что это вызвано новыми обновлениями в 3.0.2 (из 2.1.0), трудно понять, что именно вызывает это
Я видел этот вопрос / ответ , который, кажется, находится вв моей проблеме, но в этом случае было желательно использовать под-даты и т. д., хотя я запутался, поскольку это не было постоянной проблемой для меня в других подобных наборах данных.
Dataframe:
Date var_name
106 2018-04-03 0.79132056
216 2018-04-09 0.75112718
546 2018-06-12 0.73359674
646 2018-07-03 0.72600174
706 2018-07-23 0.71263647
figsize=(14,10)
fig, ax = plt.subplots(figsize=figsize)
data['Date'] = pd.to_datetime(data['Date'])
plt.xticks(rotation=30, ha='right')
plt.grid(color='k', lw=0.2)
plt.plot_date(data.Date, data.var_name)
UPDATE
Спасибо Jody и ImportanceOfBeingErnest за то, что они указали на это, было вызвано изменением kwargs в matplotlib версии 3.0.2, которое исправлено в 3.1, где interval_multiples=True
теперь является значением по умолчанию для построения первогомесяца в дополнение к другим тикам.@ImportanceOfBeingErnest был рецензентом.
PR link
наиболее актуальная проблема matplotlib # 12925 .Выпуск Matplot lib # 9978 также актуален