pandas.DataFrame.plot() 更新后不显示 x 轴

Bar*_*ysz 0 python matplotlib pandas

import pandas as pd
import numpy as np

import matplotlib.pyplot as plt
%matplotlib inline
plt.style.use('seaborn-white')
Run Code Online (Sandbox Code Playgroud)

燃尽数据框:

                Forecast    Actual
Baseline        11422       11422
February 2018   11422       11325
March 2018      11420       10717
April 2018      11415       10272
May 2018        11393       8771
June 2018       11382       7750
July 2018       10069       6940
August 2018     6330        6038
September 2018  6153        4998
Run Code Online (Sandbox Code Playgroud)

用于通过调用生成带有 x 轴的图表:

burndown_data.plot(figsize=(15,3),grid=True,title=title,marker='o')
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但升级到最新的 pandas 之后,x 轴丢失了。如何解决这个问题?

在此输入图像描述

当我尝试这种方法时:

Matplotlib:: 未显示所有 x 轴数据框变量

我有一个错误: 在此输入图像描述

rah*_*f23 5

您将数据帧索引 ( burndown_data.index) 作为第一个参数传递给plt.xticks(). 根据文档,第一个参数应该是:

应放置刻度的位置列表。您可以传递一个空列表来禁用 xticks。

所以我会按照这些思路做一些事情:

import pandas as pd
import matplotlib.pyplot as plt

index = ['Baseline','February 2018','March 2018','April 2018','May 2018','June 2018','July 2018','August 2018','September 2018']

burndown_data = pd.DataFrame([[11422,       11422],
    [11422,       11325],
    [11420,       10717],
    [11415,       10272],
    [11393,       8771],
    [11382,       7750],
    [10069,       6940],
    [6330,        6038],
    [6153,        4998]],
    columns=['Forecast','Actual'], index=index)

plt.style.use('seaborn-white')
burndown_data.plot(figsize=(15,3),grid=True,title='Your Plot',marker='o')
plt.xticks(list(range(len(index))), burndown_data.index, fontsize=12)
plt.show()
Run Code Online (Sandbox Code Playgroud)

产生以下结果:

在此输入图像描述