|  |  | 
|  | <!-- | 
|  | Licensed to the Apache Software Foundation (ASF) under one | 
|  | or more contributor license agreements.  See the NOTICE file | 
|  | distributed with this work for additional information | 
|  | regarding copyright ownership.  The ASF licenses this file | 
|  | to you under the Apache License, Version 2.0 (the | 
|  | "License"); you may not use this file except in compliance | 
|  | with the License.  You may obtain a copy of the License at | 
|  |  | 
|  | http://www.apache.org/licenses/LICENSE-2.0 | 
|  |  | 
|  | Unless required by applicable law or agreed to in writing, | 
|  | software distributed under the License is distributed on an | 
|  | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
|  | KIND, either express or implied.  See the License for the | 
|  | specific language governing permissions and limitations | 
|  | under the License. | 
|  | --> | 
|  |  | 
|  | <html> | 
|  | <head> | 
|  | <meta charset="utf-8"> | 
|  | <meta name="viewport" content="width=device-width, initial-scale=1" /> | 
|  | <script src="lib/simpleRequire.js"></script> | 
|  | <script src="lib/config.js"></script> | 
|  | <script src="lib/jquery.min.js"></script> | 
|  | <script src="lib/facePrint.js"></script> | 
|  | <script src="lib/testHelper.js"></script> | 
|  | <!-- <script src="ut/lib/canteen.js"></script> --> | 
|  | <link rel="stylesheet" href="lib/reset.css" /> | 
|  | </head> | 
|  | <body> | 
|  |  | 
|  | <div id="main0"></div> | 
|  | <div id="main1"></div> | 
|  | <div id="main2"></div> | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | <script> | 
|  | require([ | 
|  | 'echarts', | 
|  | 'map/js/china' | 
|  | ], function (echarts) { | 
|  | var itemStyle = { | 
|  | normal:{ | 
|  | borderColor: 'rgba(0, 0, 0, 0.2)' | 
|  | }, | 
|  | emphasis:{ | 
|  | shadowOffsetX: 0, | 
|  | shadowOffsetY: 0, | 
|  | shadowBlur: 20, | 
|  | borderWidth: 0, | 
|  | shadowColor: 'rgba(0, 0, 0, 0.5)' | 
|  | } | 
|  | }; | 
|  |  | 
|  | var option = { | 
|  | tooltip: {}, | 
|  | title : { | 
|  | text: '内蒙古 青海 没数据也要能被选中', | 
|  | left: 'center' | 
|  | }, | 
|  | legend: { | 
|  | orient: 'vertical', | 
|  | left: 'left', | 
|  | data:['iphone3','iphone4','iphone5'] | 
|  | }, | 
|  | visualMap: { | 
|  | min: 0, | 
|  | max: 1500, | 
|  | left: 'left', | 
|  | top: 'bottom', | 
|  | text: ['高','低'], | 
|  | calculable : true | 
|  | }, | 
|  | selectedMode: 'single', | 
|  | series : [ | 
|  | { | 
|  | name: 'iphone3', | 
|  | type: 'map', | 
|  | map: 'china', | 
|  | itemStyle: itemStyle, | 
|  | showLegendSymbol: true, | 
|  | // zoom: 10, | 
|  | // center: [115.97, 29.71], | 
|  | roam: true, | 
|  | markPoint: { | 
|  | data: [{ | 
|  | coord: [115.97, 29.71] | 
|  | }] | 
|  | }, | 
|  | label: { | 
|  | normal: { | 
|  | show: true, | 
|  | rotate: 40, | 
|  | formatter: '{b}:{value|{c}}', | 
|  | // position: 'inside', | 
|  | backgroundColor: '#fff', | 
|  | padding: [3, 5], | 
|  | borderRadius: 3, | 
|  | borderWidth: 1, | 
|  | borderColor: 'rgba(0,0,0,0.5)', | 
|  | color: '#777', | 
|  | rich: { | 
|  | value: { | 
|  | color: '#019D2D', | 
|  | fontSize: 14, | 
|  | // fontWeight: 'bold' | 
|  | // textBorderWidth: 2, | 
|  | // textBorderColor: '#000' | 
|  | } | 
|  | } | 
|  | }, | 
|  | emphasis: { | 
|  | show: true | 
|  | } | 
|  | }, | 
|  | data:[ | 
|  | {name: '北京',value: Math.round(Math.random()*1000)}, | 
|  | {name: '天津',value: Math.round(Math.random()*1000)}, | 
|  | {name: '上海',value: Math.round(Math.random()*1000)}, | 
|  | {name: '重庆',value: Math.round(Math.random()*1000)}, | 
|  | {name: '河北',value: Math.round(Math.random()*1000)}, | 
|  | {name: '河南',value: Math.round(Math.random()*1000)}, | 
|  | {name: '云南',value: Math.round(Math.random()*1000)}, | 
|  | {name: '辽宁',value: Math.round(Math.random()*1000)}, | 
|  | {name: '黑龙江',value: Math.round(Math.random()*1000)}, | 
|  | {name: '湖南',value: Math.round(Math.random()*1000)}, | 
|  | {name: '安徽',value: Math.round(Math.random()*1000)}, | 
|  | {name: '山东',value: Math.round(Math.random()*1000)}, | 
|  | {name: '新疆',value: Math.round(Math.random()*1000)}, | 
|  | {name: '江苏',value: Math.round(Math.random()*1000)}, | 
|  | {name: '浙江',value: Math.round(Math.random()*1000)}, | 
|  | {name: '江西',value: Math.round(Math.random()*1000)}, | 
|  | {name: '湖北',value: Math.round(Math.random()*1000)}, | 
|  | {name: '广西',value: Math.round(Math.random()*1000)}, | 
|  | {name: '甘肃',value: Math.round(Math.random()*1000)}, | 
|  | {name: '山西',value: Math.round(Math.random()*1000)}, | 
|  | // {name: '内蒙古',value: Math.round(Math.random()*1000)}, | 
|  | {name: '陕西',value: Math.round(Math.random()*1000)}, | 
|  | {name: '吉林',value: Math.round(Math.random()*1000)}, | 
|  | {name: '福建',value: Math.round(Math.random()*1000)}, | 
|  | {name: '贵州',value: Math.round(Math.random()*1000)}, | 
|  | {name: '广东',value: Math.round(Math.random()*1000)}, | 
|  | // {name: '青海',value: Math.round(Math.random()*1000)}, | 
|  | {name: '西藏',value: Math.round(Math.random()*1000)}, | 
|  | {name: '四川',value: Math.round(Math.random()*1000)}, | 
|  | {name: '宁夏',value: Math.round(Math.random()*1000)}, | 
|  | {name: '海南',value: Math.round(Math.random()*1000)}, | 
|  | {name: '台湾',value: Math.round(Math.random()*1000)}, | 
|  | {name: '香港',value: Math.round(Math.random()*1000)}, | 
|  | {name: '澳门',value: Math.round(Math.random()*1000)} | 
|  | ] | 
|  | }, | 
|  | { | 
|  | name: 'iphone4', | 
|  | type: 'map', | 
|  | mapType: 'china', | 
|  | itemStyle: itemStyle, | 
|  | showLegendSymbol: true, | 
|  | label: { | 
|  | normal: { | 
|  | show: true | 
|  | }, | 
|  | emphasis: { | 
|  | show: true | 
|  | } | 
|  | }, | 
|  | data:[ | 
|  | {name: '北京',value: Math.round(Math.random()*1000)}, | 
|  | {name: '天津',value: Math.round(Math.random()*1000)}, | 
|  | {name: '上海',value: Math.round(Math.random()*1000)}, | 
|  | {name: '重庆',value: Math.round(Math.random()*1000)}, | 
|  | {name: '河北',value: Math.round(Math.random()*1000)}, | 
|  | {name: '安徽',value: Math.round(Math.random()*1000)}, | 
|  | {name: '新疆',value: Math.round(Math.random()*1000)}, | 
|  | {name: '浙江',value: Math.round(Math.random()*1000)}, | 
|  | {name: '江西',value: Math.round(Math.random()*1000)}, | 
|  | {name: '山西',value: Math.round(Math.random()*1000)}, | 
|  | // {name: '内蒙古',value: 891}, | 
|  | {name: '吉林',value: Math.round(Math.random()*1000)}, | 
|  | {name: '福建',value: Math.round(Math.random()*1000)}, | 
|  | {name: '广东',value: Math.round(Math.random()*1000)}, | 
|  | {name: '西藏',value: Math.round(Math.random()*1000)}, | 
|  | {name: '四川',value: Math.round(Math.random()*1000)}, | 
|  | {name: '宁夏',value: Math.round(Math.random()*1000)}, | 
|  | {name: '香港',value: Math.round(Math.random()*1000)}, | 
|  | {name: '澳门',value: Math.round(Math.random()*1000)} | 
|  | ] | 
|  | }, | 
|  | { | 
|  | name: 'iphone5', | 
|  | type: 'map', | 
|  | mapType: 'china', | 
|  | itemStyle: itemStyle, | 
|  | showLegendSymbol: true, | 
|  | label: { | 
|  | normal: { | 
|  | show: true | 
|  | }, | 
|  | emphasis: { | 
|  | show: true | 
|  | } | 
|  | }, | 
|  | data:[ | 
|  | {name: '北京',value: Math.round(Math.random()*1000)}, | 
|  | {name: '天津',value: Math.round(Math.random()*1000)}, | 
|  | {name: '上海',value: Math.round(Math.random()*1000)}, | 
|  | {name: '广东',value: Math.round(Math.random()*1000)}, | 
|  | {name: '台湾',value: Math.round(Math.random()*1000)}, | 
|  | {name: '香港',value: Math.round(Math.random()*1000)}, | 
|  | {name: '澳门',value: Math.round(Math.random()*1000)} | 
|  | ] | 
|  | } | 
|  | ] | 
|  | }; | 
|  |  | 
|  | var chart = testHelper.create(echarts, 'main0', { | 
|  | option: option, | 
|  | height: 550 | 
|  | }); | 
|  |  | 
|  | if (chart) { | 
|  | chart.on('click', function (param) { | 
|  | console.log(param); | 
|  | }); | 
|  | } | 
|  | }); | 
|  |  | 
|  | </script> | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | <script> | 
|  |  | 
|  | require([ | 
|  | 'echarts', | 
|  | 'map/js/china' | 
|  | ], function (echarts) { | 
|  | var itemStyle = { | 
|  | normal:{ | 
|  | borderColor: 'rgba(0, 0, 0, 0.2)' | 
|  | }, | 
|  | emphasis:{ | 
|  | shadowOffsetX: 0, | 
|  | shadowOffsetY: 0, | 
|  | shadowBlur: 20, | 
|  | borderWidth: 0, | 
|  | shadowColor: 'rgba(0, 0, 0, 0.5)' | 
|  | } | 
|  | }; | 
|  | var option = { | 
|  | tooltip: {}, | 
|  | legend: { | 
|  | orient: 'vertical', | 
|  | left: 'left', | 
|  | data:['iphone3','iphone4','iphone5'] | 
|  | }, | 
|  | visualMap: { | 
|  | min: 0, | 
|  | max: 1500, | 
|  | left: 'left', | 
|  | top: 'bottom', | 
|  | text:['高','低'], | 
|  | calculable : true | 
|  | }, | 
|  | selectedMode: 'multiple', | 
|  | series: [ | 
|  | { | 
|  | name: 'iphone3', | 
|  | type: 'map', | 
|  | map: 'china', | 
|  | itemStyle: itemStyle, | 
|  | showLegendSymbol: true, | 
|  | // zoom: 10, | 
|  | // center: [115.97, 29.71], | 
|  | roam: true, | 
|  | label: { | 
|  | show: true, | 
|  | rotate: 40, | 
|  | formatter: '{b}:{value|{c}}', | 
|  | backgroundColor: '#fff', | 
|  | padding: [3, 5], | 
|  | borderRadius: 3, | 
|  | borderWidth: 1, | 
|  | borderColor: 'rgba(0,0,0,0.5)', | 
|  | color: '#934', | 
|  | rich: { | 
|  | value: { | 
|  | color: '#019D2D', | 
|  | fontSize: 14 | 
|  | } | 
|  | } | 
|  | }, | 
|  | emphasis: { | 
|  | label: { | 
|  | show: true, | 
|  | backgroundColor: '#fcf' | 
|  | }, | 
|  | }, | 
|  | data:[ | 
|  | {name: '北京', value: 234}, | 
|  | {name: '天津', value: 432}, | 
|  | {name: '新疆', value: 100}, | 
|  | {name: '陕西', value: 77}, | 
|  | {name: '西藏', value: 101}, | 
|  | ] | 
|  | }, | 
|  | { | 
|  | name: 'iphone4', | 
|  | type: 'map', | 
|  | mapType: 'china', | 
|  | itemStyle: itemStyle, | 
|  | showLegendSymbol: true, | 
|  | label: { | 
|  | show: true, | 
|  | rotate: 90, | 
|  | formatter: '{b}:{value|{c}}', | 
|  | backgroundColor: '#fff', | 
|  | padding: [3, 5], | 
|  | borderRadius: 3, | 
|  | borderWidth: 1, | 
|  | borderColor: 'rgba(0,0,0,0.5)', | 
|  | color: '#934', | 
|  | rich: { | 
|  | value: { | 
|  | color: '#019D2D', | 
|  | fontSize: 14 | 
|  | } | 
|  | } | 
|  | }, | 
|  | emphasis: { | 
|  | label: { | 
|  | show: true, | 
|  | backgroundColor: '#fcf' | 
|  | } | 
|  | }, | 
|  | data:[ | 
|  | {name: '北京',value: 567}, | 
|  | {name: '河北',value: 321}, | 
|  | {name: '新疆', value: 100}, | 
|  | {name: '内蒙古', value: 99}, | 
|  | {name: '西藏', value: 101} | 
|  | ] | 
|  | } | 
|  | ] | 
|  | }; | 
|  |  | 
|  | var chart = testHelper.create(echarts, 'main1', { | 
|  | option: option, | 
|  | // recordCanvas: true, | 
|  | title: [ | 
|  | '1. 北京、天津、河北 rich text 正常倾斜(河北竖直)(其他 region 都没数据,显示 NaN)', | 
|  | '2. selectedMode: "multiple"', | 
|  | '3. hover 时标签底色变红', | 
|  | '所有 label 样式一致(例外:没数据的 label 并不 rotate,因为这还没支持)' | 
|  | ] | 
|  | }); | 
|  |  | 
|  | chart && chart.on('click', function (param) { | 
|  | console.log(param); | 
|  | }); | 
|  | }); | 
|  |  | 
|  | </script> | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | <script> | 
|  |  | 
|  | require([ | 
|  | 'echarts', | 
|  | 'map/js/china' | 
|  | ], function (echarts) { | 
|  | var locations = [{ | 
|  | name: '上海', | 
|  | coord: [121.472644, 31.231706] | 
|  | }, { | 
|  | name: '北京', | 
|  | coord: [116.405285, 39.904989] | 
|  | }, { | 
|  | name: '广东', | 
|  | coord: [113.280637, 23.839463714285714] | 
|  | }]; | 
|  | option = { | 
|  | tooltip: { | 
|  | trigger: 'item', | 
|  | formatter: '{b}' | 
|  | }, | 
|  | series: [ | 
|  | { | 
|  | name: '中国', | 
|  | type: 'map', | 
|  | mapType: 'china', | 
|  | selectedMode : 'multiple', | 
|  | label: { | 
|  | show: true | 
|  | } | 
|  | } | 
|  | ] | 
|  | }; | 
|  | var myChart = testHelper.create(echarts, 'main2', { | 
|  | option: option, | 
|  | height: 550, | 
|  | title: ['Animation when changing map zoom and center'] | 
|  | }); | 
|  | var currentLoc = 0; | 
|  | setInterval(function () { | 
|  | myChart.setOption({ | 
|  | series: [{ | 
|  | center: locations[currentLoc].coord, | 
|  | zoom: 4, | 
|  | data: [ | 
|  | {name: locations[currentLoc].name, selected: true} | 
|  | ], | 
|  | animationDurationUpdate: 1000, | 
|  | animationEasingUpdate: 'cubicInOut' | 
|  | }] | 
|  | }); | 
|  | currentLoc = (currentLoc + 1) % locations.length; | 
|  | }, 2000); | 
|  |  | 
|  | }); | 
|  |  | 
|  | </script> | 
|  |  | 
|  |  | 
|  |  | 
|  | </body> | 
|  | </html> |