数据可视化后起之秀——pyecharts

**题目一:**绘制折线图,展示商家A与商家B各类饮品的销售额

题目描述:

编写程序。根据第9.3.1,绘制折线图,展示商家A与商家B各类饮品的销售额。

运行代码:

python 复制代码
#绘制折线图,展示商家A与商家B各类饮品的销售额
import pyecharts.options as opts
from pyecharts.charts import Line
line_demo = (
    Line()
    #添加x轴,y轴数据,系列名称
    .add_xaxis(['可乐',"雪碧", '啤酒', '橙汁', '奶茶'])
    .add_yaxis('商家A', [102, 132, 105, 52, 90], symbol='diamond', symbol_size=15)
    .add_yaxis('商家B', [86, 108, 128, 66, 136], symbol='triangle', symbol_size=15)
    #设置标题, y轴标签
    .set_global_opts(title_opts=opts.TitleOpts(title='折线图示例'),
                     yaxis_opts=opts.AxisOpts(name="销售额(万元)", name_location='center', name_gap=30))
)
#line_demo.render_notebook()
line_demo.render('line_chart.html')

运行结果:

**题目二:**绘制饼图和圆环图,展示某商家各品牌手机销售额的占比情况

题目描述:

编写程序。根据第9.3.2,绘制饼图和圆环图,展示某商家各品牌手机销售额的占比情况。

运行代码:

python 复制代码
#绘制饼图和圆环图,展示某商家各品牌手机销售额的占比情况。

#圆环图
import pyecharts.options as opts
from pyecharts.charts import Pie
pie_demo = (
    Pie()
    #添加数据
    .add('', [('小米', 150), ('三星', 20), ('华为', 120), ('苹果', 120), ('魅族', 117),
              ('vivo',145), ('OPPO', 128)], center=["50%", "50%"], radius=[100,160])
    #设置标题
    .set_global_opts(title_opts = opts.TitleOpts(title='圆环图示例'))
)
pie_demo.render('pie_demo_chart.html')

#圆饼图
import pyecharts.options as opts
from pyecharts.charts import Pie
pie_demo = (
    Pie()
    #添加数据
    .add('', [('小米', 150), ('三星', 20), ('华为', 120), ('苹果', 120), ('魅族', 117),
              ('vivo',145), ('OPPO', 128)])
    #设置标题
    .set_global_opts(title_opts = opts.TitleOpts(title='饼图示例'))
)
pie_demo.render('pie_chart.html')

运行结果:

题目 **三:**绘制带有网格和带有涟漪特效的散点图,展示某平台一周统计的用户活跃量

题目描述:

编写程序。根据第9.3.3,绘制带有网格和带有涟漪特效的散点图,展示某平台一周统计的用户活跃量。

运行代码:

python 复制代码
#绘制带有网格和带有涟漪特效的散点图,展示某平台一周统计的用户活跃量。

#带有网格
import pyecharts.options as opts
from pyecharts.charts import Scatter

scatter_demo = (
    Scatter()
        .add_xaxis(['周一', '周二', '周三', '周四', '周五', '周六', '周日'])
        .add_yaxis("", [30, 108, 73, 116, 73, 143, 106])
        # 设置标题、x轴网格、y轴网格和标签
        .set_global_opts(
        title_opts=opts.TitleOpts(title='散点图示例'),
        xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
        yaxis_opts=opts.AxisOpts(
            splitline_opts=opts.SplitLineOpts(is_show=True),
            name="用户活跃量(人)",
            name_location="center",
            name_gap=30
        )
    )
)
# 渲染散点图到HTML文件
scatter_demo.render('scatter_chart.html')

#带有涟漪特效
import pyecharts.options as opts
from pyecharts.charts import EffectScatter

effect_scatter_demo = (
    EffectScatter()
        .add_xaxis(['周一', '周二', '周三', '周四', '周五', '周六', '周日'])
        .add_yaxis("", [30, 108, 73, 116, 73, 143, 106], symbol='pin')
        # 设置标题、x轴网格、y轴网格和标签
        .set_global_opts(
        title_opts=opts.TitleOpts(title='涟漪特效散点图示例'),
        xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
        yaxis_opts=opts.AxisOpts(
            splitline_opts=opts.SplitLineOpts(is_show=True),
            name="用户活跃量(人)",
            name_location="center",
            name_gap=30
        )
    )
)
# 渲染散点图到HTML文件
effect_scatter_demo.render('effect_scatter_chart.html')

