Extjs4整合echarts问题

f504501983 2014-07-23 09:15:41
extjs4整合echarts遇到了几个问题,需要在这里请教下。
1.calculable设为false,理论上应该是图表不可拖拽,我设置后,数据点都不显示了,鼠标移动到有数据的区域内,数据就显示了,移开就又不显示了。(如果数据源固定就可以,我通过ext的Ajax请求就不行)
2.比如我查询1到10号的数据,然后在查询2号到10号的数据,X轴坐标从2号到10号列出来后,又会重复列出1到10号的数据。
以下是我的代码,希望各位能够提供下帮助。


Ext.define("xxx.xxx.historyData.HistoryDataCharts", {
extend : "Ext.panel.Panel",
initComponent : function() {
var me = this;
var dataType = 0;
var title = requestParams.title;
var queryBegin = null;
var queryEnd = null;
// var interval = null;
var myChart;
var option;
var drawChart = function(object) {
option = {
title : {
text : title + "趋势图",
x : 'center'
},
tooltip : {
formatter : function(params, ticket, callback) {
var res = '<b>监测时间 :</b>' + params[0][1];
for (var i = 0, l = params.length; i < l; i++) {
res += '<br/>' + params[i][0] + ' : '
+ params[i][2];
}
return res;
},
trigger : 'axis'
},
legend : {
data : [],
y : 40
},
toolbox : {
show : true,
feature : {
mark : {
show : true
},
dataView : {
show : true,
readOnly : false
},
magicType : {
show : true,
title : {
line : '折线图',
bar : '柱形图'
},
type : ['line', 'bar']
},
restore : {
show : true
},
saveAsImage : {
show : true
},
dataZoom : {
show : true
}
}
},
// 是否启用拖拽图表效果
calculable : false,
xAxis : [],
yAxis : [{
type : 'value',
splitArea : {
show : true
}
}],
series : []
};
Ext.Ajax.request({
url : "xxx/xxx/ByCondition",
method : "POST",
params : {

'queryBegin' : queryBegin,
'queryEnd' : queryEnd,
'dataType' : dataType,
'isAsc' : 1
},
callback : function(gd, success, resp) {
try {
if (success) {
var rst = Ext.decode(resp.responseText);
if (rst.success) {
var data = rst.data;
var categories = data.categories;
var arr = data.seriesObj;
Ext.Array.each(arr, function(v) {
var name = v["name"];
var lines = v["data"];
option.legend.data
.push(name);
option.series.push({
name : name,
type : 'line',
smooth : true,
data : lines
});
});
option.xAxis.push({
type : 'category',
splitLine : false,
axisLabel : {
interval : 40,
margin : 2,
rotate : 30
},
data : categories
});
myChart.setOption(option);
return;
}
}
Ext.tools.tips("获取数据失败!");
} catch (e) {
Ext.tools.tips("获取数据失败:" + e);
}

}
});
}
Ext.apply(me, {
html : ['<div id="main" style="width:' + (appWidth - 20)
+ 'px;height:' + (appHeight - 80) + 'px;"></div>'],
loadRtData : function(object) {
queryBegin = object.queryBegin;
queryEnd = object.queryEnd;
dataType = object.dataType;
drawChart();
}
});
me.on("render", function() {
require(['echarts', 'echarts/chart/bar',
'echarts/chart/line'], function(ec) {
myChart = ec.init(document
.getElementById('main'));
});
});
me.callParent();
}
});
...全文
1143 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
安琪拉的博客 2016-08-31
  • 打赏
  • 举报
回复
http://blog.csdn.net/zhengwangzw/article/details/52385966 看这篇我写的文章
Go 旅城通票 2016-04-04
  • 打赏
  • 举报
回复
congcongsweet 2014-09-01
  • 打赏
  • 举报
回复
我最近用这 能留个联系方式 有几个问题请教
f504501983 2014-08-09
  • 打赏
  • 举报
回复
引用 3 楼 Chen_yanxia 的回复:
[quote=引用 2 楼 Chen_yanxia 的回复:] 出什么问题了 什么错误?
不好意思 没看到上面写的问题 1、你可以calculable : false, 把这个删掉试试看 2、你查完1-10号的数据 这时候echars的data已经填充了,你再查2-10的时候 这个时候要清空data 再填充 不然它会直接再放入一个data进去[/quote] 谢谢你的回复,我当时去掉1,是不可以拖拽了,但是数据点同时也不显示了。第二个清空是有专门的方法还是清空对象集合?我的var data每次访问返回后都是新初始化的,应该相当于清空吧
浮生若梦 2014-07-29
  • 打赏
  • 举报
回复
引用 4 楼 yougucao379548695 的回复:
我的是echarts引入extjs3.4我已经引入了文件<script src="echarts/js/echarts-plain.js"></script> 怎么还报echarts未定义,楼上的知道什么情况吗?
是不是引入的先后顺序的问题?
Fate- 2014-07-28
  • 打赏
  • 举报
回复
引用 2 楼 Chen_yanxia 的回复:
出什么问题了 什么错误?
不好意思 没看到上面写的问题 1、你可以calculable : false, 把这个删掉试试看 2、你查完1-10号的数据 这时候echars的data已经填充了,你再查2-10的时候 这个时候要清空data 再填充 不然它会直接再放入一个data进去
Fate- 2014-07-28
  • 打赏
  • 举报
回复
出什么问题了 什么错误?
f504501983 2014-07-28
  • 打赏
  • 举报
回复
有人知道么??
yougucao379548695 2014-07-28
  • 打赏
  • 举报
回复
我的是echarts引入extjs3.4我已经引入了文件<script src="echarts/js/echarts-plain.js"></script> 怎么还报echarts未定义,楼上的知道什么情况吗?

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