路徑:D:\ireport365\ireport365.war\WEB-INF\pages\enduser\designer\index.jsp
添加
` _scripts.push({url: "http://echarts.baidu.com/resource/echarts-gl-latest/dist/echarts-gl.min.js?v="+updateVersion});`
ps 正式上線將換成本地文件 目前是cdn資源
如圖:

路徑:D:\ireport365\ireport365.war\js\enduser\designer\vs-component-echarts.js
一 添加 3d地圖屬性 js文件的最下面
~~~
{
name: "",
type: "echarts3dMap",
coverImage: contextPath + "/images/componenttypes/" + locale + "/widget/zh_baiduMap.png?v=3",
coverImageWidth: "50%",
tip: "echarts3D柱狀地圖"
}
~~~
如下圖:

二 設置組件的默認大小
~~~
else if (b.type === "echarts3dMap") {
b.sizeX = 4;
b.sizeY = 18
}
~~~
如下圖

三 添加城市坐標
~~~
// 3d系列坐標
let geoCoordMap3d = {
"海門": [121.15, 31.89],
"鄂爾多斯": [109.781327, 39.608266],
"招遠": [120.38, 37.35],
"舟山": [122.207216, 29.985295],
"齊齊哈爾": [123.97, 47.33],
"鹽城": [120.13, 33.38],
"赤峰": [118.87, 42.28],
"青島": [120.33, 36.07],
"乳山": [121.52, 36.89],
"金昌": [102.188043, 38.520089],
"泉州": [118.58, 24.93],
"萊西": [120.53, 36.86],
"日照": [119.46, 35.42],
"膠南": [119.97, 35.88],
"南通": [121.05, 32.08],
"拉薩": [91.11, 29.97],
"云浮": [112.02, 22.93],
"梅州": [116.1, 24.55],
"文登": [122.05, 37.2],
"上海": [121.48, 31.22],
"攀枝花": [101.718637, 26.582347],
"威海": [122.1, 37.5],
"承德": [117.93, 40.97],
"廈門": [118.1, 24.46],
"汕尾": [115.375279, 22.786211],
"潮州": [116.63, 23.68],
"丹東": [124.37, 40.13],
"太倉": [121.1, 31.45],
"曲靖": [103.79, 25.51],
"煙臺": [121.39, 37.52],
"福州": [119.3, 26.08],
"瓦房店": [121.979603, 39.627114],
"即墨": [120.45, 36.38],
"撫順": [123.97, 41.97],
"玉溪": [102.52, 24.35],
"張家口": [114.87, 40.82],
"陽泉": [113.57, 37.85],
"萊州": [119.942327, 37.177017],
"湖州": [120.1, 30.86],
"汕頭": [116.69, 23.39],
"昆山": [120.95, 31.39],
"寧波": [121.56, 29.86],
"湛江": [110.359377, 21.270708],
"揭陽": [116.35, 23.55],
"榮成": [122.41, 37.16],
"連云港": [119.16, 34.59],
"葫蘆島": [120.836932, 40.711052],
"常熟": [120.74, 31.64],
"東莞": [113.75, 23.04],
"河源": [114.68, 23.73],
"淮安": [119.15, 33.5],
"泰州": [119.9, 32.49],
"南寧": [108.33, 22.84],
"營口": [122.18, 40.65],
"惠州": [114.4, 23.09],
"江陰": [120.26, 31.91],
"蓬萊": [120.75, 37.8],
"韶關": [113.62, 24.84],
"嘉峪關": [98.289152, 39.77313],
"廣州": [113.23, 23.16],
"延安": [109.47, 36.6],
"太原": [112.53, 37.87],
"清遠": [113.01, 23.7],
"中山": [113.38, 22.52],
"昆明": [102.73, 25.04],
"壽光": [118.73, 36.86],
"盤錦": [122.070714, 41.119997],
"長治": [113.08, 36.18],
"深圳": [114.07, 22.62],
"珠海": [113.52, 22.3],
"宿遷": [118.3, 33.96],
"咸陽": [108.72, 34.36],
"銅川": [109.11, 35.09],
"平度": [119.97, 36.77],
"佛山": [113.11, 23.05],
"海口": [110.35, 20.02],
"江門": [113.06, 22.61],
"章丘": [117.53, 36.72],
"肇慶": [112.44, 23.05],
"大連": [121.62, 38.92],
"臨汾": [111.5, 36.08],
"吳江": [120.63, 31.16],
"石嘴山": [106.39, 39.04],
"沈陽": [123.38, 41.8],
"蘇州": [120.62, 31.32],
"茂名": [110.88, 21.68],
"嘉興": [120.76, 30.77],
"長春": [125.35, 43.88],
"膠州": [120.03336, 36.264622],
"銀川": [106.27, 38.47],
"張家港": [120.555821, 31.875428],
"三門峽": [111.19, 34.76],
"錦州": [121.15, 41.13],
"南昌": [115.89, 28.68],
"柳州": [109.4, 24.33],
"三亞": [109.511909, 18.252847],
"自貢": [104.778442, 29.33903],
"吉林": [126.57, 43.87],
"陽江": [111.95, 21.85],
"瀘州": [105.39, 28.91],
"西寧": [101.74, 36.56],
"宜賓": [104.56, 29.77],
"呼和浩特": [111.65, 40.82],
"成都": [104.06, 30.67],
"大同": [113.3, 40.12],
"鎮江": [119.44, 32.2],
"桂林": [110.28, 25.29],
"張家界": [110.479191, 29.117096],
"宜興": [119.82, 31.36],
"北海": [109.12, 21.49],
"西安": [108.95, 34.27],
"金壇": [119.56, 31.74],
"東營": [118.49, 37.46],
"牡丹江": [129.58, 44.6],
"遵義": [106.9, 27.7],
"紹興": [120.58, 30.01],
"揚州": [119.42, 32.39],
"常州": [119.95, 31.79],
"濰坊": [119.1, 36.62],
"重慶": [106.54, 29.59],
"臺州": [121.420757, 28.656386],
"南京": [118.78, 32.04],
"濱州": [118.03, 37.36],
"貴陽": [106.71, 26.57],
"無錫": [120.29, 31.59],
"本溪": [123.73, 41.3],
"克拉瑪依": [84.77, 45.59],
"渭南": [109.5, 34.52],
"馬鞍山": [118.48, 31.56],
"寶雞": [107.15, 34.38],
"焦作": [113.21, 35.24],
"句容": [119.16, 31.95],
"北京": [116.46, 39.92],
"徐州": [117.2, 34.26],
"衡水": [115.72, 37.72],
"包頭": [110, 40.58],
"綿陽": [104.73, 31.48],
"烏魯木齊": [87.68, 43.77],
"棗莊": [117.57, 34.86],
"杭州": [120.19, 30.26],
"淄博": [118.05, 36.78],
"鞍山": [122.85, 41.12],
"溧陽": [119.48, 31.43],
"庫爾勒": [86.06, 41.68],
"安陽": [114.35, 36.1],
"開封": [114.35, 34.79],
"濟南": [117, 36.65],
"德陽": [104.37, 31.13],
"溫州": [120.65, 28.01],
"九江": [115.97, 29.71],
"邯鄲": [114.47, 36.6],
"臨安": [119.72, 30.23],
"蘭州": [103.73, 36.03],
"滄州": [116.83, 38.33],
"臨沂": [118.35, 35.05],
"南充": [106.110698, 30.837793],
"天津": [117.2, 39.13],
"富陽": [119.95, 30.07],
"泰安": [117.13, 36.18],
"諸暨": [120.23, 29.71],
"鄭州": [113.65, 34.76],
"哈爾濱": [126.63, 45.75],
"聊城": [115.97, 36.45],
"蕪湖": [118.38, 31.33],
"唐山": [118.02, 39.63],
"平頂山": [113.29, 33.75],
"邢臺": [114.48, 37.05],
"德州": [116.29, 37.45],
"濟寧": [116.59, 35.38],
"荊州": [112.239741, 30.335165],
"宜昌": [111.3, 30.7],
"義烏": [120.06, 29.32],
"麗水": [119.92, 28.45],
"洛陽": [112.44, 34.7],
"秦皇島": [119.57, 39.95],
"株洲": [113.16, 27.83],
"石家莊": [114.48, 38.03],
"萊蕪": [117.67, 36.19],
"常德": [111.69, 29.05],
"保定": [115.48, 38.85],
"湘潭": [112.91, 27.87],
"金華": [119.64, 29.12],
"岳陽": [113.09, 29.37],
"長沙": [113, 28.21],
"衢州": [118.88, 28.97],
"廊坊": [116.7, 39.53],
"菏澤": [115.480656, 35.23375],
"合肥": [117.27, 31.86],
"武漢": [114.31, 30.52],
"大慶": [125.03, 46.58],
"安徽": [117.17, 31.52],
"澳門": [115.07, 21.33],
"北京": [116.24, 39.55],
"福建": [119.18, 26.05],
"甘肅": [103.51, 36.04],
"廣東": [113.14, 23.08],
"廣西": [108.19, 22.48],
"貴州": [106.42, 26.35],
"海南": [110.2, 20.02],
"河北": [114.3, 38.02],
"河南": [11340, 34.46],
"黑龍江": [126.36, 45.44],
"湖北": [114.17, 30.35],
"湖南": [112.59, 28.12],
"吉林": [125.19, 43.54],
"江蘇": [118.46, 32.03],
"江西": [115.55, 28.4],
"遼寧": [123.25, 41.48],
"內蒙古": [111.41, 40.48],
"寧夏": [106.16, 38.27],
"青海": [101.48, 36.38],
"山東": [117, 36.4],
"山西": [112.33, 37.54],
"陜西": [108.57, 34.17],
"上海": [121.29, 31.14],
"四川": [104.04, 30.4],
"臺灣": [121.3, 25.03],
"天津": [117.12, 39.02],
"西藏": [91.08, 29.39],
"香港": [115.12, 21.23],
"新疆": [87.36, 43.45],
"云南": [102.42, 25.04],
"浙江": [120.1, 30.16],
"重慶": [106.33, 29.35]
};
~~~
四 添加3D地圖對象 optiion對象
~~~
// 模板
china3DMapoptionTemplate = {
title: {
show:false
},
tooltip: {
show: true,
// formatter:(params)=>{
// let data = "地區:"+params.name + "<br/>"+"值:"+ params.value[2]+"<br/>"+"地理坐標:[" + params.value[0]+","+params.value[1] +"]";
// return data;
// },
formatter: "{a} <br/>{b} : {c}"
},
visualMap: [{
show:false,
type: 'continuous',
seriesIndex: 0,
text: ['bar3D'],
calculable: true,
max: 800,
min:0,
inRange: {
color: ['#c7a800', '#ee7d31', '#ff0000']
}
}],
geo3D: {
map: 'china',
roam: true,
itemStyle: {
areaColor: '#034179',
opacity: 1,
borderWidth: 0.4,
borderColor: '#0b90ee'
},
label: {
show: true,
textStyle: {
color: '#fff', //地圖初始化區域字體顏色
fontSize: 8,
opacity: 1,
backgroundColor: 'rgba(0,23,11,0)'
},
},
emphasis: { //當鼠標放上去 地區區域是否顯示名稱
label: {
show: true,
textStyle: {
color: '#ff8800',
fontSize: 3,
backgroundColor: 'rgba(0,23,11,0)'
}
}
},
//shading: 'lambert',
light: { //光照陰影
main: {
color: '#fff', //光照顏色
intensity: 1.2, //光照強度
//shadowQuality: 'high', //陰影亮度
shadow: false, //是否顯示陰影
alpha: 55,
beta: 10
},
ambient: {
intensity: 0.3
}
}
},
series: [
//柱狀圖
{
name: 'bar3D',
type: "bar3D",
coordinateSystem: 'geo3D',
barSize: 1, //柱子粗細
shading: 'lambert',
opacity: 1,
bevelSize: 0.2,
label: {
show: false,
formatter: '{b}'
},
data: '',
},
]
}
// 結束end
~~~
三 四 如下是圖

