我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python怎么用pyecharts画矩形树图

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python怎么用pyecharts画矩形树图

小编给大家分享一下python怎么用pyecharts画矩形树图,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

一、概念介绍

矩形树图(Treemap),即矩形式树状结构图,利用矩形的面积表示数值的大小,颜色用于类别区分,常用于呈现多类别的一维数值比较,易读性强;基于树状的功能,在结构图中可以同时呈现数据层次的信息。

示例如下:

python怎么用pyecharts画矩形树图

· 对比常见的柱状图和条形图,矩形树图弥补了以下三个缺点:

当我们的数据是多类别且每个类别只有一个数值时,我们用柱状图会浪费很多的空间,而且显得单调。

当数据间差异较大(235 vs 18),会是对我们柱状图的纵坐标设定带来困扰,忽略极差会稀释我们小值类的差异。(当然 ,如果我们的大值只有那么一两个,可以单拎出来处理)

柱状图无法呈现数据间的层级结构

二、数据展示

我们的目的是为了呈现类间数值大小差异,如果有第二层,也顺便比较第二层的占比情况。

为了展示多各类别,我们利用的是省份的数据,excel表格中呈现如下:

python怎么用pyecharts画矩形树图

 第二层、第三层为了树状的呈现而随机生成,也是为了说明,树层结构并不要求每个节点都有枝叶。

三、数据导入

我们先绘制只有一维的,只需要输入【省份】【关注类】两个列,这个其实更常用一点(我的角度)

province_type1 = pd.DataFrame(pd.read_excel('./各省市上市公司个数/矩形树图示例.xlsx'))tree = []name = [province_type1['省份'][i]+'\n'+str(province_type1['关注类A'][i]) for i in range(len(province_type1))]for i in range(len(province_type1)):    dic = {}    dic["value"],dic["name"] = int(province_type1['关注类A'][i]),name[i]    tree.append(dic)

①name--列表型数据结构,用于存放每个数据的label,这里我为了同时呈现数据对应的省份和大小,中间用了换行符(不用的话,在我们的树图上是一行,不好看)

②绘制矩形树图需要的是list,list里面是字典,key名指定为"name","value"。

③一定要注意的是,如果你画出来的图没有数据或者没有显示,检查是不是读excel数据中出现了问题,即上述代码中int的位置。

用于绘制treemap的数据结构如下所示:

python怎么用pyecharts画矩形树图

四、图像绘制 

tm = (      TreeMap()      .add("关注类A",tree)      .set_series_opts(label_opts=opts.LabelOpts(position='inside'))      .set_global_opts(title_opts=opts.TitleOpts(title = '',subtitle = '2022/1/18-林老头ss'))      ) tm.render('./绘图结果/矩形树图-例一.html')

position---指定label,即我们的name的位置,inside会居中显示。如果不加,默认top,在每个矩形上方显示。

结果如下所示:

python怎么用pyecharts画矩形树图

 由上图可知,广东省、浙江省和江苏省在随机数据中排名前三。受显示区域的限制,数据较小或名字过长的矩形往往不能显示完全,需要交互式放大其数值。

五、树形结构

在加入树形结构后,我们需要在代码中相应增加key为“children"的数据

from pyecharts.charts import Page,TreeMapfrom pyecharts import options as optsimport pandas as pdimport mathprovince_type1 = pd.DataFrame(pd.read_excel('./矩形树图示例.xlsx'))tree = []name = [province_type1['省份'][i]+'\n'+str(province_type1['关注类A'][i]) for i in range(len(province_type1))]for i in range(len(province_type1)):    dic = {}    dic["value"],dic["name"] = int(province_type1['关注类A'][i]),name[i]    if math.isnan(province_type1['关注类A-1'][i]) ==0:        dic["children"] = [                            {"name":province_type1['省份'][i]+"A-1:"+str(province_type1['关注类A-1'][i]),"value":int(province_type1['关注类A-1'][i])},                            {"name":province_type1['省份'][i]+"A-2:"+str(province_type1['关注类A-1'][i]),"value":int(province_type1['关注类A-2'][i])}                         ]    if math.isnan(province_type1['关注类A1-1'][i]) ==0:        dic["children"][0]["children"] = [                                        {"name":"A1-1:"+str(province_type1['关注类A1-1'][i]),"value":int(province_type1['关注类A1-1'][i])},                                        {"name":"A1-2:"+str(province_type1['关注类A1-1'][i]),"value":int(province_type1['关注类A1-2'][i])}                                        ]    tree.append(dic) tm = (      TreeMap()      .add("关注类A的树",tree)      .set_series_opts(label_opts=opts.LabelOpts(position='inside'))      .set_global_opts(title_opts=opts.TitleOpts(title = '加油呀朋友们~',subtitle = '2022/1/18-林老头ss'))      ) tm.render('./绘图结果/矩形树图-例二.html')

 如果没有枝叶的类,则不需要在"name""value"平级上加"children",如果枝叶中有两个以上类别,相当于是一个新的树,需要增加“children”,结构和树形一致,如下所示:

