1 事件:事件绑定,事件命名统一挂载到require('echarts/config').EVENT(非模块化为echarts.config.EVENT)命名空间下,建议使用此命名空间作为事件名引用,当前版本支持事件有: 
-----------------------基础事件----------------------- 
REFRESH(刷新), 
RESTORE(还原), 
RESIZE(显示空间变化), 
CLICK(点击), 
DBLCLICK(双击), 
HOVER(悬浮), 
MOUSEOUT(鼠标离开数据图形), 
2.添加节点

param.data.children.push({
name: '500', // {name: '标注1', value: 100, x: 50, y: 20},
value: 4,
nodeType: thisTreeType,
id: new Date().getTime().toString(), //自定义属性
symbol: 'rectangle', //
color: ["red"], //填充色transparent
itemStyle: {
normal: {
color: ["#20B2AA"], //新增节点的填充样式
label: { //标签
show: true,
hoverLink: false,
interval: 'auto',
position: 'inside', //标签的位置
rotate: 0,
formatter: null,
textStyle: {
color: 'white',
fontSize: 16,
align: "left",
baseline: "bottom"
},
}
}
},
symbolSize: [120, 40],
children: []
})
myChart.refresh()

3.获取数据

myChart.chart.tree.series[0].data

4.例子

var myChart, option;

//加载树

// 路径配置
/* require.config({
paths: {
echarts: 'http://echarts.baidu.com/build/dist'
}
});*/
require.config({
paths: { //文件路径
echarts: './echarts/configChart'
}

});

