echarts-树图、关系图、桑基图、日历图

树图

树图主要用来表达关系结构。
树图的端点也收symbol的调节
树图的特有属性:

  1. 树图的方向: layout、orient
  2. 子节点收起展开:initialTreeDepth、expandAndCollapse
  3. 叶子节点设置: leaves
  4. 操作设置:roam
  5. 线条:除了lineStyle可以调节线条外,还有edgeShape调节形状,edgeForkPosition调节树杈位置。

没有子节点的要叶子节点leave
在这里插入图片描述
树图中的data只能有一个数据

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "tree",
        data: [
          {
            name: "a",
            value: 10,
            children: [
              { name: "b1", value: 4 },
              {
                name: "b2",
                value: 6,
                children: [
                  { name: "c1", value: 3 },
                  { name: "c2", value: 3 },
                ],
              },
            ],
          },
        ],
      },
    ],
  };

在这里插入图片描述
layout:树图的布局,有 正交 和 径向 两种,默认情况下是’orthogonal’正交布局,'radial’是径向布局。

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "tree",
        layout: "radial", //"orthogonal"
        data: [
          {
            name: "a",
            value: 10,
            children: [
              { name: "b1", value: 4 },
              {
                name: "b2",
                value: 6,
                children: [
                  { name: "c1", value: 3 },
                  { name: "c2", value: 3 },
                ],
              },
            ],
          },
        ],
      },
    ],
  };

在这里插入图片描述

orient:在 layout = ‘orthogonal’ 的时候,该配置项才生效,在水平方向的排列方式。
取值有’LR’ (从左到右), ‘RL’(从右到左), ‘TB’(从上到下), ‘BT’(从下到上)。
initialTreeDepth:树图初始展开的层级(深度)。如果设置为 -1 或者 null 或者 undefined,所有节点都将展开。
expandAndCollapse:子树折叠和展开的交互,默认打开 。折叠后是否可以打开。

 let options = {
  tooltip: {
    show: true,
  },
  series: [
    {
      type: "tree",
      layout: "orthogonal", //"radial"
      orient: "BT",
      initialTreeDepth: 1,
      expandAndCollapse: true,
      data: [
        {
          name: "a",
          value: 10,
          children: [
            { name: "b1", value: 4 },
            {
              name: "b2",
              value: 6,
              children: [
                { name: "c1", value: 3 },
                { name: "c2", value: 3 },
              ],
            },
          ],
        },
      ],
    },
  ],
};

在这里插入图片描述
roam:是否开启鼠标缩放和平移漫游。
叶子节点的设置
在这里插入图片描述

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "tree",
        layout: "orthogonal", //"radial"
        orient: "BT",
        initialTreeDepth: 1,
        expandAndCollapse: true,
        roam: true,
        leaves: {
          label: {
            show: false,
          },
        },
        data: [
          {
            name: "a",
            value: 10,
            children: [
              { name: "b1", value: 4 },
              {
                name: "b2",
                value: 6,
                children: [
                  { name: "c1", value: 3 },
                  { name: "c2", value: 3 },
                ],
              },
            ],
          },
        ],
      },
    ],
  };

在这里插入图片描述
edgeShape:该配置项只在 正交布局 下有效。树图在 正交布局 下,边的形状
edgeForkPosition: 正交布局下当边的形状是折线时,子树中折线段分叉的位置。子节点在分叉处的位置

 let options = {
   tooltip: {
     show: true,
   },
   series: [
     {
       type: "tree",
       layout: "orthogonal", //"radial"
       orient: "BT",
       initialTreeDepth: 1,
       expandAndCollapse: true,
       roam: true,
       leaves: {
         label: {
           show: false,
         },
       },
       lineStyle: {
         color: "blue",
       },
       edgeShape: "polyline", // curve
       edgeForkPosition: "80%",
       data: [
         {
           name: "a",
           value: 10,
           children: [
             { name: "b1", value: 4 },
             {
               name: "b2",
               value: 6,
               children: [
                 { name: "c1", value: 3 },
                 { name: "c2", value: 3 },
               ],
             },
           ],
         },
       ],
     },
   ],
 };

在这里插入图片描述

矩形树图