五 在refreshChartView函數里添加
1.先添加處理數據函數
~~~
// 3d柱狀圖處理數據函數
var internalRefreshecharts3dMapModelData = function(){
// 處理數據函數
var convertData3d = function(data) {
var res = [];
for (var i = 0; i < data.length; i++) {
var geoCoord = geoCoordMap3d[data[i].name];
if (geoCoord) {
res.push({
name: data[i].name,
value: geoCoord.concat(data[i].value.toString())
});
}
}
console.log(res)
return res;
};
var option = component.config.chartConfig;
var dimensions = component.config.datasourceConfig.dimensions;
var measures = component.config.datasourceConfig.measures;
var data = component.context.data;
var chartData = [];
var chartDataMap = {};
var measureIdx = 0;
if (component.config.receiveMeasureLink != null && component.config.receiveMeasureLink === true) {
var newMeasures = scope.getSelectedLinkMeasure(component, component.config.datasourceConfig.measures);
for (var i = 0; i < measures.length; i++) {
if (newMeasures[i] != null) {
measureIdx = i;
break
}
}
}
for (var i = 0; i < data.length; i++) {
var value = data[i][measures[measureIdx].name];
var name = factory._internalFindKvValue(component, data[i][dimensions[dimensions.length - 1].name]);
chartData.push({
name: name,
value: value
});
var dataMap = chartDataMap[data[i][dimensions[dimensions.length - 1].name]];
if (dataMap == null) {
dataMap = {};
chartDataMap[name] = dataMap
}
for (var m = 0; m < measures.length; m++) {
dataMap[measures[m].name] = data[i][measures[m].name]
}
}
option.series[0].name = measures[measureIdx].label;
console.log(measures[measureIdx].label)
if (component.config["measureAlias_" + measureIdx] != null && component.config["measureAlias_" + measureIdx].length > 0) {
option.series[0].name = component.config["measureAlias_" + measureIdx]
}
option.series[0].seriesIndex = measureIdx;
// 度量設置
option.tooltip.formatter = function (p) {
// if (component.config.tooltipStatus != null && component.config.tooltipStatus === "hide") {
// return ""
// }
var seriesIndex = option.series[0].seriesIndex;
if (!VSUtils.isEmpty(component.config.tooltipValueScript)) {
try {
var f = eval("(function(name, params, VSUtils){ " + Base64.decode(component.config.tooltipValueScript) + "})");
return f.call(null, p.name, p, VSUtils)
} catch (e) {
console.log(e)
}
}
var unit = component.config["unit_" + seriesIndex];
if (unit == null) {
unit = ""
}
// console.log(p.value[2])
var displayValue = $vsUtils.processValue(p.value[2], component.config["digit_" + seriesIndex]);
var str = p.name + "<br/>" + p.seriesName + ": " + $vsUtils.comdifyValue(displayValue) + "" + unit;
return str
};
option.series[0].data = convertData3d(chartData);
component.context.chart.setOption(option, true)
}
~~~
2. 在 switch 里添加 調用上面的方法
~~~
case "echarts3dMap":
internalRefreshecharts3dMapModelData();
break;
~~~
如下圖

