数据可视化后起之秀——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')

运行结果:

相关推荐
hsling松子17 分钟前
使用PaddleHub智能生成,献上浓情国庆福
人工智能·算法·机器学习·语言模型·paddlepaddle
belldeep20 分钟前
python:reportlab 将多个图片合并成一个PDF文件
python·pdf·reportlab
dengqingrui12342 分钟前
【树形DP】AT_dp_p Independent Set 题解
c++·学习·算法·深度优先·图论·dp
C++忠实粉丝43 分钟前
前缀和(8)_矩阵区域和
数据结构·c++·线性代数·算法·矩阵
ZZZ_O^O1 小时前
二分查找算法——寻找旋转排序数组中的最小值&点名
数据结构·c++·学习·算法·二叉树
CV-King2 小时前
opencv实战项目(三十):使用傅里叶变换进行图像边缘检测
人工智能·opencv·算法·计算机视觉
代码雕刻家2 小时前
数据结构-3.9.栈在递归中的应用
c语言·数据结构·算法
雨中rain2 小时前
算法 | 位运算(哈希思想)
算法
FreakStudio3 小时前
全网最适合入门的面向对象编程教程:56 Python字符串与序列化-正则表达式和re模块应用
python·单片机·嵌入式·面向对象·电子diy
丶21363 小时前
【CUDA】【PyTorch】安装 PyTorch 与 CUDA 11.7 的详细步骤
人工智能·pytorch·python