其他分享
首页 > 其他分享> > pyechart数据可视化13 数据大屏 仪表盘 添加不同背景图丨2021年中国彩票销售额

pyechart数据可视化13 数据大屏 仪表盘 添加不同背景图丨2021年中国彩票销售额

作者:互联网

本专题将结合pyechart案例及行业数据, 提供各维度图表模板, 详细介绍参数功能, 就算不懂编程也可以轻松使用, 欢迎大家关注, 别走丢!

仪表盘布局如果添加不同背景图?

提前准备

pip install pyecharts -U

模板13: 效果图

在这里插入图片描述

第1步: 导入工具包

import pandas as pd
import numpy as np
from pyecharts import options as opts
from pyecharts.charts import Map,Line,Bar
from pyecharts.globals import ThemeType
from pyecharts.commons.utils import JsCode

重点是JsCode, 设置背景图片

第2步: 读取数据

data = pd.read_excel('./data/彩票.xlsx',sheet_name=None)
data

在这里插入图片描述

数据为字典格式

第3步: 作图

第1个图: 柱形图

data1 = data['2020年3月-2021年2月中国彩票销售额']
data1

在这里插入图片描述

bar = (
    Bar(init_opts=opts.InitOpts(width="1200px", height="500px",theme='light'))  # 设置图表大小
    .add_xaxis(data1['时间'].tolist())   # 设置柱形图的x轴, 必须写.tolist()
    .add_yaxis(
        series_name="销售额(亿元)",  # y轴系列名称
        y_axis=data1['销售额(亿元)'].tolist(),   # 系列书籍
        label_opts=opts.LabelOpts(is_show=True,position='top',formatter="{c}"),# 数字标签显示样式
        itemstyle_opts=opts.ItemStyleOpts(color="#51c4d3",opacity=1),     # 柱形图颜色  ,透明度
        )
        .set_global_opts(
            title_opts=opts.TitleOpts(title="2020年3月-2021年2月中国彩票销售额",  # 主标题
                                      subtitle="",   #副标题
                                      pos_top='5%',
                                      title_textstyle_opts=opts.TextStyleOpts(font_size=15,color='white'),
                                      pos_left='center'),  # 位置
            tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"),  # 鼠标交叉十字显示
            legend_opts=opts.LegendOpts(is_show=True,pos_top="bottom"),  # 图例
            yaxis_opts=opts.AxisOpts(                     # 显示y轴网格线
                is_show=False,
                type_="value",
                axistick_opts=opts.AxisTickOpts(is_show=False),   # 坐标轴商的刻度是否显示
                axisline_opts=opts.AxisLineOpts(is_show=False), # y轴线
                splitline_opts=opts.SplitLineOpts(is_show=True),   # y轴网格线是否显示
        ))
    )


bar.render('13_2020年3月-2021年2月中国彩票销售额.html')

第2个图: 地图

data2 = data['2021年1-2月中国各地区彩票累计销售额']
data2

在这里插入图片描述

map2 = (
    Map(init_opts=opts.InitOpts(width="1400px", height="700px",theme='light'))  # 设置图表大小 主题风格 ThemeType.LIGHT  Dark ,theme='vintage'
    .add("省份", # 系列名称
         [list(z) for z in zip(data2['省市'], data2['累计销售额(亿元)'])], # 数据
         "china",  # 地图
         is_map_symbol_show=False, # 不显示小红点
        )
     
    .set_global_opts(
        title_opts=opts.TitleOpts(title="2021年1-2月中国各地区彩票累计销售额",  # 图表标题
                                  title_textstyle_opts=opts.TextStyleOpts(font_size=15, color='white'), #字体大小  T
                                  pos_left='center', # 标题位置
                                  pos_top='5%'), 
        legend_opts=opts.LegendOpts(is_show=False), # 图例是否显示
        visualmap_opts=opts.VisualMapOpts(max_=60, # 最大值
                                          is_piecewise=True, # 是否为分段型
                                          split_number=6,  # 分多少段
                                          range_text=['亿元',''], # 上下显示的文字
                                          range_color=["#d9ecf2", "#a2d5f2", "#e8ffc1", "#a5ecd7", "#51adcf", "#0278ae"],#颜色
                                          pos_left='20%',
                                          pos_top='70%',
                                         ),
    ))
map2.render("./13_2021年1-2月中国各地区彩票累计销售额.html")

第3个图: 目的是添加仪表盘名称及背景图

# 标题
line3 = (
    Line(init_opts=opts.InitOpts(width="1250px", 
                                 height="700px",
                                 bg_color={"type": "pattern", "image": JsCode("img"), "repeat": "no-repeat"}))
    .add_xaxis([None])
    .add_yaxis("", [None]) 
    .set_global_opts(
        title_opts=opts.TitleOpts(title="2021年中国彩票销售额",
                                  subtitle='更新日期: 2021/4/11',
                                  pos_left='center',
                                  title_textstyle_opts=opts.TextStyleOpts(font_size=25, color='#51c2d5'),
                                  pos_top='5%'),
        yaxis_opts=opts.AxisOpts(is_show=False),
        xaxis_opts=opts.AxisOpts(is_show=False))
)
line3.add_js_funcs(
    """
    var img = new Image(); img.src = 'http://img.netbian.com/file/2019/1121/5e4911c7c44d251ee030cfafe3660394.jpg';
    
    """
)
line3.render('./13_辅助.html')

通过bg_color和add_js_funcs 两个地方设置,修改图表背景图

组合

page = Page(layout=Page.DraggablePageLayout)
page.add(line3,bar,map2)
page.render("2021年1-2月中国各地区彩票累计销售额.html")

调整几个图表位置后,保存为一个json文件

重新渲染

# 重新布局
Page.save_resize_html("2021年1-2月中国各地区彩票累计销售额.html", 
                      cfg_file="./布局文件/chart_config (3).json", 
                      dest="2021年1-2月中国各地区彩票累计销售额_re2.html")

在这里插入图片描述

更多数据分析及可视化技巧, 请点击!
在这里插入图片描述

标签:pyechart,show,title,13,pos,销售额,2021,opts
来源: https://blog.csdn.net/muyashui/article/details/115603640