精华内容
下载资源
问答
  • 使用R语言制作树状图

    千次阅读 2020-04-15 12:44:07
    用R语言画树状图要用到treemap 和readlx ,这两个包,可以在Rstudio中输入以下代码: ``` install.packages('treemap','readxl','gdata') ``` 在网上把疫情的数据获取到excel中,命名为hong.xls,并将其放在Rstudio...

    用R语言画树状图要用到treemap, readlx,gdata ,这三个包,可以在Rstudio中输入以下代码:


    install.packages('treemap','readxl','gdata')

    在网上把数据获取到excel中,命名为yiqing.xlsx,并将其放在Rstudio中R语的默认目录,录入以下下载。

    library(readxl)
    library(treemap)
    library(gdata)
    setwd('~/R Project1/')
    rm(list = ls())
    data<-read_excel('yiqing.xlsx')
    library(gdata)plot.new()
    treemap(data,
            title='Global Covid-19 Infections',
            index='country',
            type='index',
            vSize='people',
            vColor='death',
            aspRatio=2,
            palette='RdYlGn',
            inflate.labels=T
    )

     

    以下是用到的数据文件截图

    展开全文
  • 制作树状图思路

    2020-05-09 10:46:01
    开发工具与关键技术: VS2015 mvc 制作一个简单的树状图需要知道什么?; 作者:刘佳明 需要插件为: <link href="~/Scripts/zTree/zTreeStyle/zTreeStyle.css" rel="stylesheet" /> <script src="~/...

    开发工具与关键技术:    VS2015       mvc      制作一个简单的树状图需要知道什么? 

    作者:刘佳明

    需要插件为:

    <link href="~/Scripts/zTree/zTreeStyle/zTreeStyle.css" rel="stylesheet" />
      <script src="~/Scripts/zTree/jquery.ztree.core-3.5.js"></script>
    

    HTML:
     

     <div class="con">
    
                <div class="containOne">
    
                   <b>系统角色</b>  
    
                <ul id="treeOne" class="ztree node_name"></ul>
    
            </div>
    
    

    Javascript:

    <script>
            //树形图的配置参数
            var setting = {
                async: {
                    enable: true//设置 zTree 是否开启异步加载模式
                },
                data: {
                    simpleData: {
                        enable: true//确定 zTree 初始化时的节点数据、异步加载时的节点数据、或 addNodes 方法中输入的 newNodes 数据是否采用简单数据模式 (Array)
                    }
                },   
            };
            $(function () {
                $.ajaxSettings.async = false;//取消异步
                $.post("/IndexDemo/GongNengZtree", function (data) {
                    console.log(data);
                    $.fn.zTree.init($("#treeOne"), setting, data);///初始化树形
                })
            })
    </script>

     

     

    控制器中的方法:

      public ActionResult GongNengZtree()
            {
                var List = (from tb in myModel.S_Module
                            select new zTreeNode
                            {
                                SID = tb.ModuleID,
                                PID = tb.ModuleID,
                                NodeName = tb.Module
                            }).ToList();
                List<Dictionary<string, Object>> jsonlist = new List<Dictionary<string, object>>();
                List<zTreeNode> ztree = new List<zTreeNode>();
                for (int i = 0; i < List.Count; i++)
                {
                    zTreeNode tree = new zTreeNode();
                    if (i==0)
                    {
                        tree.PID =0;//父亲id  
                        tree.SID = 0;//儿子id 
                        tree.NodeName = List[i].NodeName.ToString();//节点名
                        List.Add(tree);
                    }
                    else
                    {
                        tree.PID = 0;//父亲id  
                        tree.SID = List[i].SID;//儿子id 
                        tree.NodeName = List[i].NodeName.ToString();//节点名
                        ztree.Add(tree);//将对象添加到List<T>的结尾处
                    }
                }
                foreach (var modle in ztree)
                {
                    Dictionary<string, object> jsonZtree = new Dictionary<string, object>();
                    jsonZtree.Add("pId", modle.PID);
                    jsonZtree.Add("id", modle.SID);
                    jsonZtree.Add("name", modle.NodeName);
                    jsonlist.Add(jsonZtree);
                }
                return Json(jsonlist, JsonRequestBehavior.AllowGet);
            }
    

     

    效果图如下:

     

    数据库的结构是这样的:

     

    通过相同的方法还可以实现出如下的效果:(对应的数据库结果不在局限于一个表:)

    ztree官网文档 

    链接:http://www.treejs.cn/v3/main.php#_zTreeInfo

     

    展开全文
  • 使用树状图的话,eCharts提供的图形组件也有点不太适合,因此在同事建议下使用goJs制作树状图,效果如下。 过程分布: 导入package 初始化模板(初始化的过程好像必须放在ngOnInit()中,如果放在http请求的回调函数...

    需求场景:
    因为需要根据接口之间的分发关系制作数据流向关系图,但是eCharts中的关系图组件实例不怎么多,数据流向表达不明显;使用树状图的话,eCharts提供的图形组件也有点不太适合,因此在同事建议下使用goJs制作树状图,效果如下。
    在这里插入图片描述过程分布:

    1. 导入package
    2. 初始化模板(初始化的过程好像必须放在ngOnInit()中,如果放在http请求的回调函数中,是不行的.)
    3. 加载数据;

    作为模型化组件,最重要的内容就是数据的结构,树形图所接受的基本数据结构如下。

    [{​
    	key: "2"//必须属性,自身唯一标识
    	name: "parent"//必须属性
      ​},
    	{
    	key: "3"​​,
    	parent:"2",//必须属性,父节点
    	name: "son",
    	
    	color: "#52b4e0",//以下都是自定义属性,为的是之后与节点的shape属性绑定
    	fig: "RoundedRectangle"
    	fontColor: "black"
    	height: 32
    	servNo: "SCP-ERP-002"
    	stroke: null
    	width: NaN
    	}
    ]
    

    npm导入package

    //npm命令安装package,我安装的版本是^1.8.13

    npm install gojs  
    

    //进入相关文件导入’gojs

    import * as go from 'gojs';
    

    //引入gojs的make函数

    const $ = go.GraphObject.make;
    

    初始化模板

    diagram1: go.Diagram = null;
    ngOnInit() {
            this.diagram1=this.initModel("myDiagramDiv1")
        }
        
    initModel(divId){
         var diagram =
             $(go.Diagram, divId,
                 {
                 isReadOnly: true ,//设为只读,禁止拖动节点
                 initialContentAlignment: go.Spot.Center,//图像居中
                 layout: $(go.TreeLayout, //设置树形图布局
               		  { nodeSpacing: 15, layerSpacing: 30 //设置节点之间的间距,angle属性可以设置旋转,值有90,180 }
                 )
                 });
            
    
      
          	diagram.nodeTemplate =//设置节点模板
                $(go.Node, 
                    $(go.Panel, "Auto",{mouseEnter: this.diagramMouseEnter,mouseLeave: this.diagramMouseLeave//设置鼠标与节点的互动事件},
                        $(go.Shape, "RoundedRectangle",{ name: "SHAPE"},//设置属性名,为了之后快速查找go.Shape相关属性值
                        	// new go.Binding("a", "b"))格式是动态绑定,将传入数据的b值绑定节点的shape的a属性。
                        new go.Binding("width", "width"),
                        new go.Binding("height", "height"),
                        new go.Binding("fill", "color"),
                        new go.Binding("figure", "fig"),
                        new go.Binding("stroke", "stroke")), 
                        //设置文本格式
                        $(go.TextBlock,{name:"TEXT", font: " 13px Helvetica, sans-serif", margin: 3},new go.Binding("stroke", "fontColor"),new go.Binding("text", "name"))
                    ),
                );
    			//设置节点之间的连线属性
             diagram.linkTemplate =
                $(go.Link,
                    { selectable: false },
                    $(go.Shape,{ fill: "dodgerblue",stroke: "dodgerblue"}),
                    $(go.Shape,{ toArrow: "Feather",fill: "dodgerblue",stroke: "null" })
                );
            return diagram; 
        }
    
    加载数据
    这里假定我们已经拥有了相关结构的数据如下
    	data=[
      {
        "key": "JF_ERP26",
        "name": "JF_ERP",
        "color": "#3c5f84",
        "fig": "RoundedRectangle",
        "stroke": null,
        "width": 90,
        "height": 45,
        "fontColor": "white"
      },
      {
        "key": "采购订单确认27",
        "name": "采购订单确认 / SCP-ERP-002",
        "color": "#52b4e0",
        "fig": "RoundedRectangle",
        "stroke": null,
        "width": null,
        "height": 32,
        "fontColor": "black",
        "parent": "JF_ERP26",
        "servNo": "SCP-ERP-002",
        "fromSys": "JF_ERP",
        "toSys": "JF_WMS",
        "techType": "webservice",
        "servOper": null
      },
      {
        "key": "JF_WMS28",
        "name": "JF_WMS",
        "color": "#84dcfb",
        "fig": "RoundedRectangle",
        "stroke": null,
        "width": null,
        "height": 32,
        "fontColor": "black",
        "parent": "采购订单确认27"
      },
      {
        "key": "JF_SCP29",
        "name": "JF_SCP",
        "color": "#84dcfb",
        "fig": "RoundedRectangle",
        "stroke": null,
        "width": null,
        "height": 32,
        "fontColor": "black",
        "parent": "采购订单确认27"
      }
    ]
    //将数据加载到 this.diagram1模型
            var model1 = $(go.TreeModel);
            model1.nodeDataArray=data
            this.diagram1.model = model1;
    
    
    

    增加点击事件并更改指定的节点颜色

     //创建事件方法,添加过程在初始化模型中有介绍
      diagramMouseEnter(e, obj) {
      	//鼠标移到节点触发
            if(obj["bj"]["Zd"].servNo){
            //这里findObject()方法很坑,"SHAPE"要自己在初始化模型中定义,不然找不到,我做的时候可累死我了
                var shape = obj.findObject("SHAPE");
                shape.fill = "#6DAB80";
                shape.stroke = "#A6E6A1";
                var text = obj.findObject("TEXT");
                text.stroke = "white";
            }
          };
          
        diagramMouseLeave(e, obj) {
       	//鼠标离开节点触发
            if(obj["bj"]["Zd"].servNo){
                var shape = obj.findObject("SHAPE");
                //obj["bj"]["Zd"]是我数据存放的位置,我根据文本输出,自己一层一层找的,我不确定是不是所有人都是这个位置。
                shape.fill = obj["bj"]["Zd"].color;
                var text = obj.findObject("TEXT");
                text.stroke = obj["bj"]["Zd"].fontColor;
            }
          };
    
    展开全文
  • matplotlib 树状图

    2019-01-09 19:20:29
    import numpy as np import matplotlib.pyplot as plt k = 16 x = np.arange(k)#x轴的范围 y = np.random.rand(k)#随机生成个数作为柱状图的高度值 ... #在树状图的顶部绘制数值居中靠底边对齐 水平 垂...
    import numpy as np
    import matplotlib.pyplot as plt
    k = 16
    x = np.arange(k)#x轴的范围
    y = np.random.rand(k)#随机生成个数作为柱状图的高度值
    plt.bar(x,y)#画出x 和 y的柱状图
    for x,y in zip(x,y):#增加数值
        #在树状图的顶部绘制数值居中靠底边对齐 水平  垂直
        plt.text(x,y,'%.2f' % y,ha = 'center',va='bottom')
    
    plt.show()

    #----------------------------------------------------------------------------------------补充

    a = [1,2,3]
    b = [4,5,6]
    for x ,y in zip(a,b):
        print(x,y)
        
    1 4
    2 5
    3 6

     

    展开全文
  • Visio里如何画树状图?

    千次阅读 2021-04-07 16:31:17
    单击"文件>新建",单击"模板类别"下的"常规",然后打开"框图"。 左边有双树和多树两种结构. 默认是左右方向, 如果你需要绘制上下方向的, 只需要选中树按Ctrl+L左转即可. 按1来新增分支, 按2来移动分支. ...
  • 5、6月份就写完了(虽然依然有大量的bug),一直想写个博客记录一下开发过程中遇到的问题,以及难得完成了一个算是网上找不到类似案例的“树状图”模块。差不多一年后的今天,补完一些js基础后,回头看看当年写的...
  • d3js 生成树状图

    千次阅读 2020-05-29 14:24:59
    效果 code <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="https://d3js.org/d3.v5.min.js"></...
  • data是这样的,现在要实现B、C共用子节点E而不是另开辟一个子节点E ``` data = [ { "children": [ {"name": "B", "children": [ {"name": "E"}, ] }, { "children": [ ...```
  • d3.js——树状图的绘制

    万次阅读 热门讨论 2016-04-27 13:51:10
    树状图和集群图其实差不多,就一点点不一样,见下图: 图(1):集群图——d3.layout.cluster() 图(2):树状图——d3.layout.tree() 这样一来差别就看出来了。由于两者的代码差不多,这里就直接附上树状图...
  • 树状图插件

    2014-08-07 11:27:49
    树状图插件,直接引用插件,方便快捷的制作树状图
  • 树状图样式

    2014-09-10 10:19:21
    树状图样式,新手制作树状图样式,新手制作树状图样式,新手制作
  • python 字典生成树状图

    千次阅读 2019-11-11 09:19:08
    from graphviz import Digraph # 获取所有节点中最多子节点的叶节点 def getMaxLeafs(myTree): numLeaf = len(myTree.keys()) for key, value in myTree.items(): if isinstance(value, dict): ...
  • <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Title</title> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">&...
  • JQ树状图

    千次阅读 2019-05-24 10:36:22
    <ul class="ztree pcc-tree" id="positionTree"></ul>//树状图主体 ;"></ul>//筛选后主体 css 部分 .tree{ position: absolute; width: 300px; height: auto; border: 1px solid #ccc; margin-left:60...
  • 树状图布局插件介绍

    千次阅读 2019-06-09 19:45:32
    树状图是以数据树的图形表示形式,以父子层次结构来组织对象,把最大的父级放在顶上,用图表示关系。如 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190609194405696.PNG) 在这里,我用到的插件js和css是...
  • 用Js和css实现树状图

    2008-01-16 00:32:53
    大家来学学,共同努力。 下载完后,可以点击index.html看看效果,自己还可以在加上自己需要的
  • ERP中绘制树状BOM

    2012-06-21 15:37:32
    ERP中绘制树状BOM 添加,存储,显示项目资源清单
  • 发现一个不错的资源[1],可以很方便的画各种树形,为了做一个全排列的计算,找到了[2]. 根据少量调整,得到以下目标图片。 以下为 LaTeX\LaTeXLATE​X 源代码。 % Author: Frantisek Burian \documentclass{...
  • Tableau 可视化之树状图 树状图是一种相对简单的数据可视化形式,可通过具有视觉吸引力的格式提供见解。 使用树状图可在嵌套的矩形中显示数据。可使用维度定义树状图的结构,使用度量定义各个矩形的大小或颜色。 ...
  • 基于树状图的族谱程序

    千次阅读 2017-07-30 15:14:30
    树状图里可以任意切换到一个人,使他生孩子 杀人只有祖先有权利,杀掉后,他的子女也死了 可以查找族里容易一个孩子 可以查看全族 源代码 #include #include typedef struct treechain {  struct tree...
  • 内网不能下载linux tree工具包,动手写之。 先上一个能实现最基础功能的乞丐版片段。 # coding=utf-8 # Author : BaoJunxian # Date : 2018/11/27 import os, sys PREFIX = ['└─ ', '├─ '] ...
  • 使用antv中g6画树状图

    2021-10-15 15:00:12
    <template> <div id="container"></div> </template> <script> import G6 from "@antv/g6"; export default { ...// this.treedata= JSON.parse(JSON.stringify(this.tr.
  • 终于等到你——ggplot2树状图

    千次阅读 2017-12-02 00:00:00
    杜雨,EasyCharts团队成员,R语言中文社区专栏作者,...2017年8月份的R语言更新包中,默默地加入了支持ggplot2树状图的新几何对象,从此在R语言中制作树状图,不用再求助于第三方包的辅助了。 该包既有Cran上的
  • 主要介绍了利用Python制作动态排名的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
  • 在写书稿的过程中,经常要把目录结构以tree的格式展现出来,之前一直没有找到简洁的方法。后来,“沉默王二”技术交流群中的贤会兄弟提供了思路给我,说在Mac下可直接使用tree命令。但实际情况下,我在Mac上并没有...
  • 制作树状图之前,我们将使用dist()基于numeric_data计算距离矩阵。 在进行此计算之前,最好规范化数据。 因此,我将以0到1的比例对向量中的所有值进行标准化。 After we do that, we can create a distance ...
  • 树形Tree diagram 本文旨在描述如何使用Python实现基本的树形。要实现这样的树形,首先需要有一个数值矩阵。每一行代表一个实体(这里是一辆汽车)。每列都是描述汽车的变量。目标是将实体聚类以了解谁与谁有...
  • visio画等分树状图

    千次阅读 2017-04-06 14:35:00
    树状图形状 Search里搜索Tree,找到Double Tree或者Multi Tree的形状 二 分出更多branch 按住主干上的黄色小方块,拖出更多分支. 三 等分分支 将每个分支和对应的形状连接在一起,现在分支位置是跟随形状...
  • 聚类分析树状图的初探

    千次阅读 2019-03-05 17:26:00
     此次使用聚类分析是因为文章需要,然后参考官方文档简单制作满足分析要求的树状图。  因为到时候在A4纸上需要把三个图排版一下,所以在输出的时候就把图片设置的比较小。 1 import pandas as pd 2 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,913
精华内容 2,765
关键字:

如何制作树状图