项目用到库
import numpy as np
import pandas as pd
import datetime
from pyecharts.charts import Line
from pyecharts.charts import Boxplot
from pyecharts.charts import Pie,Grid
from pyecharts import options as opts
from pyecharts.charts import Calendar
1.2018 年北京AQI全年走势图
代码如下:
# 读取数据
df = pd.read_csv('beijing_AQI_2018.csv')
attr = df['Date'].tolist() # 将 Date 转换为列表
v1 = df['AQI'].tolist() # 将 AQI 转换为列表
# 创建折线图
line = (
Line()
.add_xaxis(attr)
.add_yaxis("AQI值:", v1, is_smooth=True,
areastyle_opts=opts.AreaStyleOpts(opacity=0.3, color="#000"),
markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(type_="average")]),
markpoint_opts=opts.MarkPointOpts(data=[
opts.MarkPointItem(type_="max", name="最大值"),
opts.MarkPointItem(type_="min", name="最小值")
]))
.set_global_opts(title_opts=opts.TitleOpts(title="2018年北京AQI全年走势图",
pos_top='5%',
pos_left='center'),
xaxis_opts=opts.AxisOpts(type_="category"),
yaxis_opts=opts.AxisOpts(type_="value"))
)
# 将图表渲染到 HTML 文件
line.render("./2018年北京AQI全年走势图.html")
结果如下:

2.2018 年北京PM2.5全年走势图
代码如下:
# 读取数据
df = pd.read_csv('beijing_AQI_2018.csv')
attr = df['Date'].tolist() # 将 Date 转换为列表
v1 = df['PM'].tolist() # 将 PM 转换为列表
# 创建折线图
line = (
Line()
.add_xaxis(attr)
.add_yaxis("PM2.5值:", v1, is_smooth=True,
areastyle_opts=opts.AreaStyleOpts(opacity=0.3, color="#000"),
markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(type_="average")]),
markpoint_opts=opts.MarkPointOpts(data=[
opts.MarkPointItem(type_="max", name="最大值"),
opts.MarkPointItem(type_="min", name="最小值")
]))
.set_global_opts(title_opts=opts.TitleOpts(title="2018年北京PM2.5全年走势图",
pos_top='5%',
pos_left='center'),
xaxis_opts=opts.AxisOpts(type_="category"),
yaxis_opts=opts.AxisOpts(type_="value"))
)
# 将图表渲染到 HTML 文件
line.render("./2018年北京PM2.5全年走势图.html")
结果如下:

3.2018 年北京月均AQI走势图
代码如下:
# 读取数据
df = pd.read_csv('beijing_AQI_2018.csv')
# 提取 Date 和 AQI 的值
dom = df[['Date', 'AQI']]
# 提取月份
df['month'] = df['Date'].apply(lambda x: x.split('/')[1])
# 根据月份分组并计算每月的 AQI 平均值
month_com = df.groupby('month')['AQI'].mean().reset_index()
# 排序月份
month_com = month_com.sort_values(by='month')
# 构造月份标签
attr = ["{}月".format(i) for i in range(1, 13)]
# 获取每月的 AQI 平均值
v1 = month_com['AQI'].tolist()
v1 = ["{}".format(int(i)) for


4894

被折叠的 条评论
为什么被折叠?



