pyplot未在图表上显示x轴:
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('sitka_weather_2014.csv')
df['AKST'] = pd.to_datetime(df.AKST)
df['Dates'] = df['AKST'].dt.strftime('%b %d, %Y')
df.set_index("Dates", inplace= True)
# Plot Data
fig = plt.figure(dpi=256, figsize=(14, 7))
plt.title("Daily high and low temperature - 2014")
df['Max TemperatureF'].plot(linewidth=1, c='blue', label="Max Temperature °F")
df['Min TemperatureF'].plot(linewidth=1, c='red', label="Min Temperature °F")
plt.grid(True)
plt.rc('grid', linestyle=":", linewidth=1, color='gray')
plt.legend(loc='upper left')
plt.xlabel('', fontsize=10)
plt.ylabel("Temperature (°F)", fontsize=10)
plt.tick_params(axis='both', which='major', labelsize=10)
fig.autofmt_xdate(rotation=45)
plt.show()
x轴应该是包含日期的Pandas Dataframe(df)的索引。
答案 0 :(得分:0)
您已将xlabel
的值设置为null
:
plt.xlabel('', fontsize=10)
答案 1 :(得分:-1)
你的代码实际上很好。我尝试使用必要的sitka_weather_2014.csv
文件运行它并且它可以工作。
问题在于你无法看到x轴,因为图形的尺寸太大,因此x轴的描述消失了。尝试扩大你的数字,例如通过使dpi
更小:
fig = plt.figure(dpi=100, figsize=(14, 7)) #dpi=100 instead of dpi=256
或者让labelsize
更小:
plt.tick_params(axis='both', which='major', labelsize=5) #labelsize=5 instead of labelsize=10
什么最适合你。但代码很好,并且显示了x轴的描述。