设计页
路径D:\ireport365\ireport365.war\WEB-INF\pages\enduser\designer\index.jsp
添加下面的代码
`_scripts.push({url: "http://gallery.echartsjs.com/dep/echarts/map/js/world.js?v="+updateVersion});`
路径 D:\ireport365\ireport365.war\js\enduser\designer\vs-component-echarts.js
一 添加世界图
~~~
{
name: "",
type: "worldMap",
coverImage: contextPath + "/images/componenttypes/" + locale + "/echarts/zh_kline.png",
coverImageWidth: "50%",
tip: "世界地图"
}
~~~
二 添加中英文转换对象和世界图 option 模板对象
~~~
// 世界地图英文汉语转换对象 start
var nameMap = {
'Afghanistan':'阿富汗',
'Albania':'阿尔巴尼亚',
'Algeria':'阿尔及利亚',
'Andorra':'安道尔',
'Angola':'安哥拉',
'Antarctica':'南极洲',
'Antigua and Barbuda':'安提瓜和巴布达',
'Argentina':'阿根廷',
'Armenia':'亚美尼亚',
'Australia':'澳大利亚',
'Austria':'奥地利',
'Azerbaijan':'阿塞拜疆',
'The Bahamas':'巴哈马',
'Bahrain':'巴林',
'Bangladesh':'孟加拉国',
'Barbados':'巴巴多斯',
'Belarus':'白俄罗斯',
'Belgium':'比利时',
'Belize':'伯利兹',
'Benin':'贝宁',
'Bermuda':'百慕大',
'Bhutan':'不丹',
'Bolivia':'玻利维亚',
'Bosnia and Herzegovina':'波斯尼亚和黑塞哥维那',
'Botswana':'博茨瓦纳',
'Brazil':'巴西',
'Brunei':'文莱',
'Bulgaria':'保加利亚',
'Burkina Faso':'布基纳法索',
'Burundi':'布隆迪',
'Cambodia':'柬埔寨',
'Cameroon':'喀麦隆',
'Canada':'加拿大',
'Cape Verde':'佛得角',
'Central African Republic':'中非共和国',
'Chad':'乍得',
'Chile':'智利',
'China':'中国',
'Colombia':'哥伦比亚',
'Comoros':'科摩罗',
'Republic of the Congo':'刚果共和国',
'Costa Rica':'哥斯达黎加',
'Croatia':'克罗地亚',
'Cuba':'古巴',
'Cyprus':'塞浦路斯',
'Czech Republic':'捷克共和国',
'Denmark':'丹麦',
'Djibouti':'吉布提',
'Dominica':'多米尼加',
'Dominican Republic':'多明尼加共和国',
'Ecuador':'厄瓜多尔',
'Egypt':'埃及',
'El Salvador':'萨尔瓦多',
'Equatorial Guinea':'赤道几内亚',
'Eritrea':'厄立特里亚',
'Estonia':'爱沙尼亚',
'Ethiopia':'埃塞俄比亚',
'Falkland Islands':'福克兰群岛',
'Faroe Islands':'法罗群岛',
'Fiji':'斐济',
'Finland':'芬兰',
'France':'法国',
'French Guiana':'法属圭亚那',
'French Southern and Antarctic Lands':'法属南半球和南极领地',
'Gabon':'加蓬',
'Gambia':'冈比亚',
'Gaza Strip':'加沙',
'Georgia':'格鲁吉亚',
'Germany':'德国',
'Ghana':'加纳',
'Greece':'希腊',
'Greenland':'格陵兰',
'Grenada':'格林纳达',
'Guadeloupe':'瓜德罗普',
'Guatemala':'危地马拉',
'Guinea':'几内亚',
'Guinea Bissau':'几内亚比绍',
'Guyana':'圭亚那',
'Haiti':'海地',
'Honduras':'洪都拉斯',
'Hong Kong':'香港',
'Hungary':'匈牙利',
'Iceland':'冰岛',
'India':'印度',
'Indonesia':'印尼',
'Iran':'伊朗',
'Iraq':'伊拉克',
'Iraq-Saudi Arabia Neutral Zone':'伊拉克阿拉伯中立区',
'Ireland':'爱尔兰',
'Isle of Man':'马恩岛',
'Israel':'以色列',
'Italy':'意大利',
'Ivory Coast':'科特迪瓦',
'Jamaica':'牙买加',
'Jan Mayen':'扬马延岛',
'Japan':'日本',
'Jordan':'约旦',
'Kazakhstan':'哈萨克斯坦',
'Kenya':'肯尼亚',
'Kerguelen':'凯尔盖朗群岛',
'Kiribati':'基里巴斯',
'North Korea':'北朝鲜',
'South Korea':'韩国',
'Kuwait':'科威特',
'Kyrgyzstan':'吉尔吉斯斯坦',
'Laos':'老挝',
'Latvia':'拉脱维亚',
'Lebanon':'黎巴嫩',
'Lesotho':'莱索托',
'Liberia':'利比里亚',
'Libya':'利比亚',
'Liechtenstein':'列支敦士登',
'Lithuania':'立陶宛',
'Luxembourg':'卢森堡',
'Macau':'澳门',
'Macedonia':'马其顿',
'Madagascar':'马达加斯加',
'Malawi':'马拉维',
'Malaysia':'马来西亚',
'Maldives':'马尔代夫',
'Mali':'马里',
'Malta':'马耳他',
'Martinique':'马提尼克',
'Mauritania':'毛里塔尼亚',
'Mauritius':'毛里求斯',
'Mexico':'墨西哥',
'Moldova':'摩尔多瓦',
'Monaco':'摩纳哥',
'Mongolia':'蒙古',
'Morocco':'摩洛哥',
'Mozambique':'莫桑比克',
'Myanmar':'缅甸',
'Namibia':'纳米比亚',
'Nepal':'尼泊尔',
'Netherlands':'荷兰',
'New Caledonia':'新喀里多尼亚',
'New Zealand':'新西兰',
'Nicaragua':'尼加拉瓜',
'Niger':'尼日尔',
'Nigeria':'尼日利亚',
'Northern Mariana Islands':'北马里亚纳群岛',
'Norway':'挪威',
'Oman':'阿曼',
'Pakistan':'巴基斯坦',
'Panama':'巴拿马',
'Papua New Guinea':'巴布亚新几内亚',
'Paraguay':'巴拉圭',
'Peru':'秘鲁',
'Philippines':'菲律宾',
'Poland':'波兰',
'Portugal':'葡萄牙',
'Puerto Rico':'波多黎各',
'Qatar':'卡塔尔',
'Reunion':'留尼旺岛',
'Romania':'罗马尼亚',
'Russia':'俄罗斯',
'Rwanda':'卢旺达',
'San Marino':'圣马力诺',
'Sao Tome and Principe':'圣多美和普林西比',
'Saudi Arabia':'沙特阿拉伯',
'Senegal':'塞内加尔',
'Seychelles':'塞舌尔',
'Sierra Leone':'塞拉利昂',
'Singapore':'新加坡',
'Slovakia':'斯洛伐克',
'Slovenia':'斯洛文尼亚',
'Solomon Islands':'所罗门群岛',
'Somalia':'索马里',
'South Africa':'南非',
'Spain':'西班牙',
'Sri Lanka':'斯里兰卡',
'St. Christopher-Nevis':'圣',
'St. Lucia':'圣露西亚',
'St. Vincent and the Grenadines':'圣文森特和格林纳丁斯',
'Sudan':'苏丹',
'Suriname':'苏里南',
'Svalbard':'斯瓦尔巴特群岛',
'Swaziland':'斯威士兰',
'Sweden':'瑞典',
'Switzerland':'瑞士',
'Syria':'叙利亚',
'Taiwan':'台湾',
'Tajikistan':'塔吉克斯坦',
'United Republic of Tanzania':'坦桑尼亚',
'Thailand':'泰国',
'Togo':'多哥',
'Tonga':'汤加',
'Trinidad and Tobago':'特里尼达和多巴哥',
'Tunisia':'突尼斯',
'Turkey':'土耳其',
'Turkmenistan':'土库曼斯坦',
'Turks and Caicos Islands':'特克斯和凯科斯群岛',
'Uganda':'乌干达',
'Ukraine':'乌克兰',
'United Arab Emirates':'阿联酋',
'United Kingdom':'英国',
'United States of America':'美国',
'Uruguay':'乌拉圭',
'Uzbekistan':'乌兹别克斯坦',
'Vanuatu':'瓦努阿图',
'Venezuela':'委内瑞拉',
'Vietnam':'越南',
'Western Sahara':'西撒哈拉',
'Western Samoa':'西萨摩亚',
'Yemen':'也门',
'Yugoslavia':'南斯拉夫',
'Democratic Republic of the Congo':'刚果民主共和国',
'Zambia':'赞比亚',
'Zimbabwe':'津巴布韦',
'South Sudan':'南苏丹',
'Somaliland':'索马里兰',
'Montenegro':'黑山',
'Kosovo':'科索沃',
'Republic of Serbia':'塞尔维亚',
};
// 世界地图英文汉语转换对象 end
// 世界地图对象 start
worldMapOptionTemplate = {
title: {
show:false
},
roam: true,
tooltip: {
show: true,
trigger: "item",
formatter: "{b}: {c}"
},
dataRange: {
show:false,
y: "top",
min: 0,
max: 100,
itemWidth: 12,
itemHeight: 10,
calculable: false,
color: ["#ff3333", "orange", "yellow", "lime", "aqua"],
textStyle: {
color: "#000"
}
},
series: [{
type: 'map',
mapType: 'world',
nameMap: nameMap,
roam: true,
data: [],
itemStyle: {
normal: {
label: {
show: false,
textStyle: {
fontSize: "10",
color: "#999"
}
},
borderColor: "#608EE1",
borderWidth: 0.5,
areaStyle: {
color: "#022047"
}
},
},
markLine: {
smooth: true,
effect: {
show: true,
scaleSize: 1,
period: 30,
color: "#fff",
shadowBlur: 10
},
itemStyle: {
normal: {
label: {
show: true
},
borderWidth: 1,
lineStyle: {
type: "solid",
shadowBlur: 10
}
}
},
data: []
},
markPoint: {
symbol: "emptyCircle",
symbolSize: 0,
effect: {
show: true,
shadowBlur: 0
},
itemStyle: {
normal: {
label: {
show: false
}
},
emphasis: {
label: {
show: false,
position: "top"
}
}
},
data: []
},
}]
};
// 世界地图对象 end
~~~
二 在下面添加 类别 等
![](https://box.kancloud.cn/b34f6c36de42fd6ed48ea52504156031_686x675.png)
三 在 chinaAreaMap 下面添加 如图的位置
~~~
case "worldMap":
delete option.legend;
break;
~~~
![](https://box.kancloud.cn/79730eb7c04cb4b5da45102931682120_760x212.png)
四 与chinaAreaMap chinaHeatMap 共用弹框代码 如图
![](https://box.kancloud.cn/114175553f7a230ebc8742440e1c03d0_1064x843.png)
五 数据处理函数
~~~
var internalRefreshWorldMapModelData = function () {
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].data = chartData;
option.series[0].name = 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;
var thresholdConfig = component.config.thresholdConfig[measures[measureIdx].name];
var splitList = [];
if (thresholdConfig != null && thresholdConfig.length > 0) {
var valueType = component.config["thresholdValueType_" + measures[measureIdx].name];
if (valueType == null) {
valueType = "value"
}
var maxValue = parseFloat(component.config["maxValue_" + measures[measureIdx].name]);
var minValue = parseFloat(component.config["minValue_" + measures[measureIdx].name]);
if (isNaN(maxValue) || isNaN(minValue)) {
var calculatedMaxValue = -9999999999;
var calculatedMinValue = 9999999999;
for (var i = 0; i < data.length; i++) {
var value = data[i][measures[measureIdx].name];
calculatedMaxValue = Math.max(calculatedMaxValue, parseFloat(value));
calculatedMinValue = Math.min(calculatedMinValue, parseFloat(value))
}
if (isNaN(maxValue)) {
maxValue = calculatedMaxValue
}
if (isNaN(minValue)) {
minValue = calculatedMinValue
}
}
var minToMaxValue = maxValue - minValue;
for (var i = 0; i < thresholdConfig.length; i++) {
var fromValue = parseFloat(component.config[thresholdConfig[i].fromBind]);
var toValue = parseFloat(component.config[thresholdConfig[i].toBind]);
if (isNaN(fromValue) && isNaN(toValue)) {
continue
}
if (valueType === "percent") {
fromValue = fromValue * minToMaxValue;
toValue = toValue * minToMaxValue
}
var color = component.config[thresholdConfig[i].colorBind];
var item = {
color: color
};
if (!isNaN(fromValue)) {
item.start = fromValue
}
if (!isNaN(toValue)) {
item.end = toValue
}
if (component.config.dataRangeUnit) {
if (item.start == null) {
item.label = "< " + item.end
} else {
if (item.end == null) {
item.label = "> " + item.start
} else {
item.label = item.start + " - " + item.end
}
}
item.label = item.label + component.config.dataRangeUnit
}
splitList.push(item)
}
}
if (splitList.length === 0) {
splitList = [{
start: 0,
color: "#A8DAF6"
}]
}
option.dataRange.splitList = splitList;
option.data = chartDataMap;
component.context.chart.setOption(option, true)
};
~~~
六 调用数据处理函数
~~~
case "worldMap":
internalRefreshWorldMapModelData();
break;
~~~
七 添加接收联动数据代码 在radar的接收联动代码 下面添加
~~~
case "worldMap":
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;
~~~
八 在 中国面积图 热力地图 弹框地图 的推动数据下面 添加 下面代码
如图的位置
![](https://box.kancloud.cn/6c6adf4d3748a6d3e71edb820d7d8e6f_1005x768.png)
~~~
case "worldMap":
component.context.chart.on("mouseover", function (param) {
console.log(param.dataIndex)
if (param.dataIndex < 0) {
return
}
if (component.context.tooltipName != null && "" + component.context.tooltipName === "" + param.name) {
return
}
component.context.tooltipName = param.name;
scope.notifyDimensionValueChange(null, scope.getLastDimension(), param.name)
});
break;
~~~
九 在_buildChinaAreaMapAreaChartDescription 方法下面添加 下面的方法代码
~~~
_buildWorldMapAreaChartDescription: function (dataCategory, scope, element, component, $compile) {
dataCategory.groups.push({
name: "text",
title: {
text: vsLang.area_blocks
},
elements: [{
title: vsLang.default_color,
type: "colorpicker",
bind: "areaColor"
}, {
title: vsLang.border_color,
type: "colorpicker",
bind: "areaBorderColor"
}]
});
dataCategory.groups.push({
name: "text",
title: {
text: vsLang.data_range_tool
},
elements: [{
title: vsLang.display,
type: "switch",
bind: "showDataRange",
on: vsLang.on,
off: vsLang.off
}, {
title: vsLang.unit,
type: "text-input-sl",
bind: "dataRangeUnit"
}, {
title: vsLang.orientation,
type: "radio-icon",
bind: "dataRangeOrient",
items: [{
name: vsLang.vertical,
value: "vertical",
icon: "fa fa-ellipsis-v"
}, {
name: vsLang.horizontal,
value: "horizontal",
icon: "fa fa-ellipsis-h"
}]
}, {
title: vsLang.vertical_position_short,
type: "radio-icon",
bind: "dataRangePosY",
items: [{
name: vsLang.position_top,
value: "top",
icon: "fa fa-minus",
pStyle: "padding-top:0;padding-bottom:12px;"
}, {
name: vsLang.position_middle,
value: "center",
icon: "fa fa-minus",
pStyle: "padding-top:6px;padding-bottom:6px;"
}, {
name: vsLang.position_bottom,
value: "bottom",
icon: "fa fa-minus",
pStyle: "padding-top:12px;padding-bottom:0px;"
}]
}, {
title: vsLang.horizontal_position_short,
type: "radio-icon",
bind: "dataRangePosX",
items: [{
name: vsLang.position_left,
value: "left",
icon: "fa fa-align-left"
}, {
name: vsLang.position_center,
value: "center",
icon: "fa fa-align-center"
}, {
name: vsLang.position_right,
value: "right",
icon: "fa fa-align-right"
}]
}, {
title: vsLang.vertical_offset_short,
type: "configSlide",
bind: "dataRangeOffsetY",
config: {
slideEnd: 1000
}
}, {
title: vsLang.horizontal_offset_short,
type: "configSlide",
bind: "dataRangeOffsetX",
config: {
slideEnd: 1000
}
}, {
title: vsLang.font_color,
type: "colorpicker",
bind: "dataRangeFontColor"
}, {
title: vsLang.font_size,
type: "configSlide",
bind: "dataRangeFontSize",
config: {
slideEnd: 100
}
}, {
title: vsLang.width,
type: "configSlide",
bind: "dataRangeWidth",
config: {
slideEnd: 100
}
}, {
title: vsLang.height,
type: "configSlide",
bind: "dataRangeHeight",
config: {
slideEnd: 100
}
}]
});
scope.$watch("component.config.showItemLabel", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.series[0].itemStyle.normal.label.show = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.itemLabelSize", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.series[0].itemStyle.normal.label.textStyle.fontSize = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.itemLabelColor", function(newValue, oldValue) {
if (isValidColorValue(newValue)) {
var option = component.config.chartConfig;
option.series[0].itemStyle.normal.label.textStyle.color = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.areaBorderColor", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.series[0].itemStyle.normal.borderColor = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.areaColor", function(newValue, oldValue) {
if (isValidColorValue(newValue)) {
var option = component.config.chartConfig;
option.series[0].itemStyle.normal.areaStyle.color = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.showDataRange", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.show = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangeUnit", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
scope.$broadcast(event_refreshChartView, {})
}
});
scope.$watch("component.config.dataRangeOrient", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.orient = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangePosY", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.y = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangeOffsetX", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.x = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangeOffsetY", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.y = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangePosX", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.x = newValue;
scope.component.context.chart.setOption(option, true)
}
});
// 值域文字颜色
scope.$watch("component.config.dataRangeFontColor", function(newValue, oldValue) {
if (isValidColorValue(newValue)) {
var option = component.config.chartConfig;
if (option.dataRange.textStyle == null) {
option.dataRange.textStyle = {}
}
option.dataRange.textStyle.color = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangeFontSize", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
if (option.dataRange.textStyle == null) {
option.dataRange.textStyle = {}
}
option.dataRange.textStyle.fontSize = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangeWidth", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.itemWidth = newValue;
scope.component.context.chart.setOption(option, true)
}
});
scope.$watch("component.config.dataRangeHeight", function(newValue, oldValue) {
if (newValue != null && (oldValue == null || oldValue !== newValue)) {
var option = component.config.chartConfig;
option.dataRange.itemHeight = newValue;
scope.component.context.chart.setOption(option, true)
}
})
},
~~~
十 在 热力图 弹框地图 面积地图 下面添加 如图的位置
![](https://box.kancloud.cn/b28bd9aaf5f97b099a76caaef689119a_792x788.png)
~~~
case "worldMap":
groupDesc.elements.push({
title: vsLang.value_type,
type: "radio-icon",
bind: "valueType" + identifier,
items: [{
name: vsLang.value_original,
icon: "fa fa-font",
value: "value"
}, {
name: vsLang.value_percent,
icon: "fa fa-percent",
value: "percent"
}]
});
break;
~~~
十一 新建 世界面积图 配置面板自定义服务 在中国面积图下面 添加 如图
![](https://box.kancloud.cn/563051800935db16b8e845c4d70e75e1_973x804.png)
~~~
// 新建世界面积图自定义服务
if (component.type === "worldMap") {
factory._buildWorldMapAreaChartDescription(chartCategory, scope, element, component, $compile);
var valueMapCategory = {
name: "valueMap",
title: vsLang.area_mapping,
groups: []
};
component.description.categories.push(valueMapCategory);
factory._buildChinamapKeyValueMapChartDescription(valueMapCategory, scope, element, component, $compile);
valueMapCategory.groups.push({
name: "text",
title: {
text: "",
show: false
},
elements: [{
title: vsLang.reload_component,
type: "button",
onClick: function () {
scope.$broadcast(event_refreshChartView, {})
}
}]
})
}
~~~
十二 在copy option 对象 添加 下面代码
~~~
case "worldMap":
option = angular.copy(worldMapOptionTemplate);
delete option.series[0].markLine;
delete option.series[0].markPoint;
option.dataRange = {
y: "top",
itemWidth: 12,
itemHeight: 10,
splitList: [{
start: 140,
color: "#dd6b66"
}, {
start: 70,
end: 140,
color: "#ea7e53"
}, {
start: 40,
end: 70,
color: "#e69d87"
}, {
start: 20,
end: 40,
color: "#8dc1a9"
}, {
start: 0,
end: 20,
color: "#73b9bc"
}]
};
option.series[0].data = [
{name:'卢旺达',value:56.99},
{name:'布隆迪',value:20.27},
{name:'尼泊尔',value:40.01},
{name:'乌干达',value:40.37},
{name:'老挝',value:71.28},
{name:'埃塞俄比亚',value:19.96},
{name:'马达加斯加',value:21.82},
{name:'海地',value:33.11},
{name:'也门',value:51.51},
{name:'肯尼亚',value:33.33},
{name:'菲律宾',value:68.82},
{name:'索马里',value:0},
{name:'阿富汗',value:15.94},
{name:'巴基斯坦',value:28.16},
{name:'朝鲜',value:0},
{name:'印度',value:33.2},
{name:'厄立特里亚',value:10.59},
{name:'哥伦比亚',value:143.51},
{name:'哥伦比亚',value:143.51},
{name:'巴布亚新几内亚',value:32.39},
{name:'布基纳法索',value:12.84},
{name:'马拉维',value:9.97},
{name:'埃及',value:53.39},
{name:'塞拉利昂',value:8.72},
{name:'尼加拉瓜',value:29.14},
{name:'坦桑尼亚',value:13.09},
{name:'尼日利亚',value:43.94},
{name:'尼日尔',value:6.35},
{name:'毛里塔尼亚',value:21.69},
{name:'喀麦隆',value:19.69},
{name:'新加坡',value:788.07},
{name:'缅甸',value:15.48},
{name:'印尼',value:49.68},
{name:'贝宁',value:11.62},
{name:'摩洛哥',value:44.39},
{name:'马里',value:10.68},
{name:'哥斯达黎加',value:124.23},
{name:'萨尔瓦多',value:53.55},
{name:'厄瓜多尔',value:69.56},
{name:'泰国',value:75.76},
{name:'斯里兰卡',value:40.52},
{name:'多米尼加',value:77.08},
{name:'韩国',value:312.71},
{name:'刚果民主共和国',value:4.37},
{name:'越南',value:18.4},
{name:'几内亚',value:5.92},
{name:'危地马拉',value:37.58},
{name:'利比里亚',value:4.31},
{name:'多哥',value:6.35},
{name:'秘鲁',value:64.13},
{name:'毛里求斯',value:100.04},
{name:'莫桑比克',value:5.08},
{name:'阿尔及利亚',value:53.74},
{name:'柬埔寨',value:9.37},
{name:'斯威士兰',value:45.26},
{name:'乍得',value:10.66},
{name:'塞内加尔',value:11.74},
{name:'津巴布韦',value:7.85},
{name:'黎巴嫩',value:95.02},
{name:'洪都拉斯',value:22.47},
{name:'伊拉克',value:47.76},
{name:'科特迪瓦',value:13.1},
{name:'孟加拉国',value:7.25},
{name:'赞比亚',value:13.51},
{name:'巴拿马',value:72.29},
{name:'中非共和国',value:3.97},
{name:'突尼斯',value:36.71},
{name:'加纳',value:11.49},
{name:'斐济',value:31.41},
{name:'安哥拉',value:32.99},
{name:'冈比亚',value:4.76},
{name:'中国',value:37.89},
{name:'刚果共和国',value:24.02},
{name:'古巴',value:45.95},
{name:'苏丹',value:14.59},
{name:'伊朗',value:49.76},
{name:'委内瑞拉',value:106.43},
{name:'土耳其',value:73.85},
{name:'牙买加',value:32.98},
{name:'叙利亚',value:0},
{name:'玻利维亚',value:13.1},
{name:'巴西',value:68.18},
{name:'阿联酋',value:204.32},
{name:'智利',value:70.17},
{name:'马来西亚',value:47.23},
{name:'苏里南',value:43.68},
{name:'前南马其顿',value:23.52},
{name:'加蓬',value:47.86},
{name:'日本',value:224.41},
{name:'阿尔巴尼亚',value:19.88},
{name:'墨西哥',value:42.05},
{name:'波多黎各',value:122.98},
{name:'以色列',value:137.51},
{name:'西班牙',value:139},
{name:'特立尼达和多巴哥',value:73.85},
{name:'卡塔尔',value:312.81},
{name:'克罗地亚',value:19.07},
{name:'乌拉圭',value:50.36},
{name:'塔吉克斯坦',value:3.13},
{name:'巴林',value:85.71},
{name:'巴拉圭',value:13.55},
{name:'沙特阿拉伯',value:75.26},
{name:'瑞士',value:290.61},
{name:'蒙古',value:10.27},
{name:'科威特',value:144.27},
{name:'圭亚那',value:11.3},
{name:'英国',value:142.92},
{name:'塞浦路斯',value:85.21},
{name:'阿根廷',value:36.4},
{name:'爱尔兰',value:170.27},
{name:'意大利',value:122.84},
{name:'南非',value:25.19},
{name:'荷兰',value:167.29},
{name:'黑山共和国',value:20.69},
{name:'利比亚',value:35.61},
{name:'亚美尼亚',value:9.26},
{name:'斯洛文尼亚',value:68.59},
{name:'波兰',value:35.51},
{name:'希腊',value:74.84},
{name:'纳米比亚',value:14.1},
{name:'德国',value:113.16},
{name:'阿曼',value:53.31},
{name:'格鲁吉亚',value:7.76},
{name:'卢森堡',value:261.76},
{name:'葡萄牙',value:56.74},
{name:'阿塞拜疆',value:14.7},
{name:'新喀里多尼亚',value:0},
{name:'吉尔吉斯斯坦',value:2.18},
{name:'新西兰',value:81.44},
{name:'乌兹别克斯坦',value:3.28},
{name:'塞尔维亚',value:12.33},
{name:'法国',value:91.28},
{name:'奥地利',value:102.69},
{name:'捷克共和国',value:39.81},
{name:'斯洛伐克',value:33.15},
{name:'拉脱维亚',value:21.6},
{name:'挪威',value:164.82},
{name:'土库曼斯坦',value:8.36},
{name:'比利时',value:81.96},
{name:'丹麦',value:99.84},
{name:'匈牙利',value:22.46},
{name:'伯利兹',value:6.99},
{name:'瑞典',value:82.78},
{name:'博茨瓦纳',value:9.84},
{name:'罗马尼亚',value:12.26},
{name:'俄罗斯',value:15.51},
{name:'澳大利亚',value:74.66},
{name:'加拿大',value:67.79},
{name:'保加利亚',value:9.73},
{name:'哈萨克斯坦',value:12.24},
{name:'立陶宛',value:16.14},
{name:'爱沙尼亚',value:19.49},
{name:'白俄罗斯',value:7.67},
{name:'美国',value:63.52},
{name:'美国',value:63.52},
{name:'文莱',value:45.69},
{name:'摩尔多瓦',value:2.08},
{name:'巴哈马',value:26.37},
{name:'芬兰',value:55.07},
{name:'乌克兰',value:3.33},
{name:'北马里亚纳',value:0},
{name:'南苏丹',value:0},
{name:'索马里兰',value:0},
{name:'黑山',value:0},
{name:'科索沃',value:0},
{name:'塞尔维亚',value:0}];
break;
~~~
2018-08-1 ----08-18
选择地区地图 完 代码已整理
k线图重写了 完 代码已整理
k线图轴线相关配置 完 代码已整理
k线图图形里相关配置 完 代码已整理
世界地图 完 代码已整理
2018-8-20
雷达分享bug 完
山西流向地图模板 完
汽车仪表盘 单位值乱码 完
- 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说明文档
- 色斑图加透明