通常在商业项目上,尽量只选择一个库,以减少成本。但如果只是用于非盈利项目上,那么,可以把两者结合起来,既可以用到 extjs 强大的类管理,又可以用到 highcharts 强大的图像功能。各取两者的优势,也是一种不错的使用办法哦。
<link rel="stylesheet" type="text/css" href="../ext-4.1.1a/resources/css/ext-all.css"> <script type="text/javascript" src="../ext-4.1.1a/ext-debug.js"></script> <script type="text/javascript" src="../jquery-1.11.1.min.js"></script> <script type="text/javascript" src="../Highcharts-4.0.4/js/highcharts.js"></script> <script type="text/javascript" src="app.js"></script>
// extjs 的路径配置
Ext.Loader.setConfig({
enabled: true,
paths: {
jack : 'app/jack'
}
});
// highchart 的全局配置
Highcharts.setOptions({
global: {
useUTC: false
},
// colors: {
// },
// lang: {
// },
chart: {
animation: false
}
});Ext.define('jack.view.TemperatureHC', {
extend: 'Ext.panel.Panel',
config: {
panelTitle: null,
chartTitle: null
},
requires: [
'Ext.panel.Panel'
],
highchart: null,
constructor: function (config) {
this.initConfig(config);
this.callParent(arguments);
},
initComponent: function() {
var me = this;
if (me.panelTitle) {
me.title = me.panelTitle;
}
this.callParent(arguments);
},
afterComponentLayout: function(width, height, oldWidth, oldHeight) {
var me = this;
var chartId = me.id + "-body";
me.highchart = new Highcharts.Chart({
chart: {
renderTo: chartId,
animation: false
},
title: {
text: me.chartTitle
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun','Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
yAxis: {
title: {
text: 'Temperature (°C)'
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
},
tooltip: {
valueSuffix: '°C'
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth: 0
},
series: [{
name: 'Tokyo',
data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
}, {
name: 'New York',
data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5]
}, {
name: 'Berlin',
data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
}, {
name: 'London',
data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
}]
});
}
});Ext.require([
'Ext.container.Container',
'jack.view.TemperatureHC'
]);
var pageContainer = null;
Ext.onReady(function () {
pageContainer = Ext.create('jack.view.TemperatureHC', {
id: 'htContainer',
width: 800,
height: 300,
panelTitle: '今年温度',
renderTo: Ext.getBody()
});
});原文:http://blog.csdn.net/lvye1221/article/details/42063711