矩形树图强调包含关系,相对于树图,更能看出谁的占比大。

矩形树图内的矩形受itemStyle的调节。
矩形树图特有的属性:

  1. 矩形比例:squareRtio
  2. 子节点相关的: leafDepth,drillDownIcon
  3. 操作设置: roam,nodeClick
  4. 颜色相关的设置:colorAlpha,colorSaturation,colorMappingBy
  5. 过小数据隐藏:visibleMin,childrenVisibleMin
  6. 面包屑:breadcrumb
  7. 特殊的label:upperLabel
  8. 数据维度与levels-data里的value的数组写法,visualDimension

矩形数组必须有value

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "treemap",
        data: [
          {
            name: "a",
            value: 10,
            children: [
              { name: "b1", value: 4 },
              {
                name: "b2",
                value: 6,
                children: [
                  { name: "c1", value: 3 },
                  { name: "c2", value: 3 },
                ],
              },
            ],
          },
        ],
      },
    ],
  };

在这里插入图片描述
squareRatio:期望矩形长宽比率,将矩形比例设为1,并不一定就是正方形,只是往正方形的比例靠。

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "treemap",
        squareRatio: 1,
        data: [
          {
            name: "a",
            value: 10,
            children: [
              { name: "b1", value: 4 },
              {
                name: "b2",
                value: 6,
                children: [
                  { name: "c1", value: 3 },
                  { name: "c2", value: 3 },
                ],
              },
            ],
          },
        ],
      },
    ],
  };

在这里插入图片描述
leafDepth:下钻,设置初始展示的节点。
drillDownIcon:当节点可以下钻时的提示符。只能是字符。

默认情况下的下钻提示符
在这里插入图片描述
修改下钻提示符

 let options = {
  tooltip: {
    show: true,
  },
  series: [
    {
      type: "treemap",
      squareRatio: 1,
      leafDepth: 1,
      drillDownIcon: "+",
      data: [
        {
          name: "a",
          value: 10,
          children: [
            { name: "b1", value: 4 },
            {
              name: "b2",
              value: 6,
              children: [
                {
                  name: "c1",
                  value: 3,
                  children: [
                    {
                      name: "d1",
                      value: 2,
                      children: [
                        { name: "e1", value: 1 },
                        { name: "e2", value: 1 },
                      ],
                    },
                    { name: "d2", value: 1 },
                  ],
                },
                { name: "c2", value: 3 },
              ],
            },
          ],
        },
      ],
    },
  ],
};

在这里插入图片描述
nodeClick: “link”, //点击节点后的行为false “zoomToNode”
colorAlpha: [0.3, 1],本系列默认的颜色透明度选取范围,data中的value越小,颜色就越透明。

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "treemap",
        squareRatio: 1,
        leafDepth: 1,
        drillDownIcon: "+",
        nodeClick: "link", //点击节点后的行为false  "zoomToNode"
        colorAlpha: [0.3, 1],
        data: [
          {
            name: "a",
            value: 10,
            children: [
              { name: "b1", value: 4 },
              {
                name: "b2",
                value: 6,
                children: [
                  {
                    name: "c1",
                    value: 3,
                    children: [
                      {
                        name: "d1",
                        value: 2,
                        children: [
                          { name: "e1", value: 1 },
                          { name: "e2", value: 1 },
                        ],
                      },
                      { name: "d2", value: 1 },
                    ],
                  },
                  { name: "c2", value: 3 },
                ],
              },
            ],
          },
        ],
      },
    ],
  };

在这里插入图片描述
colorMappingBy:表示同一层级节点,在颜色列表中以什么样的方式选择color
breadcrumb:对面包屑的设置。

 let options = {
  tooltip: {
    show: true,
  },
  series: [
    {
      type: "treemap",
      squareRatio: 1,
      leafDepth: 1,
      drillDownIcon: "+",
      nodeClick: "link",
      colorAlpha: [0.3, 1],
      colorMappingBy: "value",
      breadcrumb: {
        show: false,
      },
      data: [
        {
          name: "a",
          value: 10,
          children: [
            { name: "b1", value: 4 },
            {
              name: "b2",
              value: 6,
              children: [
                {
                  name: "c1",
                  value: 3,
                  children: [
                    {
                      name: "d1",
                      value: 2,
                      children: [
                        { name: "e1", value: 1 },
                        { name: "e2", value: 1 },
                      ],
                    },
                    { name: "d2", value: 1 },
                  ],
                },
                { name: "c2", value: 3 },
              ],
            },
          ],
        },
      ],
    },
  ],
};

