我有一个CSV文件,其中包含两列。第一列包含1969年1月1日的日期,第二列包含当月的平均房价。我的数据范围从1969年4月1日到2019年同一天,数据帧中共有613个条目。我想创建一个代表每年平均房价的折线图。到目前为止,我有这个。
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv('ScottishAveragePrices.csv')
df.groupby(['Date']).mean().sort_values('AveragePrice')
输出为:
AveragePrice
Date
01/04/1968 2844.980688
01/05/1968 2844.980688
01/06/1968 2844.980688
01/10/1968 2921.049691
01/11/1968 2921.049691
...
01/04/2019 150825.247700
01/09/2018 151465.715100
01/10/2018 151499.207500
01/07/2018 151874.694900
01/08/2018 152279.438800
[613 rows x 1 columns]
我只是不知道如何将这些数据转换成折线图。很抱歉,如果这篇文章的格式有误,我是论坛的新手。
感谢
命名df,然后使用matplotlib绘制:
df_2 = df.groupby(['Date']).mean().sort_values('AveragePrice')
df_2.plot(y="AveragePrice")
确保您的代码中也有matplotlib魔术函数:
%matplotlib inline
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv('ScottishAveragePrices.csv')
df = df.groupby(['Date']).mean().sort_values('AveragePrice')
plt.plot(df['Date'], df['AveragePrice'])
plt.show()