iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >怎么使用python字典生成树状图
  • 916
分享到

怎么使用python字典生成树状图

2023-07-02 19:07:50 916人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍了怎么使用python字典生成树状图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python字典生成树状图文章都会有所收获,下面我们一起来看看吧。python字典生成树状图from&n

这篇文章主要介绍了怎么使用python字典生成树状图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python字典生成树状图文章都会有所收获,下面我们一起来看看吧。

python字典生成树状图

from graphviz import Digraph# 获取所有节点中最多子节点的叶节点def getMaxLeafs(myTree):    numLeaf = len(myTree.keys())    for key, value in myTree.items():        if isinstance(value, dict):            sum_numLeaf = getMaxLeafs(value)            if sum_numLeaf > numLeaf:                numLeaf = sum_numLeaf    return numLeafdef plot_model(tree, name):    g = Digraph("G", filename=name, fORMat='png', strict=False)    first_label = list(tree.keys())[0]    g.node("0", first_label)    _sub_plot(g, tree, "0")    leafs = str(getMaxLeafs(tree) // 10)    g.attr(rankdir='LR', ranksep=leafs)    g.view()root = "0"def _sub_plot(g, tree, inc):    global root    first_label = list(tree.keys())[0]    ts = tree[first_label]    for i in ts.keys():        if isinstance(tree[first_label][i], dict):            root = str(int(root) + 1)            g.node(root, list(tree[first_label][i].keys())[0])            g.edge(inc, root, str(i))            _sub_plot(g, tree[first_label][i], root)        else:            root = str(int(root) + 1)            g.node(root, tree[first_label][i])            g.edge(inc, root, str(i))tree = {        "tearRate": {            "reduced": "no lenses",            "normal": {                "astigmatic": {                    "yes": {                        "prescript": {                            "myope": "hard",                            "hyper": {                                "age": {                                    "young": "hard",                                    "presbyopic": "no lenses",                                    "pre": "no lenses"                                }                            }                        }                    },                    "no": {                        "age": {                            "young": "soft",                            "presbyopic": {                                "prescript": {                                    "myope": "no lenses",                                    "hyper": "soft"                                }                            },                            "pre": "soft"                        }                    }                }            }        }    }plot_model(tree, "tree.gv")

效果如下:

怎么使用python字典生成树状图

python生成树结构

# 生成树结构def get_trees(data,              key_column='elementId',              parent_column='parentId',              child_column='children'):    """    :param data: 数据列表    :param key_column: 主键字段,默认id    :param parent_column: 父ID字段名,父ID默认从0开始    :param child_column: 子列表字典名称    :return: 树结构    """    data_dic = {}    for d in data:        data_dic[d.get(key_column)] = d  # 以自己的权限主键为键,以新构建的字典为值,构造新的字典     data_tree_list = []  # 整个数据大列表    for d_id, d_dic in data_dic.items():        pid = d_dic.get(parent_column)  # 取每一个字典中的父id        if not pid:  # 父id=0,就直接加入数据大列表            data_tree_list.append(d_dic)        else:  # 父id>0 就加入父id队对应的那个的节点列表            try:  # 判断异常代表有子节点,增加子节点列表=[]                data_dic[pid][child_column].append(d_dic)            except KeyError:                data_dic[pid][child_column] = []                data_dic[pid][child_column].append(d_dic)    return data_tree_list def recursion(data, l=None):    if l is None:        l = []    for i in data:        if 'children' in i:            children=i.pop('children')            l.append(i)            recursion(children,l)        else:            l.append(i)    return l

关于“怎么使用python字典生成树状图”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么使用python字典生成树状图”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网Python频道。

--结束END--

本文标题: 怎么使用python字典生成树状图