在这里插入图片描述
upperLabel 用于显示矩形的父节点的标签

在这里插入图片描述
visualDimension :支持对数据其他维度进行视觉映射。每个节点的 value 都可以是数组,visualDimension 指定使用的是数组的哪一项。
levels:可以对每个节点进行配置

let options = {
   tooltip: {
     show: true,
   },
   series: [
     {
       type: "treemap",
       squareRatio: 1,
       leafDepth: 1,
       drillDownIcon: "+",
       nodeClick: "link", //点击节点后的行为false  "zoomToNode"
       //   colorAlpha: [0.3, 1],
       colorMappingBy: "value",
       breadcrumb: {
         show: false,
       },
       upperLabel: {
         show: true,
       },
       // visualDimension: 1,
       levels: [
         {
           //给第一层配
           color: ["red"],
         },
         {
           //给第二层配
           color: ["yellow", "green"],
         },
       ],
       data: [
         {
           name: "a",
           value: 10, // [10, 20]
           children: [
             { name: "b1", value: 4 },
             {
               name: "b2",
               value: 6,
               children: [
                 {
                   name: "c1",
                   value: 3,
                   children: [
                     {
                       name: "d1",
                       value: 2,
                       children: [
                         { name: "e1", value: 1 },
                         { name: "e2", value: 1 },
                       ],
                     },
                     { name: "d2", value: 1 },
                   ],
                 },
                 { name: "c2", value: 3 },
               ],
             },
           ],
         },
       ],
     },
   ],
 };

在这里插入图片描述

关系图

关系图先通过data画出点,然后再通过links数组指定连接关系。
1.关系图的节点收symbol的调节
2.特殊的属性
关系图连线相关的 edgeSymbol,edgeSymbolSize,edgeLabel
布局相关的 layout, circular
操作相关 roam

let options = {
   tooltip: {
     show: true,
   },
   series: [
     {
       type: "graph",
       data: [
         {
           value: 10,
           name: "张三",
           x: 40,
           y: 40,
         },
         {
           value: 30,
           name: "李四",
           x: 50,
           y: 100,
         },
         {
           value: 20,
           name: "王五",
           x: 80,
           y: 40,
         },
       ],
       links: [
         {
           source: "张三",
           target: "李四",
         },
       ],
     },
   ],
 };

在这里插入图片描述
然后将设置 xAxis,xAxis,指定坐标系,通过下表来连接


let options = {
    tooltip: {
      show: true,
    },
    xAxis: {
      type: "category",
      data: ["d1", "d2", "d3"],
    },
    yAxis: {},
    series: [
      {
        type: "graph",
        symbolSize: 20,
        coordinateSystem: "cartesian2d",
        data: [
          ["d1", 20],
          ["d2", 30],
          ["d3", 50],
        ],
        links: [
          {
            source: 0,
            target: 1,
          },
        ],
      },
    ],
  };

在这里插入图片描述

桑基图

用来表示流向的,可以看作是关系图的一种图形化表达,跟关系图一样,通过设置data来定义位置,然后用links连接代表流向。

桑基图的节点通过itemStyle来调节,桑基图的连接边受lineStyle调节。

特殊的属性:
朝向: orient
桑基矩形节点相关 nodeWidth,nodeGap

 let options = {
    tooltip: {
      show: true,
    },
    series: [
      {
        type: "sankey",

        data: [
          {
            name: "生产",
          },
          {
            name: "销售",
          },
          {
            name: "出口",
          },
          {
            name: "库存",
          },
        ],
        links: [
          {
            source: "生产",
            target: "销售",
            value: 100,
          },
          {
            source: "生产",
            target: "出口",
            value: 50,
          },
          {
            source: "生产",
            target: "库存",
            value: 40,
          },
        ],
      },
    ],
  };