// Step:4 require echarts and use it in the callback.
// Step:4 动态加载echarts然后在回调函数中开始使用,注意保持按需加载结构定义图表路径
require( //所需js
[
'echarts',
'echarts/chart/tree',
],
function(ec) {
// 基于准备好的dom,初始化echarts图表
myChart = ec.init(document.getElementById('main_orgStructure'));
var commonStyle = {}
option = {
title: {
text: 'SCADA'
},
tooltip: {
show: false,
formatter: function(params) { //自定义提示信息
return params.name
}
},
color: [ //节点填充色
"#20B2AA"
],
toolbox: {
show: false,
feature: {
mark: {
show: true
},
dataView: {
show: true,
readOnly: false
},
restore: {
show: true
},
saveAsImage: {
show: true
}
}
},
calculable: false,
series: [{
name: '树图',
type: 'tree',
orient: 'vertical', // vertical horizontal radial//树的方向
rootLocation: {
x: '50%',
y: '50%'
}, // 根节点位置 {x: 'center',y: 10}
nodePadding: 20, //节点间距
layerPadding: 60, //层间距
symbol: 'circle',
roam: true, //可以用鼠标缩放 拖动
//direction: 'inverse', //树反转
itemStyle: {
normal: {
color: '#20B2AA', //节点背景色
label: {
show: true,
position: 'inside',
textStyle: {
color: '#20B2AA',
fontSize: 15,
align: "left"
//fontWeight: 'bolder'
}
},
lineStyle: {
color: '#DB7093',
width: 1,
type: 'broken', // 'curve'|'broken'|'solid'|'dotted'|'dashed'

}
},
emphasis: {
label: {
show: false
}
}
},
data: thisDataArr
}]
};

//缩放等级

var zr = myChart.getZrender();
zr.painter._layers[1].scale = [1, 1, 0, 0]; //前两个为缩放大小,后两个为缩放原点

/////所有的数据

myChart.chart.tree.series[0].data;

、、设置中心点(根节点)

zr.painter._layers[1].position = [10, 10]; //重新定位中心点(根节点)

、、计算树图的宽度

function getTreeWidth(zr) {
var nodes = zr.storage._roots;
var max = 0;
var min = 0;
for(var i = 0; i < nodes.length; i++) {
if(nodes[i].type == 'image' || nodes[i].type == 'icon') {
var nodeX = nodes[i].style.x;
if(nodeX > max) {
max = nodeX;
rightNode = nodes[i];
continue;
}
if(nodeX < min) {
min = nodeX;
}
}
}
return  max - min;
}

注:原文地址http://www.jianshu.com/p/1393c3ab7444

echarts 树图的更多相关文章

  1. ECharts树图节点过多时取消缩放,调整容器高度自适应内容变化

    问题现象 使用ECharts树图,在数据维度大,节点过多时,所看到的内容会重叠交错,无法查看. 原因 在给定ECharts树图容器尺寸后,无论数据多么庞大或者稀少,数据始终会尝试在给定容器内撑满.全部 ...

  2. echarts - 树图实现四个层级

    我相信很多人和我一样,制作echats图标时,都会先去demo官网找相同的或者近似的效果,然后再此基础上改进成我们想要的那个. 但是近期混迹某微信群时,我看到一个群友抛出问题说,echarts画树状图 ...

  3. Echarts树图定制详解

    本文讲的是如何定制Echarts的tree图.主要包括下载.全局变量名修改.左键菜单添加.右键菜单添加.内容缩放.文本过滤高亮等. 一 说明 Echarts中提供了tree图,但实际项目中,该tree ...

  4. echarts - 特殊需求实现方案汇总

    五分钟上手echarts echarts中 设置x||y轴文案.提示文字等为固定字数,超出显示"..." 关于echarts下钻功能的一些总结.js echarts - 特殊需求实 ...

  5. json通过后台获取数据库中的内容,并在前端进行显示

    fastjson.jar以及Echarts树图的js文件(需要在servlet对json进行赋值,所以需要用到json的插件) 链接:https://pan.baidu.com/s/1GBbamPNG ...

  6. ECharts使用心得——矩阵树图

    1. 缘起 最近实验室 boss 让用矩形树图做一下研究数据的展示,囧,矩形树图是什么鬼.问了问师兄,说用 R 语言可以实现,让我去研究一下. = =,那这周不是不用干别的了. 刚好最近在研究百度出的 ...

  7. echarts玩转图表之矩形树图

    前言 这是第一次用makedown编辑器写文章,感觉像一件利器,排版美观而且效率飙升.进入正题 Echart官网文档地址 针对于矩形树图api配置项链接 1. 完全从数据定义图形 $.get( &qu ...

  8. 时隔两个月再写的Echarts(Enterprise Charts,商业级数据图表)一文

    简介 ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10 ...

  9. echarts学习总结

    ECharts学习总结使用步骤1 引入ECharts <script src="echarts.min.js"></script>2 绘制一个简单的图表 为 ...

随机推荐

  1. WPF DataGrid多表头/列头,多行头,合并单元格,一列占据多行

    先上效果图: 思路说明:这是两个DataGrid,没有嵌套,位置和高度保持一致,在加上ScrollViewer滚动条,这就像是在一个DataGrid中. 缺点: 因为最外层有透明的Border,所以没 ...

  2. 【Linux】【Jenkins】Jenkins安装和配置等

    Jenkins配置详解: http://lib.csdn.net/article/git/18342 Jenkins介绍 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功 ...

  3. 【Selenium-WebDriver自学】Selenium环境安装设置(九)

    ==================================================================================================== ...

  4. 《图像处理实例》 之 Voronoi 图

    Voronoi 图的设计 以下的改进是http://www.imagepy.org/的作者原创,我只是对其理解之后改进和说明,欢迎大家使用这个小软件! 如有朋友需要源工程,请在评论处留邮箱! 说明:类 ...

  5. 下雨天,适合学「Spring Boot」

      北方的闷热,让不少小伙伴盼着下雨,前几天北京下了场大雨,杭州也紧跟这下了场雨,就在昨天原本还很闷热的天,突然就飘泼大雨了.今天也断断续续的下着小雨,一觉醒来已经是10点了.有句话说:懒惰是人的天性 ...

  6. 阿里云 putty链接服务器出现 server refused our key

    阿里云 putty链接服务器出现 server refused our key 创建了密钥对绑定实例,puttygen生成ppk,putty配置参数,连接,一步一步来的,结果出现 server ref ...

  7. 《汇编语言 基于x86处理器》第十二章浮点数部分的代码

    ▶ 书中第十二章的程序,主要讲了 FPU 的指令和浮点数计算的过程 ● 代码,简单的 32 为浮点数测试 INCLUDE Irvine32.inc INCLUDE macros.inc .data f ...

  8. python中from __future__ import division

    ppython2.7版本中整数相除得出的结果不显示小数 a = 9 / 2 print(a) 输出结果: 4 此时就需要调用from __future__ import division 1 from ...

  9. <转载>apache 配置 http://www.blogjava.net/bukebushuo/articles/229103.html

    基于 NCSA 服务器的配置文件 由 Rob McCool 编写,龙子翻译 Apache服务器主配置文件. 包括服务器指令的目录设置. 详见 <URL:http://www.apache.org ...

  10. hive-client heap内存大小的配置优先级

    hive-client Heap大小的配置优先级 其实主要解决,hive作为数据仓库(hive -e "select ····") 如果是分区表且分区较多可能导致hive 堆内存溢 ...