六 在buildDataDescription方法里 > scope.$on(event_chartDimensionValueChange, function (s, event) {}) >
switch (component.type) {} 里添加如下代碼
~~~
case "echarts3dMap":
var dataIndex = -1;
// console.log(component.config.chartConfig)
var option = component.config.chartConfig;
console.log(option)
for (var i = 0; i < component.config.chartConfig.series[0].data.length; i++) {
if ("" + component.config.chartConfig.series[0].data[i].name === "" + event.source.value) {
console.log(component.config.chartConfig.series[0].data[i].name)
dataIndex = i;
break
}
}
console.log(dataIndex)
if (dataIndex < 0) {
component.context.chart.dispatchAction({
type: "hideTip"
});
return
}
if (dataIndex > -1) {
console.log(event.source.value)
component.context.chart.dispatchAction({
type: "showTip",
name: event.source.value,
seriesIndex: 0
})
}
break;
~~~
如下圖


七 在第六步的第二個 switch (component.type) {} 添加如下代碼
echarts 添加事件的方法
~~~
case "echarts3dMap":
component.context.chart.on("mouseover", function (param) {
if (component.config.datasourceConfig.measures == null || component.config.datasourceConfig.dimensions == null) {
return
}
var data = component.context.data;
var dataIndex = param.dataIndex;
var to = param.data.name;
if (to == null || param.value == null || param.value === "-") {
return
}
component.context.tooltipName = to;
scope.notifyDimensionValueChange(null, scope.getLastDimension(), to)
});
break;
~~~
八 在buildChartOption函數方法里 switch (component.type) {} 添加如下代碼
copy第二步寫的 option對象 和設置初始化的數據和初始化設置等等
~~~
case "echarts3dMap":
// 處理數據函數
var convertData3d = function(data) {
var res = [];
for (var i = 0; i < data.length; i++) {
var geoCoord = geoCoordMap3d[data[i].name];
if (geoCoord) {
res.push({
name: data[i].name,
value: geoCoord.concat(data[i].value)
});
}
}
// console.log(res)
return res;
};
option = angular.copy(china3DMapoptionTemplate);
option.series[0].data = convertData3d([{
name: "海門",
value: (Math.random() * 300).toFixed(2)
}, {
name: "鄂爾多斯",
value: (Math.random() * 300).toFixed(2)
}, {
name: "招遠",
value: (Math.random() * 300).toFixed(2)
}, {
name: "舟山",
value: (Math.random() * 300).toFixed(2)
}, {
name: "齊齊哈爾",
value: (Math.random() * 300).toFixed(2)
}, {
name: "鹽城",
value: (Math.random() * 300).toFixed(2)
}, {
name: "赤峰",
value: (Math.random() * 300).toFixed(2)
}, {
name: "青島",
value: (Math.random() * 300).toFixed(2)
}, {
name: "乳山",
value: (Math.random() * 200).toFixed(2)
}, {
name: "金昌",
value: (Math.random() * 200).toFixed(2)
}, {
name: "泉州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "萊西",
value: (Math.random() * 200).toFixed(2)
}, {
name: "日照",
value: (Math.random() * 300).toFixed(2)
}, {
name: "膠南",
value: (Math.random() * 300).toFixed(2)
}, {
name: "南通",
value: (Math.random() * 300).toFixed(2)
}, {
name: "拉薩",
value: (Math.random() * 300).toFixed(2)
}, {
name: "云浮",
value: (Math.random() * 300).toFixed(2)
}, {
name: "梅州",
value: (Math.random() * 300).toFixed(2)
}, {
name: "文登",
value: (Math.random() * 300).toFixed(2)
}, {
name: "上海",
value: (Math.random() * 300).toFixed(2)
}, {
name: "攀枝花",
value: (Math.random() * 200).toFixed(2)
}, {
name: "威海",
value: (Math.random() * 200).toFixed(2)
}, {
name: "承德",
value: (Math.random() * 200).toFixed(2)
}, {
name: "廈門",
value: (Math.random() * 200).toFixed(2)
}, {
name: "汕尾",
value: (Math.random() * 200).toFixed(2)
}, {
name: "潮州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "丹東",
value: (Math.random() * 200).toFixed(2)
}, {
name: "太倉",
value: (Math.random() * 200).toFixed(2)
}, {
name: "曲靖",
value: (Math.random() * 200).toFixed(2)
}, {
name: "煙臺",
value: (Math.random() * 200).toFixed(2)
}, {
name: "福州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "瓦房店",
value: (Math.random() * 200).toFixed(2)
}, {
name: "即墨",
value: (Math.random() * 200).toFixed(2)
}, {
name: "撫順",
value: (Math.random() * 200).toFixed(2)
}, {
name: "玉溪",
value: (Math.random() * 200).toFixed(2)
},
{
name: "寧波",
value: (Math.random() * 200).toFixed(2)
}, {
name: "湛江",
value: (Math.random() * 200).toFixed(2)
}, {
name: "揭陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "榮成",
value: (Math.random() * 200).toFixed(2)
}, {
name: "連云港",
value: (Math.random() * 200).toFixed(2)
}, {
name: "葫蘆島",
value: (Math.random() * 200).toFixed(2)
}, {
name: "常熟",
value: (Math.random() * 200).toFixed(2)
}, {
name: "東莞",
value: (Math.random() * 200).toFixed(2)
}, {
name: "河源",
value: (Math.random() * 200).toFixed(2)
}, {
name: "淮安",
value: (Math.random() * 200).toFixed(2)
}, {
name: "泰州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "南寧",
value: (Math.random() * 200).toFixed(2)
}, {
name: "營口",
value: (Math.random() * 200).toFixed(2)
}, {
name: "惠州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "江陰",
value: (Math.random() * 200).toFixed(2)
}, {
name: "蓬萊",
value: (Math.random() * 200).toFixed(2)
}, {
name: "韶關",
value: (Math.random() * 200).toFixed(2)
}, {
name: "嘉峪關",
value: (Math.random() * 200).toFixed(2)
}, {
name: "廣州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "延安",
value: (Math.random() * 200).toFixed(2)
}, {
name: "太原",
value: (Math.random() * 200).toFixed(2)
}, {
name: "清遠",
value: (Math.random() * 200).toFixed(2)
}, {
name: "中山",
value: (Math.random() * 200).toFixed(2)
}, {
name: "昆明",
value: (Math.random() * 200).toFixed(2)
}, {
name: "壽光",
value: (Math.random() * 200).toFixed(2)
}, {
name: "盤錦",
value: (Math.random() * 200).toFixed(2)
}, {
name: "長治",
value: (Math.random() * 300).toFixed(2)
}, {
name: "深圳",
value: (Math.random() * 200).toFixed(2)
}, {
name: "珠海",
value: (Math.random() * 200).toFixed(2)
}, {
name: "宿遷",
value: (Math.random() * 300).toFixed(2)
}, {
name: "咸陽",
value: (Math.random() * 300).toFixed(2)
}, {
name: "銅川",
value: (Math.random() * 300).toFixed(2)
}, {
name: "平度",
value: (Math.random() * 300).toFixed(2)
}, {
name: "佛山",
value: (Math.random() * 300).toFixed(2)
}, {
name: "海口",
value: (Math.random() * 300).toFixed(2)
}, {
name: "江門",
value: (Math.random() * 200).toFixed(2)
}, {
name: "章丘",
value: (Math.random() * 200).toFixed(2)
}, {
name: "肇慶",
value: (Math.random() * 300).toFixed(2)
}, {
name: "大連",
value: (Math.random() * 200).toFixed(2)
}, {
name: "臨汾",
value: (Math.random() * 300).toFixed(2)
}, {
name: "吳江",
value: (Math.random() * 200).toFixed(2)
}, {
name: "石嘴山",
value: (Math.random() * 200).toFixed(2)
}, {
name: "沈陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "蘇州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "茂名",
value: (Math.random() * 200).toFixed(2)
}, {
name: "嘉興",
value: (Math.random() * 200).toFixed(2)
}, {
name: "長春",
value: (Math.random() * 300).toFixed(2)
}, {
name: "膠州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "銀川",
value: (Math.random() * 200).toFixed(2)
}, {
name: "張家港",
value: (Math.random() * 200).toFixed(2)
}, {
name: "三門峽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "錦州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "南昌",
value: (Math.random() * 200).toFixed(2)
}, {
name: "柳州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "三亞",
value: (Math.random() * 300).toFixed(2)
}, {
name: "自貢",
value: (Math.random() * 200).toFixed(2)
}, {
name: "吉林",
value: (Math.random() * 200).toFixed(2)
}, {
name: "陽江",
value: (Math.random() * 200).toFixed(2)
}, {
name: "瀘州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "西寧",
value: (Math.random() * 200).toFixed(2)
}, {
name: "宜賓",
value: (Math.random() * 200).toFixed(2)
}, {
name: "呼和浩特",
value: (Math.random() * 200).toFixed(2)
}, {
name: "成都",
value: (Math.random() * 200).toFixed(2)
}, {
name: "大同",
value: (Math.random() * 200).toFixed(2)
}, {
name: "鎮江",
value: (Math.random() * 100).toFixed(2)
}, {
name: "桂林",
value: (Math.random() * 200).toFixed(2)
}, {
name: "張家界",
value: (Math.random() * 200).toFixed(2)
}, {
name: "宜興",
value: (Math.random() * 200).toFixed(2)
}, {
name: "北海",
value: (Math.random() * 200).toFixed(2)
}, {
name: "西安",
value: (Math.random() * 200).toFixed(2)
}, {
name: "金壇",
value: (Math.random() * 200).toFixed(2)
},
{
name: "包頭",
value: (Math.random() * 200).toFixed(2)
}, {
name: "綿陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "烏魯木齊",
value: (Math.random() * 200).toFixed(2)
}, {
name: "棗莊",
value: (Math.random() * 200).toFixed(2)
}, {
name: "杭州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "淄博",
value: (Math.random() * 200).toFixed(2)
}, {
name: "鞍山",
value: (Math.random() * 200).toFixed(2)
}, {
name: "溧陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "庫爾勒",
value: (Math.random() * 200).toFixed(2)
}, {
name: "安陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "開封",
value: (Math.random() * 200).toFixed(2)
}, {
name: "濟南",
value: (Math.random() * 100).toFixed(2)
}, {
name: "德陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "溫州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "九江",
value: (Math.random() * 100).toFixed(2)
}, {
name: "邯鄲",
value: (Math.random() * 200).toFixed(2)
}, {
name: "臨安",
value: (Math.random() * 100).toFixed(2)
}, {
name: "蘭州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "滄州",
value: (Math.random() * 200).toFixed(2)
},
{
name: "秦皇島",
value: (Math.random() * 200).toFixed(2)
}, {
name: "株洲",
value: (Math.random() * 200).toFixed(2)
}, {
name: "石家莊",
value: (Math.random() * 200).toFixed(2)
}, {
name: "萊蕪",
value: (Math.random() * 200).toFixed(2)
}, {
name: "常德",
value: (Math.random() * 200).toFixed(2)
}, {
name: "保定",
value: (Math.random() * 200).toFixed(2)
}, {
name: "湘潭",
value: (Math.random() * 100).toFixed(2)
}, {
name: "金華",
value: (Math.random() * 200).toFixed(2)
}, {
name: "岳陽",
value: (Math.random() * 200).toFixed(2)
}, {
name: "長沙",
value: (Math.random() * 100).toFixed(2)
}, {
name: "衢州",
value: (Math.random() * 200).toFixed(2)
}, {
name: "廊坊",
value: (Math.random() * 200).toFixed(2)
}, {
name: "菏澤",
value: (Math.random() * 100).toFixed(2)
}, {
name: "合肥",
value: (Math.random() * 200).toFixed(2)
}, {
name: "武漢",
value: (Math.random() * 200).toFixed(2)
}, {
name: "大慶",
value: (Math.random() * 200).toFixed(2)
}
]);
// option.series[0].data = convertData(data);
break;
~~~
ps 分享頁的沒有添加 因為不能保存 截圖有錯誤 和openlayer一樣 的問題 這個是因為添加了echarts-gl.js這個插件造成的不能截圖 獲取不到對象
- video
- treemap
- mian.html文件注釋
- 配置項tab
- 配置項屬性
- internalRefreshAxisMdelData函數梳理
- 函數配置項-engine文件
- 替換數據源流程
- design.js
- 樹圖
- 下鉆 廢棄
- 人體圖
- 下鉆地圖
- 行列互轉
- 預覽樣式
- logo旁邊的報表名
- echarts 組件生成圖片
- 數據集樣式
- 頭部 黑色head
- 手機 ipad 圖片
- k線圖部分
- 平臺管理css樣式
- 目錄css和平板的邊距
- 設計頁-數據源-目錄
- 數據集 - 查看數據表 -按鈕和目錄樣式
- 報表列表頁按鈕css
- 角色管理頁按鈕css
- 推送通知按鈕css
- 子賬號按鈕css
- 數據連接
- openlayers地圖線路圖
- openlayers4_map_designer.js
- openlayers4_map_view.js
- 說明
- 常用圖標小bug
- echarts 氣泡地圖
- echarts 線路軌跡圖
- 導出pdf
- 可視化sql--css
- 表格滾動
- 主題色
- 時間軸
- 分享彈框
- 管理平臺header和菜單
- 報表平臺和菜單
- 初始化組件顏色
- 其他彈框
- olap分析樣式-廢棄
- 3d地圖柱狀圖
- 關系圖
- olap分析
- 地區地圖
- k線圖相關屬性設置
- 世界地圖
- 時間軸(new)
- 選擇省份下轉地圖
- 選擇省市飛線地圖
- 面積預警地圖默認顏色
- 組件覆層開關組件
- 汽車儀表盤bug
- 雷達圖bug修復不能分享的問題
- 餅狀 條形圖 自動播放
- 臨時用
- 自動輪播
- 方形元素 按鈕浮動報錯
- 面積預警地圖整合可選擇省市區
- 下鉆地圖添加返回按鈕
- 下鉆地圖修復預警bug
- 基本時間組件
- 添加時鐘組件
- 3d地球組件
- 盒須圖
- 組件加載動畫
- 報表背景漸變色
- 主題模板
- 沒用
- 3機房第三方組件
- 設計
- 分享
- 3d機房需要的靜態資源
- cesium地球需要的文件以及樣式
- cesium地球
- 設計頁
- 分享頁
- 圖標條形圖
- 世豪-前端代碼整理
- component.css 文件新添加
- 雜項
- index.jsp
- designer.css 樣式暫時不整理 里面比較雜
- vs-common.js 新加生成html2canvas pdf
- vs-component-basic.js 完
- vs-component-datasource.js 完
- vs-component-engine.js 完
- vs-component-widget-grid.js 完
- vs-component-widget-square.js 完
- vs-designer.js 完
- vs-designer-component.js 完
- vs-designer-report.js 完
- vs-designer-reportpage.js 完
- vs-component-echarts.js 完
- main.html 完
- component.html 新加組件設置頁模板
- 以前的報表頁設置控制器---做個記錄
- 大概修改過的代碼
- 2019-5-8 修改皮膚控制器
- 選擇模板
- 桑基圖2019-11-20
- bug 修正 2019-11-21
- 插圖柱狀圖
- cesiumchart組件
- gis 地圖 聯動 彈框 圖標
- 動態面積圖添加按鈕類配置項
- 玫瑰圖形組件
- cesium 圖形 和three.js 沖突的bug
- gis 地圖 默認圖層
- 網格標簽
- gis 點圖 值域
- gis 面圖 值域
- 按鈕圖標添加提示框
- 百度地圖
- 剩余的組件
- gulp說明文檔
- 色斑圖加透明