使用Pyecharts绘制西安2023年每月天气变化动态图表
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Bar,Timeline
df = zrm_weather_table
df['日期'] = pd.to_datetime(df['日期'])
df_agg = df.groupby(['日期.dt.month','天气']).size().reset_index(name='count')
timeline = Timeline()
timeline.add_schema(play_interval=1000)
for month in df_agg['日期.dt.month'].unique():
data = df_agg[df_agg['日期.dt.month']==month].sort_values(by='count').to_numpy().tolist()
bar = (
Bar()
.add_xaxis([x[1] for x in data])
.add_yaxis('',[x[2] for x in data])
.reversal_axis()
.set_series_opts(label_opts=opts.LabelOpts(position='right'))
.set_global_opts(title_opts=opts.TitleOpts(title='西安2023年每月天气变化 '))
)
timeline.add(bar, f'{month}月')
timeline.render_notebook()
代码优化说明:
- 简化数据处理: 使用
df.groupby(['日期.dt.month','天气']).size().reset_index(name='count')一行代码完成数据分组、计数和重置索引,简化了代码。 - 直接获取数据: 使用
to_numpy().tolist()直接获取排序后的数据列表,避免了手动提取数据,提高了代码效率。 - 链式调用: 使用链式调用方式构建
Bar对象,使代码更加简洁易读。 - 优化标题: 标题更明确地说明了图表内容,并增加了关键词“西安天气”。
- 添加描述: 添加了代码描述,解释了代码的功能和用途。
- 添加关键词: 添加了关键词,方便搜索引擎识别代码内容。
代码的功能:
该代码使用 Pandas 处理天气数据,并使用 Pyecharts 绘制动态图表,展示西安2023年每月不同天气类型的出现次数变化。
使用方法:
- 将
zrm_weather_table替换为您的天气数据 DataFrame。 - 运行代码即可生成动态图表。
注意:
- 确保您已经安装了
Pandas和Pyecharts库。 - 图表可能会根据您的数据进行调整。
其他优化建议:
- 可以添加更多的图表元素,例如颜色、图例等,使图表更加美观。
- 可以使用
Jupyter Notebook或其他工具,将图表嵌入到网页或文档中。
希望这些修改能使代码更简洁、易读、更适合搜索引擎收录。
原文地址: https://www.cveoy.top/t/topic/otYX 著作权归作者所有。请勿转载和采集!