|
@@ -0,0 +1,337 @@
|
|
|
+var randomDataLength = 10000;
|
|
|
+var randomData = (function (){
|
|
|
+ var l = [];
|
|
|
+ var len = randomDataLength;
|
|
|
+ while(len--) {
|
|
|
+ l.push(Math.round(Math.random()* 1000));
|
|
|
+ }
|
|
|
+ return l;
|
|
|
+})();
|
|
|
+
|
|
|
+function option(chartType, n) {
|
|
|
+ var opt = {
|
|
|
+ animation:false,
|
|
|
+ title : {
|
|
|
+ text: chartType + '性能测试',
|
|
|
+ subtext: '自动生成' + n + '数据'
|
|
|
+ },
|
|
|
+ tooltip : {
|
|
|
+ trigger: 'axis'
|
|
|
+ },
|
|
|
+ legend: {
|
|
|
+ data:['性能测试']
|
|
|
+ },
|
|
|
+ toolbox: {
|
|
|
+ show : true,
|
|
|
+ feature : {
|
|
|
+ mark : {show: true},
|
|
|
+ //dataZoom : {show: true},
|
|
|
+ dataView : {show: true, readOnly: false},
|
|
|
+ magicType : {show: true, type: ['line', 'bar']},
|
|
|
+ restore : {show: true},
|
|
|
+ saveAsImage : {show: true}
|
|
|
+ }
|
|
|
+ },
|
|
|
+ dataRange: {
|
|
|
+ min: 0,
|
|
|
+ max: 1000,
|
|
|
+ calculable : true,
|
|
|
+ color: ['orangered','yellow','lightskyblue']
|
|
|
+ },
|
|
|
+ series : [
|
|
|
+ {
|
|
|
+ name:'性能测试',
|
|
|
+ type: chartType,
|
|
|
+ mapType: 'world',
|
|
|
+ roam: true,
|
|
|
+ large:true,
|
|
|
+ data: function (){
|
|
|
+ switch(chartType) {
|
|
|
+ case 'scatter' :
|
|
|
+ return scatterData(n);
|
|
|
+ case 'k' :
|
|
|
+ return kData(n);
|
|
|
+ case 'radar' :
|
|
|
+ return radarData(n);
|
|
|
+ case 'pie' :
|
|
|
+ return pieData(n);
|
|
|
+ case 'map' :
|
|
|
+ return mapData(n);
|
|
|
+ default :
|
|
|
+ var list = [];
|
|
|
+ for (var i = 1; i <= n; i++) {
|
|
|
+ list.push({
|
|
|
+ value : randomData[i % randomDataLength],
|
|
|
+ name : i
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ };
|
|
|
+ if (chartType == 'line'
|
|
|
+ || chartType == 'bar'
|
|
|
+ || chartType == 'k'
|
|
|
+ ) {
|
|
|
+ opt.xAxis = [
|
|
|
+ {
|
|
|
+ type : 'category',
|
|
|
+ data : function (){
|
|
|
+ var list = [];
|
|
|
+ for (var i = 1; i <= n; i++) {
|
|
|
+ list.push(i);
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }()
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ opt.yAxis = [
|
|
|
+ {
|
|
|
+ type : 'value'
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ else if (chartType == 'scatter') {
|
|
|
+ opt.xAxis = [
|
|
|
+ {
|
|
|
+ type : 'value'
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ opt.yAxis = [
|
|
|
+ {
|
|
|
+ type : 'value'
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ else if (chartType == 'radar') {
|
|
|
+ opt.polar = [
|
|
|
+ {
|
|
|
+ indicator : [
|
|
|
+ { text: '1', max: 1000},
|
|
|
+ { text: '2', max: 1000},
|
|
|
+ { text: '3', max: 1000},
|
|
|
+ { text: '4', max: 1000},
|
|
|
+ { text: '3', max: 1000}
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ else if (chartType == 'chord') {
|
|
|
+ opt.series = chordSeries();
|
|
|
+ }
|
|
|
+ return opt;
|
|
|
+}
|
|
|
+
|
|
|
+function scatterData(n){
|
|
|
+ var list = [];
|
|
|
+ for (var i = 1; i <= n; i++) {
|
|
|
+ list.push([
|
|
|
+ i , randomData[i % randomDataLength]
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+}
|
|
|
+function kData(n){
|
|
|
+ var list = [];
|
|
|
+ for (var i = 1; i <= n; i++) {
|
|
|
+ list.push([
|
|
|
+ randomData[i % randomDataLength],
|
|
|
+ randomData[(i+1) % randomDataLength],
|
|
|
+ randomData[(i+2) % randomDataLength],
|
|
|
+ randomData[(i+3) % randomDataLength]
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+}
|
|
|
+
|
|
|
+function radarData(n){
|
|
|
+ var list = [];
|
|
|
+ n = n > 200 ? 200 : n;
|
|
|
+ for (var i = 1; i <= n; i++) {
|
|
|
+ list.push({
|
|
|
+ value : [
|
|
|
+ randomData[i % randomDataLength],
|
|
|
+ randomData[(i+1) % randomDataLength],
|
|
|
+ randomData[(i+2) % randomDataLength],
|
|
|
+ randomData[(i+3) % randomDataLength],
|
|
|
+ randomData[(i+4) % randomDataLength]
|
|
|
+ ],
|
|
|
+ name : i
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+}
|
|
|
+
|
|
|
+function pieData(n){
|
|
|
+ var list = [];
|
|
|
+ n = n > 200 ? 200 : n;
|
|
|
+ for (var i = 1; i <= n; i++) {
|
|
|
+ list.push({
|
|
|
+ value : randomData[i % randomDataLength],
|
|
|
+ name : i
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+}
|
|
|
+
|
|
|
+function chordSeries() {
|
|
|
+ return [
|
|
|
+ {
|
|
|
+ "name": "性能测试",
|
|
|
+ "type": "chord",
|
|
|
+ "showScaleText": false,
|
|
|
+ "data": [
|
|
|
+ {"name": "美国"},
|
|
|
+ {"name": "叙利亚反对派"},
|
|
|
+ {"name": "阿萨德"},
|
|
|
+ {"name": "伊朗"},
|
|
|
+ {"name": "塞西"},
|
|
|
+ {"name": "哈马斯"},
|
|
|
+ {"name": "以色列"},
|
|
|
+ {"name": "穆斯林兄弟会"},
|
|
|
+ {"name": "基地组织"},
|
|
|
+ {"name": "俄罗斯"},
|
|
|
+ {"name": "黎巴嫩什叶派"},
|
|
|
+ {"name": "土耳其"},
|
|
|
+ {"name": "卡塔尔"},
|
|
|
+ {"name": "沙特"},
|
|
|
+ {"name": "黎巴嫩逊尼派"}
|
|
|
+ ],
|
|
|
+ "matrix": [
|
|
|
+ [0,100,0,0,0,0,100,0,0,0,0,0,0,0,0],
|
|
|
+ [10,0,0,0,0,10,10,0,10,0,0,10,10,10,10],
|
|
|
+ [0,0,0,10,0,0,0,0,0,10,10,0,0,0,0],
|
|
|
+ [0,0,100,0,0,100,0,0,0,0,100,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,10,0],
|
|
|
+ [0,100,0,10,0,0,0,0,0,0,0,0,10,0,0],
|
|
|
+ [10,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,10,10,0,0],
|
|
|
+ [0,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,100,10,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,100,0,0,0,0,0,100,0,0,0,0,0,0,0],
|
|
|
+ [0,100,0,0,0,100,0,100,0,0,0,0,0,0,0],
|
|
|
+ [0,100,0,0,100,0,0,0,0,0,0,0,0,0,100],
|
|
|
+ [0,100,0,0,0,0,0,0,0,0,0,0,0,10,0]
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "name": "反对",
|
|
|
+ "type": "chord",
|
|
|
+ "showScaleText": false,
|
|
|
+ "data": [
|
|
|
+ {"name": "美国"},
|
|
|
+ {"name": "叙利亚反对派"},
|
|
|
+ {"name": "阿萨德"},
|
|
|
+ {"name": "伊朗"},
|
|
|
+ {"name": "塞西"},
|
|
|
+ {"name": "哈马斯"},
|
|
|
+ {"name": "以色列"},
|
|
|
+ {"name": "穆斯林兄弟会"},
|
|
|
+ {"name": "基地组织"},
|
|
|
+ {"name": "俄罗斯"},
|
|
|
+ {"name": "黎巴嫩什叶派"},
|
|
|
+ {"name": "土耳其"},
|
|
|
+ {"name": "卡塔尔"},
|
|
|
+ {"name": "沙特"},
|
|
|
+ {"name": "黎巴嫩逊尼派"}
|
|
|
+ ],
|
|
|
+ "matrix": [
|
|
|
+ [0,0,100,100,0,100,0,0,100,0,0,0,0,0,0],
|
|
|
+ [0,0,0,10,0,0,0,0,0,10,10,0,0,0,0],
|
|
|
+ [10,0,0,0,0,0,10,10,10,0,0,10,10,0,10],
|
|
|
+ [10,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,10,0,100,0,0,0,10,10,0,0],
|
|
|
+ [10,0,0,0,100,0,10,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,100,0,0,100,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,100,0,10,0,0,0,0,0,0,0,0,10,0],
|
|
|
+ [10,0,100,0,0,0,0,0,0,0,0,0,0,100,0],
|
|
|
+ [0,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,100,0,100,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,100,0,100,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,100,10,0,0,0,0,0,0],
|
|
|
+ [0,0,100,0,0,0,0,0,0,0,0,0,0,0,0]
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "name": "未表态",
|
|
|
+ "type": "chord",
|
|
|
+ "showScaleText": false,
|
|
|
+ "data": [
|
|
|
+ {"name": "美国"},
|
|
|
+ {"name": "叙利亚反对派"},
|
|
|
+ {"name": "阿萨德"},
|
|
|
+ {"name": "伊朗"},
|
|
|
+ {"name": "塞西"},
|
|
|
+ {"name": "哈马斯"},
|
|
|
+ {"name": "以色列"},
|
|
|
+ {"name": "穆斯林兄弟会"},
|
|
|
+ {"name": "基地组织"},
|
|
|
+ {"name": "俄罗斯"},
|
|
|
+ {"name": "黎巴嫩什叶派"},
|
|
|
+ {"name": "土耳其"},
|
|
|
+ {"name": "卡塔尔"},
|
|
|
+ {"name": "沙特"},
|
|
|
+ {"name": "黎巴嫩逊尼派"}
|
|
|
+ ],
|
|
|
+ "matrix": [
|
|
|
+ [0,0,0,0,100,0,0,100,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [10,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [10,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
+ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ];
|
|
|
+}
|
|
|
+
|
|
|
+function mapData(n) {
|
|
|
+ var countryList = [
|
|
|
+ 'Afghanistan','Angola','Albania','United Arab Emirates','Argentina','Armenia',
|
|
|
+ 'French Southern and Antarctic Lands','Australia','Austria','Azerbaijan','Burundi',
|
|
|
+ 'Belgium','Benin','Burkina Faso','Bangladesh','Bulgaria','The Bahamas',
|
|
|
+ 'Bosnia and Herzegovina','Belarus','Belize','Bermuda','Bolivia','Brazil','Brunei',
|
|
|
+ 'Bhutan','Botswana','Central African Republic','Canada','Switzerland','Chile','China',
|
|
|
+ 'Ivory Coast','Cameroon','Democratic Republic of the Congo','Republic of the Congo',
|
|
|
+ 'Colombia','Costa Rica','Cuba','Northern Cyprus','Cyprus','Czech Republic','Germany',
|
|
|
+ 'Djibouti','Denmark','Dominican Republic','Algeria','Ecuador','Egypt','Eritrea','Spain',
|
|
|
+ 'Estonia','Ethiopia','Finland','Fiji','Falkland Islands','France','Gabon','United Kingdom',
|
|
|
+ 'Georgia','Ghana','Guinea','Gambia','Guinea Bissau','Equatorial Guinea','Greece',
|
|
|
+ 'Greenland','Guatemala','French Guiana','Guyana','Honduras','Croatia','Haiti','Hungary',
|
|
|
+ 'Indonesia','India','Ireland','Iran','Iraq','Iceland','Israel','Italy','Jamaica','Jordan',
|
|
|
+ 'Japan','Kazakhstan','Kenya','Kyrgyzstan','Cambodia','South Korea','Kosovo','Kuwait',
|
|
|
+ 'Laos','Lebanon','Liberia','Libya','Sri Lanka','Lesotho','Lithuania','Luxembourg','Latvia',
|
|
|
+ 'Morocco','Moldova','Madagascar','Mexico','Macedonia','Mali','Myanmar','Montenegro',
|
|
|
+ 'Mongolia','Mozambique','Mauritania','Malawi','Malaysia','Namibia','New Caledonia','Niger',
|
|
|
+ 'Nigeria','Nicaragua','Netherlands','Norway','Nepal','New Zealand','Oman','Pakistan',
|
|
|
+ 'Panama','Peru','Philippines','Papua New Guinea','Poland','Puerto Rico','North Korea',
|
|
|
+ 'Portugal','Paraguay','Qatar','Romania','Russia','Rwanda','Western Sahara','Saudi Arabia',
|
|
|
+ 'Sudan','South Sudan','Senegal','Solomon Islands','Sierra Leone','El Salvador','Somaliland',
|
|
|
+ 'Somalia','Republic of Serbia','Suriname','Slovakia','Slovenia','Sweden','Swaziland',
|
|
|
+ 'Syria','Chad','Togo','Thailand','Tajikistan','Turkmenistan','East Timor',
|
|
|
+ 'Trinidad and Tobago','Tunisia','Turkey','United Republic of Tanzania','Uganda','Ukraine',
|
|
|
+ 'Uruguay','United States of America','Uzbekistan','Venezuela','Vietnam','Vanuatu',
|
|
|
+ 'West Bank','Yemen','South Africa','Zambia','Zimbabwe'
|
|
|
+ ];
|
|
|
+ var list = [];
|
|
|
+ for (var i = 0, l = countryList.length; i < l; i ++) {
|
|
|
+ list.push({
|
|
|
+ name : countryList[i],
|
|
|
+ value : randomData[(i + n) % randomDataLength]
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+}
|