html echarts饼状图_echarts环形图

html echarts饼状图_echarts环形图ECharts旭日图旭日图(Sunburst)由多层的环形图组成,在数据结构上,内圈是外圈的父节点。因此,它既能像饼图一样表现局部和整体的占比,又能像矩形树图一样表现层级关系。ECharts创建旭日图很简单,只需要在series配置项中声明类型为sunburst即可,data数据结构以树形结构声明,看下一个简单的实例:实例varoption={series:{type:’s…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

ECharts 旭日图

旭日图(Sunburst)由多层的环形图组成,在数据结构上,内圈是外圈的父节点。因此,它既能像饼图一样表现局部和整体的占比,又能像矩形树图一样表现层级关系。

ECharts 创建旭日图很简单,只需要在 series 配置项中声明类型为 sunburst 即可,data 数据结构以树形结构声明,看下一个简单的实例:

实例

var option = {

series: {

type: ‘sunburst’,

data: [{

name: ‘A’,

value: 10,

children: [{

value: 3,

name: ‘Aa’

}, {

value: 5,

name: ‘Ab’

}]

}, {

name: ‘B’,

children: [{

name: ‘Ba’,

value: 4

}, {

name: ‘Bb’,

value: 2

}]

}, {

name: ‘C’,

value: 3

}]

}

};

尝试一下 »

颜色等样式调整

默认情况下会使用全局调色盘 color 分配最内层的颜色,其余层则与其父元素同色。

在旭日图中,扇形块的颜色有以下三种设置方式:

在 series.data.itemStyle 中设置每个扇形块的样式。

在 series.levels.itemStyle 中设置每一层的样式。

在 series.itemStyle 中设置整个旭日图的样式。

上述三者的优先级是从高到低的,也就是说,配置了 series.data.itemStyle 的扇形块将会覆盖 series.levels.itemStyle 和 series.itemStyle 的设置。

下面,我们将整体的颜色设为灰色 #aaa,将最内层的颜色设为蓝色 blue,将 Aa、B 这两块设为红色 red。

实例

var option = {

series: {

type: ‘sunburst’,

data: [{

name: ‘A’,

value: 10,

children: [{

value: 3,

name: ‘Aa’,

itemStyle: {

color: ‘red’

}

}, {

value: 5,

name: ‘Ab’

}]

}, {

name: ‘B’,

children: [{

name: ‘Ba’,

value: 4

}, {

name: ‘Bb’,

value: 2

}],

itemStyle: {

color: ‘red’

}

}, {

name: ‘C’,

value: 3

}],

itemStyle: {

color: ‘#aaa’

},

levels: [{

// 留给数据下钻的节点属性

}, {

itemStyle: {

color: ‘blue’

}

}]

}

};

尝试一下 »

按层配置样式是一个很常用的功能,能够很大程度上提高配置的效率。

数据下钻

旭日图默认支持数据下钻,也就是说,当点击了扇形块之后,将以该扇形块的数据作为根节点,进一步显示该数据的细节。

在数据下钻后,图形的中间会出现一个用于返回上一层的图形,该图形的样式可以通过 levels[0] 配置。

实例

var data = [{

name: ‘Grandpa’,

children: [{

name: ‘Uncle Leo’,

value: 15,

children: [{

name: ‘Cousin Jack’,

value: 2

}, {

name: ‘Cousin Mary’,

value: 5,

children: [{

name: ‘Jackson’,

value: 2

}]

}, {

name: ‘Cousin Ben’,

value: 4

}]

}, {

name: ‘Father’,

value: 10,

children: [{

name: ‘Me’,

value: 5

}, {

name: ‘Brother Peter’,

value: 1

}]

}]

}, {

name: ‘Nancy’,

children: [{

name: ‘Uncle Nike’,

children: [{

name: ‘Cousin Betty’,

value: 1

}, {

name: ‘Cousin Jenny’,

value: 2

}]

}]

}];

option = {

series: {

type: ‘sunburst’,

// highlightPolicy: ‘ancestor’,

data: data,

radius: [0, ‘90%’],

label: {

rotate: ‘radial’

}

}

};

尝试一下 »

如果不需要数据下钻功能,可以通过将 nodeClick 设置为 false 来关闭,也可以设为 ‘link’,并将 data.link 设为点击扇形块对应打开的链接。

高亮相关扇形块

旭日图支持鼠标移动到某扇形块时,高亮相关数据块的操作,可以通过设置 highlightPolicy,包括以下几种高亮方式:

‘descendant'(默认值):高亮鼠标移动所在扇形块与其后代元素;

‘ancestor’:高亮鼠标所在扇形块与其祖先元素;

‘self’:仅高亮鼠标所在扇形块;

‘none’:不会淡化(downplay)其他元素。

上面提到的”高亮”,对于鼠标所在的扇形块,会使用 emphasis 样式;对于其他相关扇形块,则会使用 highlight 样式。通过这种方式,可以很方便地实现突出显示相关数据的需求。

具体来说,对于配置项:

itemStyle: {

color: ‘yellow’,

borderWidth: 2,

emphasis: {

color: ‘red’

},

highlight: {

color: ‘orange’

},

downplay: {

color: ‘#ccc’

}

}

highlightPolicy 为 ‘descendant’:

实例

option = {

silent: true,

series: {

radius: [‘15%’, ‘95%’],

center: [‘50%’, ‘60%’],

type: ‘sunburst’,

sort: null,

highlightPolicy: ‘descendant’,

data: [{

value: 10,

children: [{

name: ‘target’,

value: 4,

children: [{

value: 2,

children: [{

value: 1

}]

}, {

value: 1

}, {

value: 0.5

}]

}, {

value: 2

}]

}, {

value: 4,

children: [{

children: [{

value: 2

}]

}]

}],

label: {

normal: {

rotate: ‘none’,

color: ‘#fff’

}

},

levels: [],

itemStyle: {

color: ‘yellow’,

borderWidth: 2

},

emphasis: {

itemStyle: {

color: ‘red’

}

},

highlight: {

itemStyle: {

color: ‘orange’

}

},

downplay: {

itemStyle: {

color: ‘#ccc’

}

}

}

};

setTimeout(function () {

myChart.dispatchAction({

type: ‘sunburstHighlight’,

targetNodeId: ‘target’

});

});

尝试一下 »

highlightPolicy 为 ‘ancestor’ :

实例

option = {

silent: true,

series: {

radius: [‘15%’, ‘95%’],

center: [‘50%’, ‘60%’],

type: ‘sunburst’,

sort: null,

highlightPolicy: ‘ancestor’,

data: [{

value: 10,

children: [{

value: 4,

children: [{

value: 2,

children: [{

name: ‘target’,

value: 1

}]

}, {

value: 1

}, {

value: 0.5

}]

}, {

value: 2

}]

}, {

value: 4,

children: [{

children: [{

value: 2

}]

}]

}],

label: {

normal: {

rotate: ‘none’,

color: ‘#fff’

}

},

levels: [],

itemStyle: {

color: ‘yellow’,

borderWidth: 2

},

emphasis: {

itemStyle: {

color: ‘red’

}

},

highlight: {

itemStyle: {

color: ‘orange’

}

},

downplay: {

itemStyle: {

color: ‘#ccc’

}

}

}

};

setTimeout(function () {

myChart.dispatchAction({

type: ‘sunburstHighlight’,

targetNodeId: ‘target’

});

});

尝试一下 »

更多实例

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189206.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • OllyDBG 入门

    OllyDBG 入门一 OllyDBG 的安装与配置 OllyDBG1 10 版的发布版本是个 ZIP 压缩包 只要解压到一个目录下 运行 OllyDBG exe 就可以了 汉化版的发布版本是个 RAR 压缩包 同样只需解压到一个目录下运行 OllyDBG exe 即可 OllyDBG 中各个窗口的功能如上图 简单解释一下各个窗口的功能 更详细的内容可以参考 TT 小组翻译的中文帮助 反汇编窗口 显示被调试程序的反汇编代码 标题栏上的地址 HEX 数据 反汇编 注释可以通过在窗口中右击出现的菜单界面选项 gt 隐藏

    2025年5月9日
    6
  • 生产环境 Kubernetes 中出现了很多 Evicted Pod,我该怎么办呢?

    生产环境 Kubernetes 中出现了很多 Evicted Pod,我该怎么办呢?公众号关注「奇妙的Linux世界」设为「星标」,每天带你玩转Linux!线上被驱逐实例数据最近在线上发现很多实例处于Evicted状态,通过podyaml可以看到实例是…

    2022年5月17日
    24
  • PHP中file_put_contents追加和换行「建议收藏」

    PHP中file_put_contents追加和换行

    2022年2月11日
    51
  • spring aop用法_概念的种类

    spring aop用法_概念的种类SpringAOP入门——概念及注意点

    2022年8月11日
    3
  • c# AD域 权限管理

    c# AD域 权限管理我现在开始第一步,获取AD域用户所在的组,因为我想把菜单和界面按钮的功能由角色组来控制,用户加入角色组就可以获得相应的权限.这是我的思路.第一如何关联AD域并获取当前登录域的用户所在的角色组 ADUserMessage()代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.DirectorySer

    2022年5月16日
    120
  • JAVA解析xml的五种方式比较

    JAVA解析xml的五种方式比较1)DOM解析 DOM是html和xml的应用程序接口(API),以层次结构(类似于树型)来组织节点和信息片段,映射XML文档的结构,允许获取 和操作文档的任意部分,是W3C的官方标准 【优点】 ①允许应用程序对数据和结构做出更改。 ②访问是双向的,可以在任何时候在树中上下导航,获取和操作任意部分的数据。 【缺点】 ①通常需要加载整个XML文档来构造层次结构,消耗资源大。…

    2022年6月3日
    28

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号