有一个功能
def super_show_spb(data, index, values, locality_name, columns=None, aggfunc="count",
fill_value=0, dropna=True, figsize=(12, 5), grid=True, **kwargs):
(city_center_data
.query('locality_name == locality_name')
.pivot_table(index=index, values=values, columns=columns,
aggfunc=aggfunc, fill_value=fill_value, dropna=dropna)
.plot.bar(figsize=figsize, grid=grid, **kwargs))
super_show_spb(data= city_center_data, index='year', values='last_price', locality_name = '"Санкт-Петербург" and cityCenters_nearest_km == 3')
我怎么能用循环做同样的事情
for columns in city_center_data(['year', 'month', 'weekday']):
(city_center_data.query('locality_name == "Санкт-Петербург" and cityCenters_nearest_km == 3')
.pivot_table(index=column, values= 'last_price', aggfunc='count', fill_value=0)
.plot.bar(figsize=(12, 5), grid=True))
plt.show()
以格式尝试过
for columns in city_centre_data:
columns = (['year', 'month', 'weekday'])
(city_center_data.query('locality_name == "Санкт-Петербург" and cityCenters_nearest_km == 3')
.pivot_table(index=columns, values= 'last_price', aggfunc='count', fill_value=0)
.plot.bar(figsize=(12, 5), grid=True))
plt.show()
但所有数据都出现在一张图表上。因此,您应该为列获得三个不同的图表
你在同一张图上画三张图
axes。为了让您获得三个单独的图表,您需要更改axes. 例如像这样:我也有这个选项