本文链接: https://www.lsjlt.com/news/343779.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • 怎么使用python字典生成树状图
    这篇文章主要介绍了怎么使用python字典生成树状图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用python字典生成树状图文章都会有所收获,下面我们一起来看看吧。python字典生成树状图from&n...
    99+
    2023-07-02
  • python字典生成树状图的实例
    目录python字典生成树状图python生成树结构python字典生成树状图 from graphviz import Digraph # 获取所有节点中最多子节点的叶节点 de...
    99+
    2024-04-02
  • 使用ECharts和Python接口生成树状图的方法
    使用ECharts和Python接口生成树状图的方法概要:近年来,数据可视化在各个领域中发挥着越来越重要的作用。ECharts是一款强大的数据可视化库,而Python是一种广泛使用的编程语言。将两者结合起来,我们可以实现简单、灵活且美观的树...
    99+
    2023-12-18
    Python echarts 树状图方法
  • python怎么生成密码字典
    本篇内容主要讲解“python怎么生成密码字典”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么生成密码字典”吧!一、密码字典所谓密码字典,主要是配合解密使用,一般情况用来暴力破解密...
    99+
    2023-06-29
  • windowsCMD生成文件夹树状图tree命令的使用
    如: 步骤: 在当前路径运行CMD: 输入tree: 当然也可以用绝对路径, 以tree \起头:太多了就不贴上来了。 也可以用相对路径: tree .\test_pipreq...
    99+
    2024-04-02
  • 使用PHP生成MySQL数据字典
    一个项目完成之后,按照需求,我需要给这个项目写设计文档,数据库字典。 设计文档到时好说,但是数据库字典可真的是有点吓到我了。 项目开始的比较急,最开始建数据库的时候没有用excel写数据库字典。 这几十张表的数据库,一个一个的写,那真的是酸...
    99+
    2023-09-11
    php mysql
  • 怎么用java代码生成柱状图
    要用Java代码生成柱状图,可以使用第三方库JFreeChart。以下是一个简单的示例代码,演示如何使用JFreeChart生成柱状...
    99+
    2023-10-23
    java
  • python怎么使用openai生成图像
    这篇文章主要介绍“python怎么使用openai生成图像”,在日常操作中,相信很多人在python怎么使用openai生成图像问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python怎么使用openai生...
    99+
    2023-07-05
  • Python怎么使用树状图实现可视化聚类
    今天小编给大家分享一下Python怎么使用树状图实现可视化聚类的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。树状图树状图是显...
    99+
    2023-07-05
  • sqlserver表怎么生成数据字典
    在 SQL Server 中生成数据字典可以通过以下步骤实现: 查询表结构信息:使用系统视图或者函数查询表的结构信息,例如查询表名...
    99+
    2024-04-09
    SQLServer
  • 使用python怎么生成一个字母数字验证码图片
    今天就跟大家聊聊有关使用python怎么生成一个字母数字验证码图片,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、...
    99+
    2023-06-14
  • html5中怎么生成柱状图效果
    html5中怎么生成柱状图效果,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。<html>  &...
    99+
    2024-04-02
  • python怎么把字符串变成字典
    你可以使用`eval()`函数将字符串转换为字典。然而,使用`eval()`函数时要非常小心,因为它会执行任意的代码,可能存在安全风...
    99+
    2023-09-29
    python
  • 使用Python生成直方图
    1. 引言 你想知道如何在Python中生成直方图吗?在本教程中,我将向大家展示如何做到这一点。 数值数据的分布可以用直方图表示。直方图是数据的一种可视化表示,它使用不同高度的条形图,其中每个条形图标...
    99+
    2023-09-02
    python pandas
  • python怎么用matplotlib生成图表
    要使用 matplotlib 在 python 中生成图表,请遵循以下步骤:安装 matplotlib 库。导入 matplotlib 并使用 plt.plot() 函数生成图表。自定义...
    99+
    2024-05-05
    python 可视化数据 排列
  • Python字典怎么用
    这篇文章主要讲解了“Python字典怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python字典怎么用”吧!字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=&...
    99+
    2023-06-29
  • 如何利用ECharts和Python接口生成柱状图
    如何利用ECharts和Python接口生成柱状图概述:随着数据可视化技术的发展,柱状图成为常见的数据展示方式之一。本文将介绍如何利用ECharts和Python接口生成柱状图。ECharts 是一款基于 JavaScript 的开源可视化...
    99+
    2023-12-17
    柱状图 Python echarts
  • Python基础之字典怎么使用
    今天小编给大家分享一下Python基础之字典怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一. 什么是字典字典作为P...
    99+
    2023-07-02
  • Python生成器怎么使用
    本篇内容介绍了“Python生成器怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!生成器仅仅拥有生成某种东西的能力,如果不用__nex...
    99+
    2023-06-17
  • Python字典items()方法怎么使用
    字典的items()方法用于返回字典中所有键值对的视图。该方法返回一个可迭代的对象,其中每个元素都是一个包含键和对应值的元组。以下是...
    99+
    2023-10-12
    Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作