运行结果:

题目 **四:**绘制3D柱形图,展示某公司部门一周内各组的销售额

题目描述:

编写程序。根据第9.3.4,绘制3D柱形图,展示某公司部门一周内各组的销售额。

运行代码:

python 复制代码
#绘制3D柱形图,展示某公司部门一周内各组的销售额
import random
from pyecharts import options as opts
from pyecharts.charts import Bar3D

# 模拟数据
data = [(i, j, random.randint(0, 20)) for i in range(7) for j in range(5)]

bar_3d = (
    Bar3D()
        .add("", data,  # 直接使用data列表,无需再转换
             xaxis3d_opts=opts.Axis3DOpts(['A组', 'B组', 'C组', 'D组', 'E组'], type_="category", name="组别"),
             yaxis3d_opts=opts.Axis3DOpts(['周一', '周二', '周三', '周四', '周五', '周六', '周日'], type_="category", name="日期"),
             zaxis3d_opts=opts.Axis3DOpts(type_="value", name="销售额(万元)")
             )
        .set_global_opts(
        visualmap_opts=opts.VisualMapOpts(max_=20),  # 设置最大值为20,与数据范围匹配
        title_opts=opts.TitleOpts(title="3D柱形图示例")
    )
)
bar_3d.render('bar3D_chart.html')

运行结果:

题目 **五:**绘制统计地图,展示某平台上朔州部分区县的用户数量

题目描述:

编写程序。根据第9.3.5,绘制统计地图,展示某平台上朔州部分区县的用户数量。

运行代码:

python 复制代码
#绘制统计地图,展示某平台上朔州部分区县的用户数量
from pyecharts import options as opts
from pyecharts.charts import Map
data_map =[['朔城区',100],['平鲁区',88],['山阴县',99],['应县',68],['右玉县',35],['怀仁县',28]]
#创建 Map 对象
map_demo = (
    Map()
    .add("商家 A ", data_map ,"朔州")
    .set_global_opts(title_opts = opts.TitleOpts(title = "朔州地图示例"), visualmap_opts = opts.VisualMapOpts())
)
map_demo.render('map_demo_chart.html')

运行结果:

题目 **六:**绘制漏斗图,展示某网购平台上各环节的客户转化率

题目描述:

编写程序。根据第9.3.6,绘制漏斗图,展示某网购平台上各环节的客户转化率。

运行代码:

python 复制代码
#绘制漏斗图,展示某网购平台上各环节的客户转化率
from pyecharts import options as opts
from pyecharts.charts import Funnel
data_fun =[["访问商品",100], ["加购物车",50], ["生成订单",30], ["支付订单",20],["完成交易",15]]
#创建 Funnel 对象
funnel_demo=(
    Funnel()
    .add("", data_fun , sort_='descending', tooltip_opts = opts.TooltipOpts (trigger ="item", formatter ="{a} <br/>{b} : {c}%"))
    .set_global_opts(title_opts = opts.TitleOpts(title="漏斗示意图"))
)
funnel_demo.render('funnel_demo_chart.html')

运行结果:

相关推荐
凭君语未可3 分钟前
豆包MarsCode:小C点菜问题
算法
深蓝海拓16 分钟前
Pyside6(PyQT5)中的QTableView与QSqlQueryModel、QSqlTableModel的联合使用
数据库·python·qt·pyqt
C语言魔术师23 分钟前
【小游戏篇】三子棋游戏
前端·算法·游戏
自由自在的小Bird23 分钟前
简单排序算法
数据结构·算法·排序算法
无须logic ᭄23 分钟前
CrypTen项目实践
python·机器学习·密码学·同态加密
Channing Lewis36 分钟前
flask常见问答题
后端·python·flask
Channing Lewis38 分钟前
如何保护 Flask API 的安全性?
后端·python·flask
水兵没月2 小时前
钉钉群机器人设置——python版本
python·机器人·钉钉
你熬夜了吗?2 小时前
日历热力图,月度数据可视化图表(日活跃图、格子图)vue组件
前端·vue.js·信息可视化
Evand J2 小时前
matlab绘图——彩色螺旋图
开发语言·matlab·信息可视化