做过CRM系统的童鞋应该都或多或少接触过hicharts或者echarts等数据统计插件.用过这两款,个人感觉echarts的画面更好看.至于功能,只有适合自己的才是最好的.

今天来说说我使用echarts的饼图的心得.

先给大家看一下简单地效果图:(鼠标移动到1.0时)

使用echarts,可以去官网 http://echarts.baidu.com/下载完整源码或者定制自己需要的模块.

使用起来很简单,首先先引用js源文件,再在js中初始化即可:

<script src="/js/echarts.js"></script>

<div id="main" style="width: 100%;height:600px;overflow: visible"></div>

<script>

var myChart = echarts.init(document.getElementById('main'));//声明一个ehcarts对象
var option = {
title : {//显示标题
text: 'BossApp版本信息',
x:'left',
textStyle: {
fontSize: '20',
color:'#333',
fontWeight: 'normal'
}
},
tooltip: {//鼠标移到模块上时,弹出框的内容
trigger: 'item',
//formatter: "{a} <br/>{b}: {c} ({d}%)"
//formatter: "{a} <br/>{b}"
formatter: function (obj) {
return obj.name.content
}
},
//legend: {
// orient: 'vertical',
// show:true,
// align: 'left',
// data:["1.0","2.0","3.0","4.0","5.0","6.0"]
//},
series: [
{
name:'版本信息',
type:'pie',
//selectedMode: 'single',
radius: ['50%', '75%'],
avoidLabelOverlap: false,
label: {
normal: {
formatter: function (obj) {
return obj.name.title
},
show: true,
position: 'inner',//文字显示位置,如上图中的1.0,1.1字样
textStyle: {
fontSize: '14',
fontWeight: 'normal'
}
},
emphasis: {
//show: true,
position: 'inner',
textStyle: {
fontSize: '14',
fontWeight: 'normal'
}
}
},
color:['#4fb8e3','#898989','#898989','#898989','#898989','#898989'],
labelLine: {
normal: {
show: true
}
},
data:[
//{value:335, name:'1.0版本',selected:true},
{value:335, name:{
title:versionInfo[5].version,
content:versionInfo[5].html
}},
{value:310, name:{
title:versionInfo[4].version,
content:versionInfo[4].html
}},
{value:234, name:{
title:versionInfo[3].version,
content:versionInfo[3].html
}},
{value:135, name:{
title:versionInfo[2].version,
content:versionInfo[2].html
}},
{value:200, name:{
title:versionInfo[1].version,
content:versionInfo[1].html
}},
{value:200, name:{
title:versionInfo[0].version,
content:versionInfo[0].html
}}
]
}
]
};
</script>
myChart.setOption(option);//配置生成的echarts,canvas的界面与有option决定 注意option的data这个属性.在官方文档上,都是写的data:[{value:100,name:ricky},{value:101,name:ricky1},.......], 然后tooltip默认的显示内容就为data里面的name属性.上面的例子中,versionInfo是一个变量,通过访问后台接口获取的一个对象.versionInfo有version与html这两个属性,假如你需要将versionInfo的html属性显示在tooltip中.怎么办呢? 我试过直接指定name:versionInfo.html.但是没有用.经过几次实验,发现将name当成一个对象进行处理,再设置tooltip的formatter,
formatter: function (obj) {
return obj.name.content
}
这样搞定了,但由于此时legend的data与series的data不一致,所以无法展示出下图的效果


 

