写在前面,版本库:Ext JS Library 3.3.1
做图表的时候纵坐标很多值都是一样的,无意中发现下面的解决方法,自己测试是可以了,写出来以备后查,以便他人查看。其他版本没测试过。有兴趣的朋友可以自己测试。
var chartStore;//图表数据
Ext.onReady(function(){
//使用当前服务器的文件,如果没有这句话,默认会去adobe的站点取
Ext.chart.Chart.CHART_URL = \'extjs/resources/charts.swf\';
var json_reader = new Ext.data.JsonReader( {
idProperty : \"pointName\",
root : \'rows\',
totalProperty : \"results\",
fields : [ {
name : \'pointName\'
}, {
name : \'faultCount\',
type : \"int\"
}]
});
//从后台取数据
chartStore = new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : \'loadColumnChart.do\',
method : \'POST\'
}),
reader : json_reader
});
chartStore.reload();
//柱状图面板
var columnchartPanel = new Ext.Panel({
border :false,
autoScroll : true,
//title : \'设备测点故障记录统计图\',
frame : true,
renderTo : document.body,
width: 800,
height: 240,
layout : \'fit\',
items : {
xtype : \'columnchart\', // 类型
store : chartStore,
xField : \'pointName\', // X轴取值
yField : \'faultCount\', // Y轴取值
yAxis : new Ext.chart.NumericAxis({
displayName : \'faultCount\'
//labelRenderer : Ext.util.Format.numberRenderer(\'0,0\')//关键问题是这句,我把这句注释了就正常了
}),
tipRenderer : function(chart, record) {
return record.data.pointName + \'的故障次数为:\' +
Ext.util.Format.number(record.data.faultCount, \'0,0\');
},
series : [ {//列
type : \'column\', //类型可以改变(线)line
displayName : \'faultCount\',
yField : \'faultCount\',
style : {
color : 0x99BBE8
}
}]
}
});
//柱状图面板
var leftPanel = new Ext.Panel({
title: \'柱状图\',
region:\'west\',
margins: \'5 0 0 0\',
cmargins: \'5 5 0 0\',
width: 850,
minSize: 700,
maxSize: 850,
autoScroll:true,//设为true则内容溢出的时候产生滚动条,默认为false
collapsible: true,//允许收缩
items: columnchartPanel
});
});
1.解决前:
2.解决后: