matplotlib不显示所有轴值

时间:2019-11-28 14:40:05

标签: python-3.x pandas matplotlib

我有一个正在绘制一些数据的小程序。该程序运行时没有任何错误并显示了该图,但是它删除了所有其他x轴值。我应该怎么做才能使所有十二个轴标签正确显示?

程序:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from pandas.plotting import register_matplotlib_converters

print('NumPy: {}'.format(np.__version__))
print('Pandas: {}'.format(pd.__version__))
print('-----')

display_settings = {
    'max_columns': 14,
    'expand_frame_repr': False,  # Wrap to multiple pages
    'max_rows': 50,
    'show_dimensions': False
}
pd.options.display.float_format = '{:,.2f}'.format

for op, value in display_settings.items():
    pd.set_option("display.{}".format(op), value)

file = "e:\\python\\dataquest\\unrate.csv"
unrate = pd.read_csv(file)
print(unrate.shape, '\n')

unrate['DATE'] = pd.to_datetime(unrate['DATE'])
print(unrate.info(), '\n')
print(unrate.head(12), '\n')

register_matplotlib_converters()
plt.xticks(rotation=90)
plt.plot(unrate['DATE'][0:12], unrate['VALUE'][0:12])
plt.show()

我得到的输出是:(我正在使用PyCharm)

enter image description here

我相信我应该得到:(来自IDE中内置的Dataquests)

enter image description here

1 个答案:

答案 0 :(得分:0)

@Quang Hong,您的目标正确。我不得不按如下方式调整间隔值和日期格式:

plt.gca()。xaxis.set_major_formatter(mdates.DateFormatter('%b%Y')) plt.gca()。xaxis.set_major_locator(mdates.DayLocator(interval = 30))

现在我得到以下输出:

enter image description here