【“name”:“父节点”,

    "value": number,

   "children":【{“name”:“子节点一”,“value”:number},

                       {“name”:“子节点二”,“value”:number},

                       {“name”:“子节点三”,“value”:number}

                     】

子序列在显示区域允许的情况下,可以继续按上述结构增加。

绘制结果如下所示:

python怎么用pyecharts画矩形树图

从上图我们可以看到,尽管我们为父类命名,但显示的结果只有最小类的名称和数值。

pyecharts图像交互性较强,可以通过点击不断聚焦类,放大图像,但由于不知道怎么呈现给大家,还是鼓励大家自己动手操作去探索叭~

看完了这篇文章,相信你对“python怎么用pyecharts画矩形树图”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python怎么用pyecharts画矩形树图

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python怎么用pyecharts画矩形树图

小编给大家分享一下python怎么用pyecharts画矩形树图,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、概念介绍矩形树图(Treemap),即矩形式树状结构图,利用矩形的面积表示数值的大小,颜色用于类别区分,常用
2023-06-28

Python怎么使用pyecharts绘制箱形图

这篇文章主要介绍“Python怎么使用pyecharts绘制箱形图”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python怎么使用pyecharts绘制箱形图”文章能帮助大家解决问题。箱形图概念后
2023-07-02

Python pyecharts怎么绘制条形图

这篇文章主要介绍了Python pyecharts怎么绘制条形图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python pyecharts怎么绘制条形图文章都会有所收获,下面我们一起来看看吧。一、简介pye
2023-06-29

怎么用python画条形图

这篇文章主要介绍“怎么用python画条形图”,在日常操作中,相信很多人在怎么用python画条形图问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用python画条形图”的疑惑有所帮助!接下来,请跟着小编
2023-06-30

Python Pyecharts怎么绘制象形柱图

今天给大家介绍一下Python Pyecharts怎么绘制象形柱图。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。在可视化展示过程中,为了达到更形象的展示效果,
2023-06-28

怎么用小程序画一个矩形

这篇文章主要介绍了怎么用小程序画一个矩形的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用小程序画一个矩形文章都会有所收获,下面我们一起来看看吧。canvasContext.strokeRect定义画一个矩形
2023-06-26

怎么用Python中的turtle画箭头,矩形,五角星

本文小编为大家详细介绍“怎么用Python中的turtle画箭头,矩形,五角星”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么用Python中的turtle画箭头,矩形,五角星”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来
2023-06-29

怎么用Pyecharts绘制常用的图形

本文小编为大家详细介绍“怎么用Pyecharts绘制常用的图形”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么用Pyecharts绘制常用的图形”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.上下组合fro
2023-06-29

怎么使用python sns.countplot()绘画条形图

这篇文章主要介绍了怎么使用python sns.countplot()绘画条形图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用python sns.countplot()绘画条形图文章都会有所收获,下面
2023-07-02

怎么利用pyecharts画好看的饼状图

这篇文章给大家分享的是有关怎么利用pyecharts画好看的饼状图的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言使用的pyecharts是v1.0这里需要注意,pyecharts0.5的版本和v1.0以上的版
2023-06-14

怎么用python画圣诞树

这篇文章主要介绍了怎么用python画圣诞树,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如何用python画一个圣诞树呢?Turtle库来画圣诞树。1.方块圣诞树impor
2023-06-22

怎么使用python画樱花树

要使用Python画樱花树,可以按照以下步骤进行:1. 导入必要的库:```import turtleimport random```2. 设置画布:```window = turtle.Screen()window.bgcolor("bl
2023-08-18

怎么使用Python画圣诞树

使用Python画圣诞树可以使用turtle模块来实现。下面是一个简单的示例代码:```pythonimport turtledef draw_tree(t, size):if size returnelse:t.forward(size)
2023-08-18

python怎么用pyecharts制作词云图

这篇文章给大家分享的是有关python怎么用pyecharts制作词云图的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。需要安装pyechartspip install pyecharts -U 创建【demo6.
2023-06-28

Python怎么使用pyecharts绘制桑基图

本篇内容主要讲解“Python怎么使用pyecharts绘制桑基图”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么使用pyecharts绘制桑基图”吧!桑基图桑基图(Sankey
2023-07-02

怎么用Python的Pyecharts绘制图像

本篇内容介绍了“怎么用Python的Pyecharts绘制图像”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言:Echarts 是百度开源
2023-06-29

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录