最近接了一项工作任务,要用图表对公司数据做一些统计,于是上网查找下有哪些控件可以使用,最后找了一款叫dhtmlxChart的控件,还是挺好用的。先贴一下最后的效果:

控件html代码:
<div id="chartbox" style="width:550px;height:400px;border:1px solid #c0c0c0;"></div>
javascript代码:
function doOnLoad() {
myPieChart = new dhtmlXChart({
view:"pie",
container:"chartbox",
value:"#number#",
labelOffset:-5,
label:function(obj){
var sum = myPieChart.sum("#number#");
var text = Math.round(parseFloat(obj.number)/sum*100)+"%";
return "<div class='percent' style='border:1px solid "+obj.color+"'>"+text+"</div>";
},
color:"#color#",
pieInnerText:"#number#次",
legend:{
width: 105,
align:"right",
valign:"middle",
template:"#logintype#"
}
});
myPieChart.parse(msg,"json");
}
控件显示原理是通过javascript函数初始化页面中的div元素,显示数据的内容通过加载指定的json变量的值来确定。下面解释一下初始化时主要变量的含义,
view : 确定显示图表的类型,pie 饼状图 bar 柱形图 line折线表
container:页面中需要初始化的div 元素id
value : 指定图表控件需统计数据的json变量中键名称
label : 计算每个色块显示百分比的方式
color : 每个色块显示的颜色,对应json变量中键名称
pieInnerText:每个色块中显示的内容
legend:图表中解释每个色块含义的方式
parse : 图表控件指定解析的json变量名
json变量的格式:
[
{ number:"36", logintype:"电脑", color: "#ee3639" },
{ sales:"47", logintype:"手机APP", color: "#ee9e36" },
{ sales:"55", logintype:"微信公众号", color: "#eeea36" }
]
最后只需要后台服务器传出相应的json变量给页面就行了。
dhtmlxChart控件:

被折叠的 条评论
为什么被折叠?