百度ECHARTS 饼图使用心得 处理data属性的更多相关文章

  1. WPF仿百度Echarts人口迁移图

    GitHub地址:https://github.com/ptddqr/wpf-echarts-map/tree/master 关于大名鼎鼎的百度Echarts我就不多说了 不了解的朋友直接看官方的例子 ...

  2. 完整版ajax+百度echarts实现统计图表demo并随着窗口大小改变而自适应

    1.前言 百度Echarts会常用到我们的项目中做统计,api很详细,demo也非常之多,我们常用的是应有尽有了,做一些小项目的时候,百度echarts的demo已足够用了.今天呢.主要是跟小白讲一下 ...

  3. Vue Echarts 饼图设置默认选中一个

    Vue Echarts 饼图设置默认选中一个 myChart.setOption(data) // data伟echarts所需要传入的参数,就是配置参数最多的那个玩意 myChart.dispatc ...

  4. 微信小说分销系统设计之使用百度Echarts地图统计功能统计微信粉丝地域分布情况

    /** 转载请保留博客园原地址以及版权声明,请勿恶意修改,本博客中的内容均属于技术交流,请勿用于商业用途,谢谢配合 *  作者:杨浩瑞  QQ:1420213383  独立博客:http://www. ...

  5. C#+JQuery+.Ashx+百度Echarts实现全国省市地图和饼状图动态数据图形报表的统计

    在目前的一个项目中,需要用到报表表现数据,这些数据有多个维度,需要同时表现出来,同时可能会有大量数据呈现的需求,经过几轮挑选,最终选择了百度的echarts作为报表基础类库.echarts功能强大,界 ...

  6. ECharts饼图试玩

    处理类似提交问卷的数据,要生成图表,用了ECharts,好方便的. 简陋效果: 1.表单存储 有单选和多选题,单选直接存储各选项数字值,1,2,3,4...中一个:多选用|分隔存储选项值,如1|3,2 ...

  7. echarts中的option.legend.data has not been defined.

    1.错误描述 2.错误原因 var map = function(mapData){ require( [ 'echarts', 'echarts/chart/map' ], function (ec ...

  8. 百度echarts使用--y轴label数字太长难以全部显示

    问题: 今天遇到个小问题,我们系统前端呈现使用了百度echarts.在绘制折线图的时候,因为数字过大,导致显示出现了问题. 解决方案: 左边y轴的值默认是根据我们填充进去的值来默认分割的,因为原始值就 ...

  9. mark 百度Echarts统计图表

    mark http://git.oschina.net/seeyoui/kensite_cms/blob/master/src/main/java/com/seeyoui/kensite/framew ...

随机推荐

  1. php 向asmx发送请求 || php 发送xml请求, 以及处理返回的xml结果

    var $live_url = 'https://processing.ukash.com/RPPGateway/process.asmx'; $source = array( 'SecurityTo ...

  2. 2016-06-06:X264码率控制

    H.264与x264 H264是一个视频压缩编码标准.https://zh.wikipedia.org/wiki/H.264/MPEG-4_AVC X264实现H264视频压缩标准的开源项目.http ...

  3. 网站实现特定某个地区访问执行跳转(js方法)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Timus Online Judge 1001. Reverse Root

    Input The input stream contains a set of integer numbers Ai (0 ≤ Ai ≤ 1018). The numbers are separat ...

  5. 'telnet' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    在telnet与ftp服务器相连时出现的问题: 原因:windows自带telnet,只是没有安装 解决如下: 然后关机重启

  6. ThinkPHP 学习记录

    index.php //入口文件 define('APP_DEBUG',True); //开启调试模式 define('APP_PATH','./Application/'); //定义应用目录 re ...

  7. linux部分命令

    打包ROOT文件夹tar -cvf ROOT3.tar ./ROOT 解压则相反 ps aux | grep tomcat 直接杀死tomcat sudo kill -9 进程号 rm -rf ./R ...

  8. MySQL计算销售员昨日各指标综合得分_20161206

    数据需求如上,新增重激活以15天未下单为界定 SELECT d.销售员,(日销售额得分*0.6+日新增客户数得分*0.15+日客单价得分*0.1+日客户平均产品数得分*0.15)AS 综合得分,日销售 ...

  9. angularjs发送delete请求传参数的方法

    angularjs使用$http.delete()发送请求,默认是没法通过变量来传参数

  10. QT 使用jsoncpp

    QT 使用jsoncpp 编译jsoncpp 编译前先安装好python,scons,解压jsoncpp到目录e:\jsconcpp,查看目录下的readme,有关于编译的说明的,根据说明做相应操作就 ...