Error in user YAML: (<unknown>): could not find expected ':' while scanning a simple key at line 3 column 1
---
- oeasy Python 0827
- 这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。
本教程同步发布在:
个人网站: `https://oeasy.org`
蓝桥云课: `https://www.lanqiao.cn/courses/3584`
GitHub: `https://github.com/overmind1980/oeasy-python-tutorial`
Gitee: `https://gitee.com/overmind1980/oeasypython`
---这是一段示例实验介绍。
pip install openpyxl
pip install pyecharts
wget https://labfile.shiyanlou.com/courses/3584/%E5%8C%97%E4%BA%AC2024%E5%B9%B4%E5%A4%A9%E6%B0%94%E6%95%B0%E6%8D%AE.xlsx
- 完成准备工作
import pandas as pd
from pyecharts.charts import HeatMap
from pyecharts import options as opts
# 读取数据
file_path = '北京2024年天气数据.xlsx'
df = pd.read_excel(file_path)
# 设置日期格式和提取月份和日期
df['日期'] = pd.to_datetime(df['日期'], format='%Y年%m月%d日', errors='coerce')
df['月份'] = df['日期'].dt.month
df['日期'] = df['日期'].dt.day
# 创建透视表
heatmap_data = df.pivot_table(values='平均气温', index='日期', columns='月份', aggfunc='mean')
# 数据处理,转换为pyecharts所需的格式
heatmap_values = []
for day in heatmap_data.index:
for month in heatmap_data.columns:
heatmap_values.append([month - 1, day - 1, heatmap_data.loc[day, month]])
# 使用 pyecharts 创建热力图
heatmap = (
HeatMap()
.add_xaxis([str(i) + '月' for i in range(1, 13)]) # 月份标签
.add_yaxis('日期', [i for i in range(1, 32)], value=heatmap_values) # 日期标签
.set_global_opts(
title_opts=opts.TitleOpts(
title="2024年北京每日气温热力图",
subtitle="气温变化趋势",
title_textstyle_opts=opts.TextStyleOpts(font_size=16), # 标题字体大小
subtitle_textstyle_opts=opts.TextStyleOpts(font_size=12), # 副标题字体大小
),
visualmap_opts=opts.VisualMapOpts(
min_ = heatmap_data.min().min(),
max_ = heatmap_data.max().max(),
dimension=2, # 对应热力图中的值(气温)位置
range_color=['#0000FF', '#00FFFF', '#FFFF00', '#FF6347'], # 渐变色从蓝色到红色
is_piecewise=False, # 不使用分段
textstyle_opts=opts.TextStyleOpts(font_size=10), # 颜色条文本字体大小
),
xaxis_opts=opts.AxisOpts(
name="月份",
name_textstyle_opts=opts.TextStyleOpts(font_size=14), # X轴名称字体大小
axislabel_opts=opts.LabelOpts(font_size=12, rotate=45), # 旋转标签以避免重叠
),
yaxis_opts=opts.AxisOpts(
name="日期",
name_textstyle_opts=opts.TextStyleOpts(font_size=14), # Y轴名称字体大小
axislabel_opts=opts.LabelOpts(font_size=12),
),
# 设置图表的整体大小
tooltip_opts=opts.TooltipOpts(is_show=True, trigger="item", formatter="{b}: {c}°C"),
toolbox_opts=opts.ToolboxOpts(is_show=True), # 可以添加图表工具箱
)
)
# 渲染图表为HTML文件
heatmap.render('heat_map.html')
- 效果
sudo cp heat_map.html /usr/share/nginx/html
sudo service nginx start
firefox http://localhost/heat_map.html
- 浏览效果
- 本文来自 oeasy Python 系统教程。
- 想完整、扎实学 Python,
- 搜索 oeasy 即可。


