我有一个DataFrame dfp
,其中的列包括saledate
(在DateTime中),days_to_sell
(作为int
)和price
(作为{ {1}})。使用以下代码,
int
我生成以下图:
这些点由import pandas as pd
dfp_week = dfp.groupby(pd.TimeGrouper(key='saledate', freq='W')).mean()
fig, ax = plt.subplots()
ax.scatter(dfp['saledate'].values, dfp['price']/1000.0, c=dfp['days_to_sell'].values)
ax.plot_date(dfp_week.index, dfp_week['price']/1000.0, 'r-')
xmin,xmax=plt.xlim()
plt.xlim([datetime.datetime(2015,1,1), xmax])
ax.set_xlabel('Date of sale')
ax.set_ylabel('Most recent asking price (1,000 euros)')
plt.title('Property sales in Amsterdam')
fig.autofmt_xdate()
着色,但是有太多的点无法看到数据中的趋势。另一方面,如果我将days_to_sell
本身与其每周平均值一起绘制,
days_to_sell
我得到了
显示最近的一个明显的升温'房地产市场。我想按照fig2, ax2 = plt.subplots()
plt.plot(dfp['saledate'],dfp['days_to_sell'].values,'.')
plt.plot_date(dfp_week.index, dfp_week['days_to_sell'].values,'r-')
plt.xlabel('Date of sale')
plt.ylabel('Days on the market')
plt.title('Time to sell')
plt.ylim([0,300])
fig2.autofmt_xdate()
的每周平均值,而不是单个值,为图中的所有点着色。我怎么能这样做?