如何用一张独立画布,用环图、饼图展示表4数据

本文详细介绍了如何使用Python的pyecharts库,通过面向对象的方式创建环图和饼图,包括数据准备、图表实例化、填充数据、配置系列和全局选项,以及在JupyterNotebook中展示图表的过程。
摘要由CSDN通过智能技术生成

【pyecharts 的绘图思路(面向对象)】
 1、准备数据(符合传参的需求)
 2、导入需要的图表类实例(Bar、Line、Pie...)
 3、通过导入的类,创建实例(柱形图实例等)
 4、往该实例填充数据
 5、设置“系列配置项”和“全局配置项”(类似于 matplotlib 图表样式美化和辅助元素定制)
 6、展示图表(渲染图表)
 

一、示例题目

需求一:请用一张独立画布,环图展示表4数据

需求二:请用一张独立画布,饼图展示表4数据

表4. 全国药店药品销售额占比

药品类型

占比(%)

化学药

33

中成药

45

生物制品

3

保健品

9

中药饮片

6

其他

4

二、环图的代码如下:

# 1.【导入需要用到的图表类】
import numpy as np
from pyecharts import options as opts
from pyecharts.charts import Bar,Line,Scatter,Pie
from pyecharts.faker import Faker

# 2.【利用图表类创建图表实例】
# 3.【往图表实例填充数据(数据格式必须符合传参要求)】

# 使用官网示例代码的关键是研究明白输入的数据格式

data = [['化学药', 33],['中成药', 45], ['生物制品', 3],['保健品', 9], ['中药饮片', 6], ['其他', 4]]


c = Pie()

c.add("", data ,
        radius=["15%", "35%"], # 挖掉的直径,整张饼的直径 (百分数指的是占画布中高和宽中小的那一项的比例)
        
        )

c.set_colors(["blue", "green", "yellow", "red", "pink", "orange", "purple"])
 
# 4.【设置系列配置项和全局配置项(可选)——类似于matplotlib的图表辅助元素定制和样式美化】

    # 全局配置项
c.set_global_opts(
                # 标题(title为标题,subtitle为副标题)
                title_opts=opts.TitleOpts(title="全国药店药品销售额占比"),
                # 图例
                legend_opts=opts.LegendOpts(is_show=True, pos_left='35%', pos_bottom='85%'),
                    )
    
    # 系列配置项
c.set_series_opts(
            # 标签配置项
            label_opts=opts.LabelOpts(
                                # 饼图、仪表盘、漏斗图 中 formatter: {a}(系列名称),{b}(数据项名称),{c}(数值), {d}(百分比)
                                formatter="{b}: {d}",
                                # 标签文字的颜色。如果设置为 'auto',则为视觉映射得到的颜色,如系列色。
                                color='auto',
                                # 标签文字的字体大小
                                font_size=20,
                                # 文字字体的风格,可选: 'normal','italic','oblique'
                                font_style='italic',
                                # 文字字体的粗细,可选:'normal','bold','bolder','lighter'
                                font_weight='lighter',
                                # 标签旋转。从 -90 度到 90 度。正值是逆时针
                                # rotate=-10,
                                # 刻度标签与轴线之间的距离
                                # margin=10,
                                # 文字块背景色。可以使用颜色值,例如:'#123234', 'red', 'rgba(0,23,11,0.3)'。
                                # background_color='yellow',
                                      )
                     )
    

# 5. 【渲染图表】
c.render_notebook()

三、图表展示1

 四、饼图的代码如下:

# 1.【导入需要用到的图表类】
import numpy as np
from pyecharts import options as opts
from pyecharts.charts import Bar,Line,Scatter,Pie
from pyecharts.faker import Faker

# 2.【利用图表类创建图表实例】
# 3.【往图表实例填充数据(数据格式必须符合传参要求)】

# 使用官网示例代码的关键是研究明白输入的数据格式

data = [['化学药', 33],['中成药', 45], ['生物制品', 3],['保健品', 9], ['中药饮片', 6], ['其他', 4]]


c = Pie()

c.add("", data ,
#         radius=["15%", "35%"], # 挖掉的直径,整张饼的直径 (百分数指的是占画布中高和宽中小的那一项的比例)
        
        )

c.set_colors(["blue", "green", "yellow", "red", "pink", "orange", "purple"])
 
# 4.【设置系列配置项和全局配置项(可选)——类似于matplotlib的图表辅助元素定制和样式美化】

    # 全局配置项
c.set_global_opts(
                # 标题(title为标题,subtitle为副标题)
                title_opts=opts.TitleOpts(title="全国药店药品销售额占比"),
                # 图例
                legend_opts=opts.LegendOpts(is_show=True, pos_left='65%', pos_bottom='85%'),
                    )
    
    # 系列配置项
c.set_series_opts(
            # 标签配置项
            label_opts=opts.LabelOpts(
                                # 饼图、仪表盘、漏斗图 中 formatter: {a}(系列名称),{b}(数据项名称),{c}(数值), {d}(百分比)
                                formatter="{b}: {d}",
                                # 标签文字的颜色。如果设置为 'auto',则为视觉映射得到的颜色,如系列色。
                                color='auto',
                                # 标签文字的字体大小
                                font_size=20,
                                # 文字字体的风格,可选: 'normal','italic','oblique'
                                font_style='italic',
                                # 文字字体的粗细,可选:'normal','bold','bolder','lighter'
                                font_weight='lighter',
                                # 标签旋转。从 -90 度到 90 度。正值是逆时针
                                # rotate=-10,
                                # 刻度标签与轴线之间的距离
                                # margin=10,
                                # 文字块背景色。可以使用颜色值,例如:'#123234', 'red', 'rgba(0,23,11,0.3)'。
                                # background_color='yellow',
                                      )
                     )
    

# 5. 【渲染图表】
c.render_notebook()

五、图表展示2

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值