利用pyecharts绘制有关运动员的最大携氧能力、体重和运动后心率三者关系的3D散点图,数据:运动员的最大携氧能力、体重和运动后心率数据.xlsx,要求:努力美化所画的3D散点图,可以参照第一个任务的方法。
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Scatter3D
# 读取CSV文件
file_path = '运动员的最大携氧能力、体重和运动后心率数据.csv'
df = pd.read_csv(file_path)
# 将DataFrame转换为列表,准备绘图
data = df.values.tolist()
# 创建3D散点图
scatter3d = (
Scatter3D()
.add(
series_name="运动员数据",
data=data,
xaxis3d_opts=opts.Axis3DOpts(name='最大携氧能力 (ml/min)', type_='value'),
yaxis3d_opts=opts.Axis3DOpts(name='体重 (kg)', type_='value'),
zaxis3d_opts=opts.Axis3DOpts(name='运动后心率 (次/分钟)', type_='value'),
)
.set_global_opts(
title_opts=opts.TitleOpts(title="运动员最大携氧能力、体重与运动后心率的关系"),
visualmap_opts=opts.VisualMapOpts(
max_=180,
range_color=['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf', '#fee090', '#fdae61',
'#f46d43', '#d73027'],
),
)
)
# 渲染图表
scatter3d.render('第五题.html')