在这里插入图片描述
nodeWidth:桑基图中每个矩形节点的宽度
nodeGap:桑基图中每一列任意两个矩形节点之间的间隔

  let options = {
    tooltip: {
      show: true,
    },

    series: [
      {
        type: "sankey",
        orient: "vertical",
        nodeWidth: 50,
        nodeGap: 8,
        data: [
          {
            name: "生产",
          },
          {
            name: "销售",
          },
          {
            name: "出口",
          },
          {
            name: "库存",
          },
        ],
        links: [
          {
            source: "生产",
            target: "销售",
            value: 100,
          },
          {
            source: "生产",
            target: "出口",
            value: 50,
          },
          {
            source: "生产",
            target: "库存",
            value: 40,
          },
        ],
      },
    ],
  };

在这里插入图片描述

日历图

日历图更像一种坐标系
calendar:日历坐标系组件
range:日历坐标的范围

 let options = {
    tooltip: {
      show: true,
    },
    calendar: {
      range: ["2024-5"],
      width: 300,
      height: 300,
    },
    series: [{}],
  };

在这里插入图片描述
日历图中的数据以graph关系图为例,可以是其他的图。

 let options = {
    tooltip: {
      show: true,
    },
    calendar: {
      range: ["2024-5"],
      width: 300,
      height: 380,
      orient: "vertical",
    },
    series: [
      {
        type: "graph",
        coordinateSystem: "calendar",
        data: [
          ["2024-5-1", 10],
          ["2024-5-4", 40],
          ["2024-5-7", 20],
          ["2024-5-11", 30],
          ["2024-5-21", 10],
          ["2024-5-22", 10],
        ],
        links: [
          {
            source: 0,
            target: 1,
          },
        ],
      },
    ],
  };

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/642942.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

eNSP学习——OSPF单区域配置

