PS:因為在工作中經常會用的這個插件,所以做個日常歸納方便自己查閱,也幫助大家更快速的解決關於這個插件的各種問題和需要的樣式,希望也能幫助大家,謝謝,如有雷同純屬巧合,慢慢完善中。
因为公司需求要在一个页面加载多个图表,如果一个id写一个图表的话,不知道要写多少代码,所以就开始简化代码之路;而且series里面的数据需要动态加载,我也不知道会加载多少数据,所以,能简化就简化吧,在此给大家分享一下,有什么问题或者错误的地方还请纠正,感谢大家。
解决思路分析
第一种办法:
1:首先的解决思路是,同时加载多个图表的话,必须要在ajax下面套一个for循环,然后循环整个charts
2:因为图表是根据id来分配放在那里的,所以,在json中要放一个专门放id的属性和属性值,也有其他办法,以后在完善吧!话不多说上代码~
3:我懒得写命名这些啦,大家看得懂就可以哟,取名字什么的最烦了,哈哈哈,见谅哈~~~
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<div id="container1" style="min-width:400px;height:400px"></div>
<div id="container2" style="min-width:400px;height:400px"></div>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/highcharts.js"></script>
<script>
$(document).ready(function() {
$.ajax({
type: "get",
url: "js/index.json",//加载json数据
dataType: "json",
async: true,
success: function(reDatea) {
for(var bigxh = 0; bigxh < reDatea.reDates.length; bigxh++) {
var reDate = reDatea.reDates[bigxh];
console.log(JSON.stringify(reDate.idd));
var ids = reDate.idd;
var chart = Highcharts.chart({
chart: {
renderTo: ids,
type: 'line'
},
title: {
text: '<span style="font-family:Arial">' + reDate.ChartName + '</span>'
},
subtitle: {
text: ''
},
xAxis: {
categories: reDate.XAxisName
},
yAxis: {
title: {
text: ''
}
},