目录 相关命令 实验背景 实验目的 实验步骤 实验拓扑 实验编址 实验步骤 1、基础配置 2、部署单区域OSPF网络 3、检查OSPF单区域的配置结果 OSPF——开放式最短路径优先 基于链路状态的协议,具有收敛快、路由无环、扩展性好等优点; 相关命令 […

电信光猫的USB存储对外网开放访问

前提条件当然是要有公网IP地址了,没有的话去找电信索要,然后可以使用动态域名正常访问。 我的电信光猫发现共享访问速度还可以,会有31M/s左右的写入速度 但是有一个不方便的是,无法从外网提供访问,SMB协议所用的445端…

军队仓库管理系统|DW-S301系统特点

部队仓库管理系统DW-S301系统通过数据采集、互联网和物联网技术,实现数字化智能管控,以提高军用物资的仓储准确率和流转率,缩短周转时间,降低库存成本,也有助于消除生产过程中的不确定性。 系统功能:通过部…

WebService的wsdl详解

webservice服务的wsdl内容详解,以及如何根据其内容编写调用代码 wsdl示例 展示一个webservice的wsdl,及调用这个接口的Axis客户端 wsdl This XML file does not appear to have any style information associated with it. The document tree is shown…

DSVPN综合实验

DSVPN综合实验 一.实验拓扑 二.实验要求 1,R5为ISP,,只能进行IP地址配置;其所有地址均配为公有IP地址 2,R1和R5间使用ppp的PAP认证,R5为主认证方; R2于R5之间使用ppp的chap认证,R5为主认证方,…

python web自动化(Allure报告)

Allure详细安装请看之前的博客 1.Allure配置与⼊⻔ 运⾏⽤例,⽣成allure报告 pip install allure-pytest -i https://mirrors.aliyun.com/pypi/simple/ 运⾏⽤例,⽣成allure报告 # main.py import os import pytest if __name__ __m…

Softing工业推出新品edgeGate:一款用于工业边缘和云应用的硬件网关

2024年4月17日(哈尔),Softing工业自动化在2024年汉诺威工业博览会上首次展示了新品edgeGate。该产品是一个无需维护的硬件物联网网关解决方案,可将生产数据从PLC和数控机床控制器传输至工业边缘及物联网云平台。 (edge…

plt多子图设置

import matplotlib.pyplot as plt# 使用 subplots 函数创建一个 2x3 的子图网格 fig, axs plt.subplots(nrows2, ncols3, figsize(16, 10)) # 调整 figsize 来改变图像大小# 遍历每个子图,并绘制一些内容(这里只是简单的示例) for ax in ax…

【Python搞定车载自动化测试】——Python实现CAN总线Bootloader刷写(含Python源码)

系列文章目录 【Python搞定车载自动化测试】系列文章目录汇总 文章目录 系列文章目录💯💯💯 前言💯💯💯一、环境搭建1.软件环境2.硬件环境 二、目录结构三、源码展示1.诊断基础函数方法2.诊断业务函数方法…

探索Python技巧:零基础学习缩进与逻辑关系

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、理解Python的缩进语法 缩进规则详解 二、缩进在逻辑关系中的应用 逻辑块示例 三、实…

【LSTM】LSTM cell的门结构学习笔记

文章目录 1. LSTM cell2. 门结构3. 门的公式4. 门的参数5. 重点关系厘清 1. LSTM cell 如文章 LSTM网络与参数学习笔记 中介绍, LSTM cell指的是一个包含隐藏层所有神经元的结构.但是LSTM门控单元的公式如何理解、门和LSTM cell神经元如何对应、门函数的参数维度、不同时间步不…

工作中的相关问题

最近属于各方面繁杂事务较多,所以相关问题也较为分散,没有细致联系,仅为一个自我小总结,序号并无相关学习顺序,未全的点后续补充 参考链接:5分钟带你深入浅出搞懂 Nginx | 二哥的Java进阶之路 (javabetter…

【NumPy】NumPy实战入门:线性代数(dot、linalg)与随机数(numpy.random)详解

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

MySQL库/表/数据的操作

文章目录 1.数据库操作1.1 创建、删除、查看和修改1.2 编码格式1.3 备份和恢复 2.表的操作2.1 创建表2.2 存储引擎2.3 查看表、修改表、删除表 3.数据类型3.1整数类型3.2字节类型(bit)3.3浮点类型(bit)3.4 decimal3.5 字符串类型3.6 日期和时间类型3.7 enum和set关于如何查找想…

多线程事务

一、业务场景 我们在工作中经常会到往数据库里插入大量数据的工作,但是既需要保证数据的一致性,又要保证程序执行的效率。因此需要在多线程中使用事务,这样既可以保证数据的一致性,又能保证程序的执行效率。但是spring自带的Trans…

【一个糟糕的词:省流】

今日思考,博主分享📝,原文如下, 我最近听到了一个特别糟糕的词叫省流。我甚至认为这个词可以用来衡量一个人的智商啊,我们可以把一个知识简单的分成三部分问题,答案思维方式就是这个答案是怎么推导出来的啊…

【FPGA】VGA显示文字、彩条、图片——基于DE2-115

文章目录 前言一、VGA概述1.1 简述1.2 管脚定义1.3 VGA显示原理1.4 VGA时序标准1.5 VGA 显示模式及相关参数 二、VGA显示自定义的汉字字符2.1 点阵汉字生成2.2 生成BMP文件2.3 生成txt文件2.4 实现效果 三、VGA显示条纹3.1 实现流程3.2 实现效果 四、VGA输出一幅彩色图像4.1 bm…

代码随想录——找树左下角的值(Leetcode513)

题目链接 层序遍历 思路:使用层序遍历,记录每一行 i 0 的元素,就可以找到树左下角的值 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}*…

基于SSH的母婴用品销售管理系统带万字文档

文章目录 母婴商城系统一、项目演示二、项目介绍三、系统部分功能截图四、万字论文参考五、部分代码展示六、底部获取项目源码和万字论文参考(9.9¥带走) 母婴商城系统 一、项目演示 母婴商城系统 二、项目介绍 基于SSH的母婴商城系统 系统…

了解K8s集群kubectl命令进行陈述式资源管理

前言 在 Kubernetes 集群中,通过陈述式和声明式资源管理是确保应用程序高效运行的关键。认识这两种管理方法,能够更好地掌握 Kubernetes 集群的运维和管理。 目录 一、K8s 资源管理操作分类 1. 陈述式 2. 声明式 3. K8s 集群管理常用命令概览 二…