echarts/echarts-map.js


echarts-map.js

// (c) 2010-2013 Thomas Fuchs

// Zepto.js may be freely distributed under the MIT license.

// Copyright 2006 Google Inc.

//   http://www.apache.org/licenses/LICENSE-2.0

/*!
 * ZRender, a lightweight canvas library with a MVC architecture, data-driven 
 * and provides an event model like DOM.
 *  
 * Copyright (c) 2013, Baidu Inc.
 * All rights reserved.
 * 
 * LICENSE
 * https://github.com/ecomfe/zrender/blob/master/LICENSE.txt
 */

/*!
 * ECharts, a javascript interactive chart library.
 *  
 * Copyright (c) 2013, Baidu Inc.
 * All rights reserved.
 * 
 * LICENSE
 * https://github.com/ecomfe/echarts/blob/master/LICENSE.txt
 */

define("zrender/tool/env", [], function () {
    function e(e) {
        var t = this.os = {}, n = this.browser = {}, r = e.match(/Web[kK]it[\/]{0,1}([\d.]+)/),
            i = e.match(/(Android);?[\s\/]+([\d.]+)?/), s = e.match(/(iPad).*OS\s([\d_]+)/),
            o = e.match(/(iPod)(.*OS\s([\d_]+))?/), u = !s && e.match(/(iPhone\sOS)\s([\d_]+)/),
            a = e.match(/(webOS|hpwOS)[\s\/]([\d.]+)/), f = a && e.match(/TouchPad/), l = e.match(/Kindle\/([\d.]+)/),
            c = e.match(/Silk\/([\d._]+)/), h = e.match(/(BlackBerry).*Version\/([\d.]+)/),
            p = e.match(/(BB10).*Version\/([\d.]+)/), d = e.match(/(RIM\sTablet\sOS)\s([\d.]+)/),
            v = e.match(/PlayBook/), m = e.match(/Chrome\/([\d.]+)/) || e.match(/CriOS\/([\d.]+)/),
            g = e.match(/Firefox\/([\d.]+)/), y = e.match(/MSIE ([\d.]+)/), b = r && e.match(/Mobile\//) && !m,
            w = e.match(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/) && !m, y = e.match(/MSIE\s([\d.]+)/);
        if (n.webkit = !!r) n.version = r[1];
        return i && (t.android = !0, t.version = i[2]), u && !o && (t.ios = t.iphone = !0, t.version = u[2].replace(/_/g, ".")), s && (t.ios = t.ipad = !0, t.version = s[2].replace(/_/g, ".")), o && (t.ios = t.ipod = !0, t.version = o[3] ? o[3].replace(/_/g, ".") : null), a && (t.webos = !0, t.version = a[2]), f && (t.touchpad = !0), h && (t.blackberry = !0, t.version = h[2]), p && (t.bb10 = !0, t.version = p[2]), d && (t.rimtabletos = !0, t.version = d[2]), v && (n.playbook = !0), l && (t.kindle = !0, t.version = l[1]), c && (n.silk = !0, n.version = c[1]), !c && t.android && e.match(/Kindle Fire/) && (n.silk = !0), m && (n.chrome = !0, n.version = m[1]), g && (n.firefox = !0, n.version = g[1]), y && (n.ie = !0, n.version = y[1]), b && (e.match(/Safari/) || !!t.ios) && (n.safari = !0), w && (n.webview = !0), y && (n.ie = !0, n.version = y[1]), t.tablet = !!(s || v || i && !e.match(/Mobile/) || g && e.match(/Tablet/) || y && !e.match(/Phone/) && e.match(/Touch/)), t.phone = !!(!t.tablet && !t.ipod && (i || u || a || h || p || m && e.match(/Android/) || m && e.match(/CriOS\/([\d.]+)/) || g && e.match(/Mobile/) || y && e.match(/Touch/))), {
            browser: n,
            os: t,
            canvasSupported: document.createElement("canvas").getContext ? !0 : !1
        }
    }

    return e(navigator.userAgent)
}), define("echarts/config", [], function () {
    var e = {
        CHART_TYPE_LINE: "line",
        CHART_TYPE_BAR: "bar",
        CHART_TYPE_SCATTER: "scatter",
        CHART_TYPE_PIE: "pie",
        CHART_TYPE_RADAR: "radar",
        CHART_TYPE_MAP: "map",
        CHART_TYPE_K: "k",
        CHART_TYPE_ISLAND: "island",
        CHART_TYPE_FORCE: "force",
        CHART_TYPE_CHORD: "chord",
        COMPONENT_TYPE_TITLE: "title",
        COMPONENT_TYPE_LEGEND: "legend",
        COMPONENT_TYPE_DATARANGE: "dataRange",
        COMPONENT_TYPE_DATAVIEW: "dataView",
        COMPONENT_TYPE_DATAZOOM: "dataZoom",
        COMPONENT_TYPE_TOOLBOX: "toolbox",
        COMPONENT_TYPE_TOOLTIP: "tooltip",
        COMPONENT_TYPE_GRID: "grid",
        COMPONENT_TYPE_AXIS: "axis",
        COMPONENT_TYPE_POLAR: "polar",
        COMPONENT_TYPE_X_AXIS: "xAxis",
        COMPONENT_TYPE_Y_AXIS: "yAxis",
        COMPONENT_TYPE_AXIS_CATEGORY: "categoryAxis",
        COMPONENT_TYPE_AXIS_VALUE: "valueAxis",
        color: ["#ff7f50", "#87cefa", "#da70d6", "#32cd32", "#6495ed", "#ff69b4", "#ba55d3", "#cd5c5c", "#ffa500", "#40e0d0", "#1e90ff", "#ff6347", "#7b68ee", "#00fa9a", "#ffd700", "#6699FF", "#ff6666", "#3cb371", "#b8860b", "#30e0e0"],
        title: {
            text: "",
            subtext: "",
            x: "left",
            y: "top",
            backgroundColor: "rgba(0,0,0,0)",
            borderColor: "#ccc",
            borderWidth: 0,
            padding: 5,
            itemGap: 10,
            textStyle: {fontSize: 18, fontWeight: "bolder", color: "#333"},
            subtextStyle: {color: "#aaa"}
        },
        legend: {
            orient: "horizontal",
            x: "center",
            y: "top",
            backgroundColor: "rgba(0,0,0,0)",
            borderColor: "#ccc",
            borderWidth: 0,
            padding: 5,
            itemGap: 10,
            itemWidth: 20,
            itemHeight: 14,
            textStyle: {color: "#333"},
            selectedMode: !0
        },
        dataRange: {
            orient: "vertical",
            x: "left",
            y: "bottom",
            backgroundColor: "rgba(0,0,0,0)",
            borderColor: "#ccc",
            borderWidth: 0,
            padding: 5,
            itemGap: 10,
            itemWidth: 20,
            itemHeight: 14,
            precision: 0,
            splitNumber: 5,
            calculable: !1,
            realtime: !0,
            color: ["#006edd", "#e0ffff"],
            textStyle: {color: "#333"}
        },
        toolbox: {
            show: !1,
            orient: "horizontal",
            x: "right",
            y: "top",
            color: ["#1e90ff", "#22bb22", "#4b0082", "#d2691e"],
            backgroundColor: "rgba(0,0,0,0)",
            borderColor: "#ccc",
            borderWidth: 0,
            padding: 5,
            itemGap: 10,
            itemSize: 16,
            showTitle: !0,
            feature: {
                mark: {
                    show: !1,
                    title: {mark: "辅助线开关", markUndo: "删除辅助线", markClear: "清空辅助线"},
                    lineStyle: {width: 1, color: "#1e90ff", type: "dashed"}
                },
                dataZoom: {show: !1, title: {dataZoom: "区域缩放", dataZoomReset: "区域缩放后退"}},
                dataView: {show: !1, title: "数据视图", readOnly: !1, lang: ["Data View", "close", "refresh"]},
                magicType: {show: !1, title: {line: "折线图切换", bar: "柱形图切换", stack: "堆叠", tiled: "平铺"}, type: []},
                restore: {show: !1, title: "还原"},
                saveAsImage: {show: !1, title: "保存为图片", type: "png", lang: ["点击保存"]}
            }
        },
        tooltip: {
            show: !0,
            showContent: !0,
            trigger: "item",
            islandFormatter: "{a} 
{b} : {c}", showDelay: 20, hideDelay: 100, transitionDuration: .4, backgroundColor: "rgba(0,0,0,0.7)", borderColor: "#333", borderRadius: 4, borderWidth: 0, padding: 5, axisPointer: { type: "line", lineStyle: {color: "#48b", width: 2, type: "solid"}, areaStyle: {size: "auto", color: "rgba(150,150,150,0.3)"} }, textStyle: {color: "#fff"} }, dataZoom: { show: !1, orient: "horizontal", backgroundColor: "rgba(0,0,0,0)", dataBackgroundColor: "#eee", fillerColor: "rgba(144,197,237,0.2)", handleColor: "rgba(70,130,180,0.8)", realtime: !0 }, grid: {x: 80, y: 60, x2: 80, y2: 60, backgroundColor: "rgba(0,0,0,0)", borderWidth: 1, borderColor: "#ccc"}, categoryAxis: { position: "bottom", name: "", nameLocation: "end", nameTextStyle: {}, boundaryGap: !0, axisLine: {show: !0, lineStyle: {color: "#48b", width: 2, type: "solid"}}, axisTick: {show: !0, interval: "auto", inside: !1, length: 5, lineStyle: {color: "#333", width: 1}}, axisLabel: {show: !0, interval: "auto", rotate: 0, margin: 8, textStyle: {color: "#333"}}, splitLine: {show: !0, lineStyle: {color: ["#ccc"], width: 1, type: "solid"}}, splitArea: {show: !1, areaStyle: {color: ["rgba(250,250,250,0.3)", "rgba(200,200,200,0.3)"]}} }, valueAxis: { position: "left", name: "", nameLocation: "end", nameTextStyle: {}, boundaryGap: [0, 0], precision: 0, power: 100, splitNumber: 5, axisLine: {show: !0, lineStyle: {color: "#48b", width: 2, type: "solid"}}, axisTick: {show: !1, inside: !1, length: 5, lineStyle: {color: "#333", width: 1}}, axisLabel: {show: !0, rotate: 0, margin: 8, textStyle: {color: "#333"}}, splitLine: {show: !0, lineStyle: {color: ["#ccc"], width: 1, type: "solid"}}, splitArea: {show: !1, areaStyle: {color: ["rgba(250,250,250,0.3)", "rgba(200,200,200,0.3)"]}} }, polar: { center: ["50%", "50%"], radius: "75%", startAngle: 90, splitNumber: 5, name: {show: !0, textStyle: {color: "#333"}}, axisLine: {show: !0, lineStyle: {color: "#ccc", width: 1, type: "solid"}}, axisLabel: {show: !1, textStyle: {color: "#333"}}, splitArea: {show: !0, areaStyle: {color: ["rgba(250,250,250,0.3)", "rgba(200,200,200,0.3)"]}}, splitLine: {show: !0, lineStyle: {width: 1, color: "#ccc"}} }, bar: { xAxisIndex: 0, yAxisIndex: 0, barMinHeight: 0, barGap: "30%", barCategoryGap: "20%", itemStyle: { normal: {borderColor: "#fff", borderRadius: 0, borderWidth: 0, label: {show: !1}}, emphasis: {borderColor: "#fff", borderRadius: 0, borderWidth: 0, label: {show: !1}} } }, line: { xAxisIndex: 0, yAxisIndex: 0, itemStyle: { normal: { label: {show: !1}, lineStyle: { width: 2, type: "solid", shadowColor: "rgba(0,0,0,0)", shadowBlur: 0, shadowOffsetX: 0, shadowOffsetY: 0 } }, emphasis: {label: {show: !1}} }, symbolSize: 2, showAllSymbol: !1 }, k: { xAxisIndex: 0, yAxisIndex: 0, itemStyle: { normal: { color: "#fff", color0: "#00aa11", lineStyle: {width: 1, color: "#ff3200", color0: "#00aa11"} }, emphasis: {} } }, scatter: { xAxisIndex: 0, yAxisIndex: 0, symbolSize: 4, large: !1, largeThreshold: 2e3, itemStyle: { normal: { label: { show: !1, formatter: function (e, t, n) { return typeof n[2] != "undefined" ? n[2] : n[0] + " , " + n[1] } } }, emphasis: { label: { show: !1, formatter: function (e, t, n) { return typeof n[2] != "undefined" ? n[2] : n[0] + " , " + n[1] } } } } }, radar: { polarIndex: 0, itemStyle: { normal: {label: {show: !1}, lineStyle: {width: 2, type: "solid"}}, emphasis: {label: {show: !1}} }, symbolSize: 2 }, pie: { center: ["50%", "50%"], radius: [0, "75%"], clockWise: !0, startAngle: 90, minAngle: 0, selectedOffset: 10, itemStyle: { normal: { borderColor: "#fff", borderWidth: 1, label: {show: !0, position: "outer"}, labelLine: {show: !0, length: 20, lineStyle: {width: 1, type: "solid"}} }, emphasis: { borderColor: "rgba(0,0,0,0)", borderWidth: 1, label: {show: !1}, labelLine: {show: !1, length: 20, lineStyle: {width: 1, type: "solid"}} } } }, map: { mapType: "china", mapLocation: {x: "center", y: "center"}, mapValuePrecision: 0, showLegendSymbol: !0, hoverable: !0, itemStyle: { normal: { borderColor: "#fff", borderWidth: 1, areaStyle: {color: "#ccc"}, label: {show: !1, textStyle: {color: "rgb(139,69,19)"}} }, emphasis: { borderColor: "rgba(0,0,0,0)", borderWidth: 1, areaStyle: {color: "rgba(255,215,0,0.8)"}, label: {show: !1, textStyle: {color: "rgb(100,0,0)"}} } } }, force: { minRadius: 10, maxRadius: 20, density: 1, attractiveness: 1, initSize: 300, centripetal: 1, coolDown: .99, categories: [], itemStyle: { normal: { label: {show: !1}, nodeStyle: {brushType: "both", color: "#f08c2e", strokeColor: "#5182ab"}, linkStyle: {strokeColor: "#5182ab"} }, emphasis: {label: {show: !1}, nodeStyle: {}, linkStyle: {}} } }, chord: { radius: ["65%", "75%"], center: ["50%", "50%"], padding: 2, sort: "none", sortSub: "none", startAngle: 90, clockWise: !1, showScale: !1, showScaleText: !1, itemStyle: { normal: { label: {show: !0}, lineStyle: {width: 0, color: "#000"}, chordStyle: {lineStyle: {width: 1, color: "#666"}} }, emphasis: {lineStyle: {width: 0, color: "#000"}, chordStyle: {lineStyle: {width: 2, color: "#333"}}} }, matrix: [] }, island: {r: 15, calculateStep: .1}, markPoint: { symbol: "pin", symbolSize: 10, effect: {show: !1, period: 15, scaleSize: 2}, itemStyle: {normal: {borderWidth: 2, label: {show: !0, position: "inside"}}, emphasis: {label: {show: !0}}} }, markLine: { symbol: ["circle", "arrow"], symbolSize: [2, 4], effect: {show: !1, period: 15, scaleSize: 2}, itemStyle: { normal: { borderWidth: 1.5, label: {show: !0, position: "end"}, lineStyle: { type: "dashed", shadowColor: "rgba(0,0,0,0)", shadowBlur: 0, shadowOffsetX: 0, shadowOffsetY: 0 } }, emphasis: {label: {show: !1}, lineStyle: {}} } }, textStyle: { decoration: "none", fontFamily: "Arial, Verdana, sans-serif", fontFamily2: "微软雅黑", fontSize: 12, fontStyle: "normal", fontWeight: "normal" }, EVENT: { REFRESH: "refresh", RESTORE: "restore", RESIZE: "resize", CLICK: "click", HOVER: "hover", DATA_CHANGED: "dataChanged", DATA_ZOOM: "dataZoom", DATA_RANGE: "dataRange", LEGEND_SELECTED: "legendSelected", MAP_SELECTED: "mapSelected", PIE_SELECTED: "pieSelected", MAGIC_TYPE_CHANGED: "magicTypeChanged", DATA_VIEW_CHANGED: "dataViewChanged", MAP_ROAM: "mapRoam", TOOLTIP_HOVER: "tooltipHover", TOOLTIP_IN_GRID: "tooltipInGrid", TOOLTIP_OUT_GRID: "tooltipOutGrid" }, DRAG_ENABLE_TIME: 150, symbolList: ["circle", "rectangle", "triangle", "diamond", "emptyCircle", "emptyRectangle", "emptyTriangle", "emptyDiamond"], loadingText: "Loading...", calculable: !1, calculableColor: "rgba(255,165,0,0.6)", calculableHolderColor: "#ccc", nameConnector: " & ", valueConnector: " : ", animation: !0, addDataAnimation: !0, animationThreshold: 2500, animationDuration: 2e3, animationEasing: "ExponentialOut" }; return e }), define("zrender/tool/vector", [], function () { var e = typeof Float32Array == "undefined" ? Array : Float32Array, t = { create: function (t, n) { var r = new e(2); return r[0] = t || 0, r[1] = n || 0, r }, copy: function (e, t) { e[0] = t[0], e[1] = t[1] }, set: function (e, t, n) { e[0] = t, e[1] = n }, add: function (e, t, n) { return e[0] = t[0] + n[0], e[1] = t[1] + n[1], e }, scaleAndAdd: function (e, t, n, r) { return e[0] = t[0] + n[0] * r, e[1] = t[1] + n[1] * r, e }, sub: function (e, t, n) { return e[0] = t[0] - n[0], e[1] = t[1] - n[1], e }, length: function (e) { return Math.sqrt(this.lengthSquare(e)) }, lengthSquare: function (e) { return e[0] * e[0] + e[1] * e[1] }, mul: function (e, t, n) { return e[0] = t[0] * n[0], e[1] = t[1] * n[1], e }, dot: function (e, t) { return e[0] * t[0] + e[1] * t[1] }, scale: function (e, t, n) { return e[0] = t[0] * n, e[1] = t[1] * n, e }, normalize: function (e, n) { var r = t.length(n); return r === 0 ? (e[0] = 0, e[1] = 0) : (e[0] = n[0] / r, e[1] = n[1] / r), e }, distance: function (e, t) { return Math.sqrt((e[0] - t[0]) * (e[0] - t[0]) + (e[1] - t[1]) * (e[1] - t[1])) }, negate: function (e, t) { e[0] = -t[0], e[1] = -t[1] }, middle: function (e, t, n) { return e[0] = (t[0] + n[0]) / 2, e[1] = (t[1] + n[1]) / 2, e } }; return t }), define("zrender/lib/excanvas", ["require"], function (e) { return document.createElement("canvas").getContext ? G_vmlCanvasManager = !1 : function () { function f() { return this.context_ || (this.context_ = new I(this)) } function c(e, t, n) { var r = l.call(arguments, 2); return function () { return e.apply(t, r.concat(l.call(arguments))) } } function h(e) { return String(e).replace(/&/g, "&").replace(/"/g, """) } function p(e, t, n) { e.namespaces[t] || e.namespaces.add(t, n, "#default#VML") } function d(e) { p(e, "g_vml_", "urn:schemas-microsoft-com:vml"), p(e, "g_o_", "urn:schemas-microsoft-com:office:office"); if (!e.styleSheets.ex_canvas_) { var t = e.createStyleSheet(); t.owningElement.id = "ex_canvas_", t.cssText = "canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}" } } function m(e) { var t = e.srcElement; switch (e.propertyName) { case"width": t.getContext().clearRect(), t.style.width = t.attributes.width.nodeValue + "px", t.firstChild.style.width = t.clientWidth + "px"; break; case"height": t.getContext().clearRect(), t.style.height = t.attributes.height.nodeValue + "px", t.firstChild.style.height = t.clientHeight + "px" } } function g(e) { var t = e.srcElement; t.firstChild && (t.firstChild.style.width = t.clientWidth + "px", t.firstChild.style.height = t.clientHeight + "px") } function E() { return [[1, 0, 0], [0, 1, 0], [0, 0, 1]] } function S(e, t) { var n = E(); for (var r = 0; r < 3; r++)for (var i = 0; i < 3; i++) { var s = 0; for (var o = 0; o < 3; o++)s += e[r][o] * t[o][i]; n[r][i] = s } return n } function x(e, t) { t.fillStyle = e.fillStyle, t.lineCap = e.lineCap, t.lineJoin = e.lineJoin, t.lineWidth = e.lineWidth, t.miterLimit = e.miterLimit, t.shadowBlur = e.shadowBlur, t.shadowColor = e.shadowColor, t.shadowOffsetX = e.shadowOffsetX, t.shadowOffsetY = e.shadowOffsetY, t.strokeStyle = e.strokeStyle, t.globalAlpha = e.globalAlpha, t.font = e.font, t.textAlign = e.textAlign, t.textBaseline = e.textBaseline, t.arcScaleX_ = e.arcScaleX_, t.arcScaleY_ = e.arcScaleY_, t.lineScale_ = e.lineScale_ } function N(e) { var t = e.indexOf("(", 3), n = e.indexOf(")", t + 1), r = e.substring(t + 1, n).split(","); if (r.length != 4 || e.charAt(3) != "a") r[3] = 1; return r } function C(e) { return parseFloat(e) / 100 } function k(e, t, n) { return Math.min(n, Math.max(t, e)) } function L(e) { var t, n, r, i, s, o; i = parseFloat(e[0]) / 360 % 360, i < 0 && i++, s = k(C(e[1]), 0, 1), o = k(C(e[2]), 0, 1); if (s == 0) t = n = r = o; else { var u = o < .5 ? o * (1 + s) : o + s - o * s, a = 2 * o - u; t = A(a, u, i + 1 / 3), n = A(a, u, i), r = A(a, u, i - 1 / 3) } return "#" + y[Math.floor(t * 255)] + y[Math.floor(n * 255)] + y[Math.floor(r * 255)] } function A(e, t, n) { return n < 0 && n++, n > 1 && n--, 6 * n < 1 ? e + (t - e) * 6 * n : 2 * n < 1 ? t : 3 * n < 2 ? e + (t - e) * (2 / 3 - n) * 6 : e } function M(e) { if (e in O)return O[e]; var t, n = 1; e = String(e); if (e.charAt(0) == "#") t = e; else if (/^rgb/.test(e)) { var r = N(e), t = "#", i; for (var s = 0; s < 3; s++)r[s].indexOf("%") != -1 ? i = Math.floor(C(r[s]) * 255) : i = +r[s], t += y[k(i, 0, 255)]; n = +r[3] } else if (/^hsl/.test(e)) { var r = N(e); t = L(r), n = r[3] } else t = T[e] || e; return O[e] = {color: t, alpha: n} } function P(e) { if (D[e])return D[e]; var t = document.createElement("div"), n = t.style, r; try { n.font = e, r = n.fontFamily.split(",")[0] } catch (i) { } return D[e] = { style: n.fontStyle || _.style, variant: n.fontVariant || _.variant, weight: n.fontWeight || _.weight, size: n.fontSize || _.size, family: r || _.family } } function H(e, t) { var n = {}; for (var r in e)n[r] = e[r]; var i = parseFloat(t.currentStyle.fontSize), s = parseFloat(e.size); return typeof e.size == "number" ? n.size = e.size : e.size.indexOf("px") != -1 ? n.size = s : e.size.indexOf("em") != -1 ? n.size = i * s : e.size.indexOf("%") != -1 ? n.size = i / 100 * s : e.size.indexOf("pt") != -1 ? n.size = s / .75 : n.size = i, n } function B(e) { return e.style + " " + e.variant + " " + e.weight + " " + e.size + "px '" + e.family + "'" } function F(e) { return j[e] || "square" } function I(e) { this.m_ = E(), this.mStack_ = [], this.aStack_ = [], this.currentPath_ = [], this.strokeStyle = "#000", this.fillStyle = "#000", this.lineWidth = 1, this.lineJoin = "miter", this.lineCap = "butt", this.miterLimit = o * 1, this.globalAlpha = 1, this.font = "12px 微软雅黑", this.textAlign = "left", this.textBaseline = "alphabetic", this.canvas = e; var t = "width:" + e.clientWidth + "px;height:" + e.clientHeight + "px;overflow:hidden;position:absolute", n = e.ownerDocument.createElement("div"); n.style.cssText = t, e.appendChild(n); var r = n.cloneNode(!1); r.style.backgroundColor = "#fff", r.style.filter = "alpha(opacity=0)", e.appendChild(r), this.element_ = n, this.arcScaleX_ = 1, this.arcScaleY_ = 1, this.lineScale_ = 1 } function R(e, t, n, r) { e.currentPath_.push({ type: "bezierCurveTo", cp1x: t.x, cp1y: t.y, cp2x: n.x, cp2y: n.y, x: r.x, y: r.y }), e.currentX_ = r.x, e.currentY_ = r.y } function U(e, t) { var n = M(e.strokeStyle), r = n.color, i = n.alpha * e.globalAlpha, s = e.lineScale_ * e.lineWidth; s < 1 && (i *= s), t.push("') } function z(t, n, r, i) { var s = t.fillStyle, u = t.arcScaleX_, a = t.arcScaleY_, f = i.x - r.x, l = i.y - r.y; if (s instanceof $) { var c = 0, h = {x: 0, y: 0}, p = 0, d = 1; if (s.type_ == "gradient") { var v = s.x0_ / u, m = s.y0_ / a, g = s.x1_ / u, y = s.y1_ / a, b = W(t, v, m), w = W(t, g, y), E = w.x - b.x, S = w.y - b.y; c = Math.atan2(E, S) * 180 / Math.PI, c < 0 && (c += 360), c < 1e-6 && (c = 0) } else { var b = W(t, s.x0_, s.y0_); h = {x: (b.x - r.x) / f, y: (b.y - r.y) / l}, f /= u * o, l /= a * o; var x = e.max(f, l); p = 2 * s.r0_ / x, d = 2 * s.r1_ / x - p } var T = s.colors_; T.sort(function (e, t) { return e.offset - t.offset }); var N = T.length, C = T[0].color, k = T[N - 1].color, L = T[0].alpha * t.globalAlpha, A = T[N - 1].alpha * t.globalAlpha, O = []; for (var _ = 0; _ < N; _++) { var D = T[_]; O.push(D.offset * d + p + " " + D.color) } n.push('') } else if (s instanceof J) { if (f && l) { var P = -r.x, H = -r.y; n.push("') } } else { var B = M(t.fillStyle), j = B.color, F = B.alpha * t.globalAlpha; n.push('') } } function W(e, t, n) { var r = e.m_; return {x: o * (t * r[0][0] + n * r[1][0] + r[2][0]) - u, y: o * (t * r[0][1] + n * r[1][1] + r[2][1]) - u} } function X(e) { return isFinite(e[0][0]) && isFinite(e[0][1]) && isFinite(e[1][0]) && isFinite(e[1][1]) && isFinite(e[2][0]) && isFinite(e[2][1]) } function V(e, t, n) { if (!X(t))return; e.m_ = t; if (n) { var r = t[0][0] * t[1][1] - t[0][1] * t[1][0]; e.lineScale_ = s(i(r)) } } function $(e) { this.type_ = e, this.x0_ = 0, this.y0_ = 0, this.r0_ = 0, this.x1_ = 0, this.y1_ = 0, this.r1_ = 0, this.colors_ = [] } function J(e, t) { Q(e); switch (t) { case"repeat": case null: case"": this.repetition_ = "repeat"; break; case"repeat-x": case"repeat-y": case"no-repeat": this.repetition_ = t; break; default: K("SYNTAX_ERR") } this.src_ = e.src, this.width_ = e.width, this.height_ = e.height } function K(e) { throw new G(e) } function Q(e) { (!e || e.nodeType != 1 || e.tagName != "IMG") && K("TYPE_MISMATCH_ERR"), e.readyState != "complete" && K("INVALID_STATE_ERR") } function G(e) { this.code = this[e], this.message = e + ": DOM Exception " + this.code } var e = Math, t = e.round, n = e.sin, r = e.cos, i = e.abs, s = e.sqrt, o = 10, u = o / 2, a = +navigator.userAgent.match(/MSIE ([\d.]+)?/)[1], l = Array.prototype.slice; d(document); var v = { init: function (e) { var t = e || document; t.createElement("canvas"), t.attachEvent("onreadystatechange", c(this.init_, this, t)) }, init_: function (e) { var t = e.getElementsByTagName("canvas"); for (var n = 0; n < t.length; n++)this.initElement(t[n]) }, initElement: function (e) { if (!e.getContext) { e.getContext = f, d(e.ownerDocument), e.innerHTML = "", e.attachEvent("onpropertychange", m), e.attachEvent("onresize", g); var t = e.attributes; t.width && t.width.specified ? e.style.width = t.width.nodeValue + "px" : e.width = e.clientWidth, t.height && t.height.specified ? e.style.height = t.height.nodeValue + "px" : e.height = e.clientHeight } return e } }; v.init(); var y = []; for (var b = 0; b < 16; b++)for (var w = 0; w < 16; w++)y[b * 16 + w] = b.toString(16) + w.toString(16); var T = { aliceblue: "#F0F8FF", antiquewhite: "#FAEBD7", aquamarine: "#7FFFD4", azure: "#F0FFFF", beige: "#F5F5DC", bisque: "#FFE4C4", black: "#000000", blanchedalmond: "#FFEBCD", blueviolet: "#8A2BE2", brown: "#A52A2A", burlywood: "#DEB887", cadetblue: "#5F9EA0", chartreuse: "#7FFF00", chocolate: "#D2691E", coral: "#FF7F50", cornflowerblue: "#6495ED", cornsilk: "#FFF8DC", crimson: "#DC143C", cyan: "#00FFFF", darkblue: "#00008B", darkcyan: "#008B8B", darkgoldenrod: "#B8860B", darkgray: "#A9A9A9", darkgreen: "#006400", darkgrey: "#A9A9A9", darkkhaki: "#BDB76B", darkmagenta: "#8B008B", darkolivegreen: "#556B2F", darkorange: "#FF8C00", darkorchid: "#9932CC", darkred: "#8B0000", darksalmon: "#E9967A", darkseagreen: "#8FBC8F", darkslateblue: "#483D8B", darkslategray: "#2F4F4F", darkslategrey: "#2F4F4F", darkturquoise: "#00CED1", darkviolet: "#9400D3", deeppink: "#FF1493", deepskyblue: "#00BFFF", dimgray: "#696969", dimgrey: "#696969", dodgerblue: "#1E90FF", firebrick: "#B22222", floralwhite: "#FFFAF0", forestgreen: "#228B22", gainsboro: "#DCDCDC", ghostwhite: "#F8F8FF", gold: "#FFD700", goldenrod: "#DAA520", grey: "#808080", greenyellow: "#ADFF2F", honeydew: "#F0FFF0", hotpink: "#FF69B4", indianred: "#CD5C5C", indigo: "#4B0082", ivory: "#FFFFF0", khaki: "#F0E68C", lavender: "#E6E6FA", lavenderblush: "#FFF0F5", lawngreen: "#7CFC00", lemonchiffon: "#FFFACD", lightblue: "#ADD8E6", lightcoral: "#F08080", lightcyan: "#E0FFFF", lightgoldenrodyellow: "#FAFAD2", lightgreen: "#90EE90", lightgrey: "#D3D3D3", lightpink: "#FFB6C1", lightsalmon: "#FFA07A", lightseagreen: "#20B2AA", lightskyblue: "#87CEFA", lightslategray: "#778899", lightslategrey: "#778899", lightsteelblue: "#B0C4DE", lightyellow: "#FFFFE0", limegreen: "#32CD32", linen: "#FAF0E6", magenta: "#FF00FF", mediumaquamarine: "#66CDAA", mediumblue: "#0000CD", mediumorchid: "#BA55D3", mediumpurple: "#9370DB", mediumseagreen: "#3CB371", mediumslateblue: "#7B68EE", mediumspringgreen: "#00FA9A", mediumturquoise: "#48D1CC", mediumvioletred: "#C71585", midnightblue: "#191970", mintcream: "#F5FFFA", mistyrose: "#FFE4E1", moccasin: "#FFE4B5", navajowhite: "#FFDEAD", oldlace: "#FDF5E6", olivedrab: "#6B8E23", orange: "#FFA500", orangered: "#FF4500", orchid: "#DA70D6", palegoldenrod: "#EEE8AA", palegreen: "#98FB98", paleturquoise: "#AFEEEE", palevioletred: "#DB7093", papayawhip: "#FFEFD5", peachpuff: "#FFDAB9", peru: "#CD853F", pink: "#FFC0CB", plum: "#DDA0DD", powderblue: "#B0E0E6", rosybrown: "#BC8F8F", royalblue: "#4169E1", saddlebrown: "#8B4513", salmon: "#FA8072", sandybrown: "#F4A460", seagreen: "#2E8B57", seashell: "#FFF5EE", sienna: "#A0522D", skyblue: "#87CEEB", slateblue: "#6A5ACD", slategray: "#708090", slategrey: "#708090", snow: "#FFFAFA", springgreen: "#00FF7F", steelblue: "#4682B4", tan: "#D2B48C", thistle: "#D8BFD8", tomato: "#FF6347", turquoise: "#40E0D0", violet: "#EE82EE", wheat: "#F5DEB3", whitesmoke: "#F5F5F5", yellowgreen: "#9ACD32" }, O = {}, _ = {style: "normal", variant: "normal", weight: "normal", size: 12, family: "微软雅黑"}, D = {}, j = {butt: "flat", round: "round"}, q = I.prototype; q.clearRect = function () { this.textMeasureEl_ && (this.textMeasureEl_.removeNode(!0), this.textMeasureEl_ = null), this.element_.innerHTML = "" }, q.beginPath = function () { this.currentPath_ = [] }, q.moveTo = function (e, t) { var n = W(this, e, t); this.currentPath_.push({type: "moveTo", x: n.x, y: n.y}), this.currentX_ = n.x, this.currentY_ = n.y }, q.lineTo = function (e, t) { var n = W(this, e, t); this.currentPath_.push({type: "lineTo", x: n.x, y: n.y}), this.currentX_ = n.x, this.currentY_ = n.y }, q.bezierCurveTo = function (e, t, n, r, i, s) { var o = W(this, i, s), u = W(this, e, t), a = W(this, n, r); R(this, u, a, o) }, q.quadraticCurveTo = function (e, t, n, r) { var i = W(this, e, t), s = W(this, n, r), o = { x: this.currentX_ + 2 / 3 * (i.x - this.currentX_), y: this.currentY_ + 2 / 3 * (i.y - this.currentY_) }, u = {x: o.x + (s.x - this.currentX_) / 3, y: o.y + (s.y - this.currentY_) / 3}; R(this, o, u, s) }, q.arc = function (e, t, i, s, a, f) { i *= o; var l = f ? "at" : "wa", c = e + r(s) * i - u, h = t + n(s) * i - u, p = e + r(a) * i - u, d = t + n(a) * i - u; c == p && !f && (c += .125); var v = W(this, e, t), m = W(this, c, h), g = W(this, p, d); this.currentPath_.push({type: l, x: v.x, y: v.y, radius: i, xStart: m.x, yStart: m.y, xEnd: g.x, yEnd: g.y}) }, q.rect = function (e, t, n, r) { this.moveTo(e, t), this.lineTo(e + n, t), this.lineTo(e + n, t + r), this.lineTo(e, t + r), this.closePath() }, q.strokeRect = function (e, t, n, r) { var i = this.currentPath_; this.beginPath(), this.moveTo(e, t), this.lineTo(e + n, t), this.lineTo(e + n, t + r), this.lineTo(e, t + r), this.closePath(), this.stroke(), this.currentPath_ = i }, q.fillRect = function (e, t, n, r) { var i = this.currentPath_; this.beginPath(), this.moveTo(e, t), this.lineTo(e + n, t), this.lineTo(e + n, t + r), this.lineTo(e, t + r), this.closePath(), this.fill(), this.currentPath_ = i }, q.createLinearGradient = function (e, t, n, r) { var i = new $("gradient"); return i.x0_ = e, i.y0_ = t, i.x1_ = n, i.y1_ = r, i }, q.createRadialGradient = function (e, t, n, r, i, s) { var o = new $("gradientradial"); return o.x0_ = e, o.y0_ = t, o.r0_ = n, o.x1_ = r, o.y1_ = i, o.r1_ = s, o }, q.drawImage = function (n, r) { var i, s, u, a, f, l, c, h, p = n.runtimeStyle.width, d = n.runtimeStyle.height; n.runtimeStyle.width = "auto", n.runtimeStyle.height = "auto"; var v = n.width, m = n.height; n.runtimeStyle.width = p, n.runtimeStyle.height = d; if (arguments.length == 3) i = arguments[1], s = arguments[2], f = l = 0, c = u = v, h = a = m; else if (arguments.length == 5) i = arguments[1], s = arguments[2], u = arguments[3], a = arguments[4], f = l = 0, c = v, h = m; else { if (arguments.length != 9)throw Error("Invalid number of arguments"); f = arguments[1], l = arguments[2], c = arguments[3], h = arguments[4], i = arguments[5], s = arguments[6], u = arguments[7], a = arguments[8] } var g = W(this, i, s), y = c / 2, b = h / 2, w = [], E = 10, S = 10, x = scaleY = 1; w.push(" '), (f || l) && w.push('
'), w.push('
'), (f || l) && w.push("
"), w.push("
"), this.element_.insertAdjacentHTML("BeforeEnd", w.join("")) }, q.stroke = function (e) { var n = [], r = !1, i = 10, s = 10; n.push(" f.x) f.x = c.x; if (a.y == null || c.y < a.y) a.y = c.y; if (f.y == null || c.y > f.y) f.y = c.y } } n.push(' ">'), e ? z(this, n, a, f) : U(this, n), n.push(""), this.element_.insertAdjacentHTML("beforeEnd", n.join("")) }, q.fill = function () { this.stroke(!0) }, q.closePath = function () { this.currentPath_.push({type: "close"}) }, q.save = function () { var e = {}; x(this, e), this.aStack_.push(e), this.mStack_.push(this.m_), this.m_ = S(E(), this.m_) }, q.restore = function () { this.aStack_.length && (x(this.aStack_.pop(), this), this.m_ = this.mStack_.pop()) }, q.translate = function (e, t) { var n = [[1, 0, 0], [0, 1, 0], [e, t, 1]]; V(this, S(n, this.m_), !1) }, q.rotate = function (e) { var t = r(e), i = n(e), s = [[t, i, 0], [-i, t, 0], [0, 0, 1]]; V(this, S(s, this.m_), !1) }, q.scale = function (e, t) { this.arcScaleX_ *= e, this.arcScaleY_ *= t; var n = [[e, 0, 0], [0, t, 0], [0, 0, 1]]; V(this, S(n, this.m_), !0) }, q.transform = function (e, t, n, r, i, s) { var o = [[e, t, 0], [n, r, 0], [i, s, 1]]; V(this, S(o, this.m_), !0) }, q.setTransform = function (e, t, n, r, i, s) { var o = [[e, t, 0], [n, r, 0], [i, s, 1]]; V(this, o, !0) }, q.drawText_ = function (e, n, r, i, s) { var u = this.m_, a = 1e3, f = 0, l = a, c = {x: 0, y: 0}, p = [], d = H(P(this.font), this.element_), v = B(d), m = this.element_.currentStyle, g = this.textAlign.toLowerCase(); switch (g) { case"left": case"center": case"right": break; case"end": g = m.direction == "ltr" ? "right" : "left"; break; case"start": g = m.direction == "rtl" ? "right" : "left"; break; default: g = "left" } switch (this.textBaseline) { case"hanging": case"top": c.y = d.size / 1.75; break; case"middle": break; default: case null: case"alphabetic": case"ideographic": case"bottom": c.y = -d.size / 2.25 } switch (g) { case"right": f = a, l = .05; break; case"center": f = l = a / 2 } var y = W(this, n + c.x, r + c.y); p.push(''), s ? U(this, p) : z(this, p, { x: -f, y: 0 }, {x: l, y: d.size}); var b = u[0][0].toFixed(3) + "," + u[1][0].toFixed(3) + "," + u[0][1].toFixed(3) + "," + u[1][1].toFixed(3) + ",0,0", w = t(y.x / o) + "," + t(y.y / o); p.push('', '', ''), this.element_.insertAdjacentHTML("beforeEnd", p.join("")) }, q.fillText = function (e, t, n, r) { this.drawText_(e, t, n, r, !1) }, q.strokeText = function (e, t, n, r) { this.drawText_(e, t, n, r, !0) }, q.measureText = function (e) { if (!this.textMeasureEl_) { var t = ''; this.element_.insertAdjacentHTML("beforeEnd", t), this.textMeasureEl_ = this.element_.lastChild } var n = this.element_.ownerDocument; return this.textMeasureEl_.innerHTML = "", this.textMeasureEl_.style.font = this.font, this.textMeasureEl_.appendChild(n.createTextNode(e)), {width: this.textMeasureEl_.offsetWidth} }, q.clip = function () { }, q.arcTo = function () { }, q.createPattern = function (e, t) { return new J(e, t) }, $.prototype.addColorStop = function (e, t) { t = M(t), this.colors_.push({offset: e, color: t.color, alpha: t.alpha}) }; var Y = G.prototype = new Error; Y.INDEX_SIZE_ERR = 1, Y.DOMSTRING_SIZE_ERR = 2, Y.HIERARCHY_REQUEST_ERR = 3, Y.WRONG_DOCUMENT_ERR = 4, Y.INVALID_CHARACTER_ERR = 5, Y.NO_DATA_ALLOWED_ERR = 6, Y.NO_MODIFICATION_ALLOWED_ERR = 7, Y.NOT_FOUND_ERR = 8, Y.NOT_SUPPORTED_ERR = 9, Y.INUSE_ATTRIBUTE_ERR = 10, Y.INVALID_STATE_ERR = 11, Y.SYNTAX_ERR = 12, Y.INVALID_MODIFICATION_ERR = 13, Y.NAMESPACE_ERR = 14, Y.INVALID_ACCESS_ERR = 15, Y.VALIDATION_ERR = 16, Y.TYPE_MISMATCH_ERR = 17, G_vmlCanvasManager = v, CanvasRenderingContext2D = I, CanvasGradient = $, CanvasPattern = J, DOMException = G }(), G_vmlCanvasManager }), define("zrender/tool/util", ["require", "./vector", "../lib/excanvas"], function (e) { function n(e) { var t = { "[object Function]": 1, "[object RegExp]": 1, "[object Date]": 1, "[object Error]": 1, "[object CanvasGradient]": 1 }, n = e, r, i; if (!e || e instanceof Number || e instanceof String || e instanceof Boolean)return n; if (e instanceof Array) { n = []; var s = 0; for (r = 0, i = e.length; r < i; r++)n[s++] = this.clone(e[r]) } else if ("object" == typeof e) { if (t[Object.prototype.toString.call(e)] || e.__nonRecursion)return n; n = {}; for (r in e)e.hasOwnProperty(r) && (n[r] = this.clone(e[r])) } return n } function i(e, t, n, r) { if (!e || !t)return; if (t instanceof Object)for (var s in t)if (t.hasOwnProperty(s))if (t[s] instanceof Object && r && e[s]) i(e[s], t[s], n, r); else if (n || !e.hasOwnProperty(s)) e[s] = t[s] } function o() { if (!s) { e("../lib/excanvas"); if (G_vmlCanvasManager) { var t = document.createElement("div"); t.style.position = "absolute", t.style.top = "-1000px", document.body.appendChild(t), s = G_vmlCanvasManager.initElement(t).getContext("2d") } else s = document.createElement("canvas").getContext("2d") } return s } function p() { return a || (u = document.createElement("canvas"), f = u.width, l = u.height, a = u.getContext("2d")), a } function d(e, t) { var n = 100, r = !1; e + c > f && (f = e + c + n, u.width = f, r = !0), t + h > l && (l = t + h + n, u.height = l, r = !0), e < -c && (c = Math.ceil(-e / n) * n, f += c, u.width = f, r = !0), t < -h && (h = Math.ceil(-t / n) * n, l += h, u.height = l, r = !0), r && a.translate(c, h) } function v() { return {x: c, y: h} } function m(e, t) { if (e.indexOf)return e.indexOf(t); for (var n = 0, r = e.length; n < r; n++)if (e[n] === t)return n; return -1 } function g(e, t, n) { if (e.length === 0)return; var r = e[0][0], i = e[0][0], s = e[0][1], o = e[0][1]; for (var u = 1; u < e.length; u++) { var a = e[u]; a[0] < r && (r = a[0]), a[0] > i && (i = a[0]), a[1] < s && (s = a[1]), a[1] > o && (o = a[1]) } t[0] = r, t[1] = s, n[0] = i, n[1] = o } function y(e, t, n, r, i, s) { var o = b(e[0], t[0], n[0], r[0]), u = b(e[1], t[1], n[1], r[1]); o.push(e[0], r[0]), u.push(e[1], r[1]); var a = Math.min.apply(null, o), f = Math.max.apply(null, o), l = Math.min.apply(null, u), c = Math.max.apply(null, u); i[0] = a, i[1] = l, s[0] = f, s[1] = c } function b(e, t, n, r) { var i = [], s = 6 * n - 12 * t + 6 * e, o = 9 * t + 3 * r - 3 * e - 9 * n, u = 3 * t - 3 * e, a = s * s - 4 * o * u; if (a > 0) { var f = Math.sqrt(a), l = (-s + f) / (2 * o), c = (-s - f) / (2 * o); i.push(l, c) } else a === 0 && i.push(-s / (2 * o)); var h = []; for (var p = 0; p < i.length; p++) { var d = i[p]; if (Math.abs(2 * o * d + s) > 1e-4 && d < 1 && d > 0) { var v = 1 - d, m = v * v * v * e + 3 * v * v * d * t + 3 * v * d * d * n + d * d * d * r; h.push(m) } } return h } function w(e, t, n, r, i) { var s = e[0] + n[0] - 2 * t[0], o; s === 0 ? o = .5 : o = (e[0] - t[0]) / s, s = e[1] + n[1] - 2 * t[1]; var u; s === 0 ? u = .5 : u = (e[1] - t[1]) / s, o = Math.max(Math.min(o, 1), 0), u = Math.max(Math.min(u, 1), 0); var a = 1 - o, f = 1 - u, l = a * a * e[0] + 2 * a * o * t[0] + o * o * n[0], c = a * a * e[1] + 2 * a * o * t[1] + o * o * n[1], h = f * f * e[0] + 2 * f * u * t[0] + u * u * n[0], p = f * f * e[1] + 2 * f * u * t[1] + u * u * n[1]; return g([e.slice(), n.slice(), [l, c], [h, p]], r, i) } var t = e("./vector"), r = function () { function t(t, n, i, s, o) { if (n.hasOwnProperty(i))if (o && typeof t[i] == "object" && e[Object.prototype.toString.call(t[i])] != 1) r(t[i], n[i], { overwrite: s, recursive: o }); else if (s || !(i in t)) t[i] = n[i] } var e = { "[object Function]": 1, "[object RegExp]": 1, "[object Date]": 1, "[object Error]": 1, "[object CanvasGradient]": 1 }; return function (e, n, r) { var i = 0, s = r || {}, o = s.overwrite, u = s.whiteList, a = s.recursive, f; if (u && u.length) { f = u.length; for (; i < f; ++i)t(e, n, u[i], o, a) } else for (i in n)t(e, n, i, o, a); return e } }(), s, u, a, f, l, c = 0, h = 0, E = function () { var e = [], n = [], r = [[], [], [], []]; return function (i, s, o, u, a, f, l) { a = a ? 1 : -1, e[0] = Math.cos(o), e[1] = Math.sin(o) * a, t.scale(e, e, s), t.add(e, e, i), n[0] = Math.cos(u), n[1] = Math.sin(u) * a, t.scale(n, n, s), t.add(n, n, i), o %= Math.PI * 2, o < 0 && (o += Math.PI * 2), u %= Math.PI * 2, u < 0 && (u += Math.PI * 2), o > u && (u += Math.PI * 2); var c = 0; for (var h = 0; h < u; h += Math.PI / 2)if (h > o) { var p = r[c++]; p[0] = Math.cos(h), p[1] = Math.sin(h) * a, t.scale(p, p, s), t.add(p, p, i) } var d = r.slice(0, c); d.push(e, n), g(d, f, l) } }(); return { clone: n, merge: r, mergeFast: i, getContext: o, getPixelContext: p, getPixelOffset: v, adjustCanvasSize: d, computeBoundingBox: g, computeCubeBezierBoundingBox: y, computeQuadraticBezierBoundingBox: w, computeArcBoundingBox: E, indexOf: m } }), define("zrender/shape", [], function () { var e = {}, t = {}; return e.define = function (n, r) { return t[n] = r, e }, e.get = function (e) { return t[e] }, e }), define("zrender/tool/area", ["require", "../tool/util", "../shape"], function (e) { function r(e, r, u, a) { if (!r || !e)return !1; var f = e.type; n || (n = t.getContext()); if (!h(r.__rect || e.getRect(r), u, a))return !1; var l = i(f, r, u, a); if (typeof l != "undefined")return l; if (f != "beziercurve" && e.buildPath && n.isPointInPath)return s(e, n, r, u, a); if (n.getImageData)return o(e, r, u, a); switch (f) { case"heart": return !0; case"droplet": return !0; case"ellipse": return !0; case"trochoid": var c = r.location == "out" ? r.r1 + r.r2 + r.d : r.r1 - r.r2 + r.d; return p(r, u, a, c); case"rose": return p(r, u, a, r.maxr); default: return !1 } } function i(e, t, n, r) { switch (e) { case"line": return f(t, n, r); case"brokenLine": return l(t, n, r); case"text": return !0; case"ring": return c(t, n, r); case"rectangle": return !0; case"circle": return p(t, n, r, t.r); case"sector": return d(t, n, r); case"path": return m(t, n, r); case"polygon": case"star": case"isogon": return v(t, n, r); case"image": return !0 } } function s(e, t, n, r, i) { return t.beginPath(), e.buildPath(t, n), t.closePath(), t.isPointInPath(r, i) } function o(e, n, r, i) { var s = n.__rect || e.getRect(n), o = t.getPixelContext(), a = t.getPixelOffset(); return t.adjustCanvasSize(r, i), o.clearRect(s.x, s.y, s.width, s.height), o.beginPath(), e.brush(o, {style: n}), o.closePath(), u(o, r + a.x, i + a.y) } function u(e, t, n, r) { var i; typeof r != "undefined" ? (r = Math.floor((r || 1) / 2), i = e.getImageData(t - r, n - r, r + r, r + r).data) : i = e.getImageData(t, n, 1, 1).data; var s = i.length; while (s--)if (i[s] !== 0)return !0; return !1 } function a(e, t, n, i) { return !r(e, t, n, i) } function f(e, t, n) { var r = e.xStart, i = e.yStart, s = e.xEnd, o = e.yEnd, u = Math.max(e.lineWidth, 5), a = 0, f = r; if (r === s)return Math.abs(t - r) <= u / 2; a = (i - o) / (r - s), f = (r * o - s * i) / (r - s); var l = (a * t - n + f) * (a * t - n + f) / (a * a + 1); return l <= u / 2 * u / 2 } function l(e, t, n) { var r = e.pointList, i, s = !1; for (var o = 0, u = r.length - 1; o < u; o++) { i = { xStart: r[o][0], yStart: r[o][1], xEnd: r[o + 1][0], yEnd: r[o + 1][1], lineWidth: Math.max(e.lineWidth, 10) }; if (!h({ x: Math.min(i.xStart, i.xEnd) - i.lineWidth, y: Math.min(i.yStart, i.yEnd) - i.lineWidth, width: Math.abs(i.xStart - i.xEnd) + i.lineWidth, height: Math.abs(i.yStart - i.yEnd) + i.lineWidth }, t, n))continue; s = f(i, t, n); if (s)break } return s } function c(e, t, n) { return p(e, t, n, e.r) && !p({x: e.x, y: e.y}, t, n, e.r0 || 0) ? !0 : !1 } function h(e, t, n) { return t >= e.x && t <= e.x + e.width && n >= e.y && n <= e.y + e.height ? !0 : !1 } function p(e, t, n, r) { return (t - e.x) * (t - e.x) + (n - e.y) * (n - e.y) < r * r } function d(e, t, n) { if (!p(e, t, n, e.r) || e.r0 > 0 && p({x: e.x, y: e.y}, t, n, e.r0))return !1; if (Math.abs(e.endAngle - e.startAngle) >= 360)return !0; var r = (360 - Math.atan2(n - e.y, t - e.x) / Math.PI * 180) % 360, i = (360 + e.endAngle) % 360, s = (360 + e.startAngle) % 360; return i > s ? r >= s && r <= i : !(r >= i && r <= s) } function v(e, t, n) { var r, i, s = e.pointList, o = s.length, u = !1, a = !0, f; for (r = 0; r < o; ++r)if (s[r][0] == t && s[r][1] == n) { a = !1, u = !0; break } if (a) { a = !1, u = !1; for (r = 0, i = o - 1; r < o; i = r++)if (s[r][1] < n && n < s[i][1] || s[i][1] < n && n < s[r][1]) { if (t <= s[r][0] || t <= s[i][0]) { f = (n - s[r][1]) * (s[i][0] - s[r][0]) / (s[i][1] - s[r][1]) + s[r][0]; if (t < f) u = !u; else if (t == f) { u = !0; break } } } else if (n == s[r][1]) { if (t < s[r][0]) { s[r][1] > s[i][1] ? --n : ++n; break } } else if (s[r][1] == s[i][1] && n == s[r][1] && (s[r][0] < t && t < s[i][0] || s[i][0] < t && t < s[r][0])) { u = !0; break } } return u } function m(t, r, i) { t.pointList || e("../shape").get("path").buildPath(n, t); var s = t.pointList, o = !1; for (var u = 0, a = s.length; u < a; u++) { o = v({pointList: s[u]}, r, i); if (o)break } return o } function g(e, r) { n || (n = t.getContext()), n.save(), r && (n.font = r), e = (e + "").split("\n"); var i = 0; for (var s = 0, o = e.length; s < o; s++)i = Math.max(n.measureText(e[s]).width, i); return n.restore(), i } function y(e, r) { n || (n = t.getContext()), n.save(), r && (n.font = r), e = (e + "").split("\n"); var i = (n.measureText("国").width + 2) * e.length; return n.restore(), i } var t = e("../tool/util"), n; return {isInside: r, isOutside: a, getTextWidth: g, getTextHeight: y} }), define("zrender/tool/matrix", [], function () { var e = { create: function () { return [1, 0, 0, 1, 0, 0] }, identity: function (e) { e[0] = 1, e[1] = 0, e[2] = 0, e[3] = 1, e[4] = 0, e[5] = 0 }, mul: function (e, t, n) { return e[0] = t[0] * n[0] + t[2] * n[1], e[1] = t[1] * n[0] + t[3] * n[1], e[2] = t[0] * n[2] + t[2] * n[3], e[3] = t[1] * n[2] + t[3] * n[3], e[4] = t[0] * n[4] + t[2] * n[5] + t[4], e[5] = t[1] * n[4] + t[3] * n[5] + t[5], e }, translate: function (e, t, n) { return e[0] = t[0], e[1] = t[1], e[2] = t[2], e[3] = t[3], e[4] = t[4] + n[0], e[5] = t[5] + n[1], e }, rotate: function (e, t, n) { var r = t[0], i = t[2], s = t[4], o = t[1], u = t[3], a = t[5], f = Math.sin(n), l = Math.cos(n); return e[0] = r * l + o * f, e[1] = -r * f + o * l, e[2] = i * l + u * f, e[3] = -i * f + l * u, e[4] = l * s + f * a, e[5] = l * a - f * s, e }, scale: function (e, t, n) { var r = n[0], i = n[1]; return e[0] = t[0] * r, e[1] = t[1] * i, e[2] = t[2] * r, e[3] = t[3] * i, e[4] = t[4] * r, e[5] = t[5] * i, e }, invert: function (e, t) { var n = t[0], r = t[2], i = t[4], s = t[1], o = t[3], u = t[5], a = n * o - s * r; return a ? (a = 1 / a, e[0] = o * a, e[1] = -s * a, e[2] = -r * a, e[3] = n * a, e[4] = (r * u - o * i) * a, e[5] = (s * i - n * u) * a, e) : null }, mulVector: function (e, t, n) { var r = t[0], i = t[2], s = t[4], o = t[1], u = t[3], a = t[5]; return e[0] = n[0] * r + n[1] * i + s, e[1] = n[0] * o + n[1] * u + a, e } }; return e }), define("zrender/tool/color", ["require", "../tool/util"], function (e) { function f(e) { r = e } function l() { r = i } function c(e, t) { return e = +e || 0, t = t || r, t[e % t.length] } function h(e) { s = e } function p() { o = s } function d() { return s } function v(e, r, i, s, o, u, a) { n || (n = t.getContext()); var f = n.createRadialGradient(e, r, i, s, o, u); for (var l = 0, c = a.length; l < c; l++)f.addColorStop(a[l][0], a[l][1]); return f.__nonRecursion = !0, f } function m(e, r, i, s, o) { n || (n = t.getContext()); var u = n.createLinearGradient(e, r, i, s); for (var a = 0, f = o.length; a < f; a++)u.addColorStop(o[a][0], o[a][1]); return u.__nonRecursion = !0, u } function g(e, t, n) { e = S(e), t = S(t), e = F(e), t = F(t); var r = [], i = (t[0] - e[0]) / n, s = (t[1] - e[1]) / n, o = (t[2] - e[2]) / n; for (var u = 0, a = e[0], f = e[1], l = e[2]; u < n; u++)r[u] = b([R(Math.floor(a), [0, 255]), R(Math.floor(f), [0, 255]), R(Math.floor(l), [0, 255])]), a += i, f += s, l += o; return a = t[0], f = t[1], l = t[2], r[u] = b([a, f, l]), r } function y(e, t) { var n = [], r = e.length; t === undefined && (t = 20); if (r === 1) n = g(e[0], e[0], t); else if (r > 1)for (var i = 0, s = r - 1; i < s; i++) { var o = g(e[i], e[i + 1], t); i < s - 1 && o.pop(), n = n.concat(o) } return n } function b(e, t) { t = t || "rgb"; if (e && (e.length === 3 || e.length === 4)) { e = q(e, function (e) { return e > 1 ? Math.ceil(e) : e }); if (t.indexOf("hex") > -1)return e = q(e.slice(0, 3), function (e) { return e = Number(e).toString(16), e.length === 1 ? "0" + e : e }), "#" + e.join(""); if (t.indexOf("hs") > -1) { var n = q(e.slice(1, 3), function (e) { return e + "%" }); e[1] = n[0], e[2] = n[1] } return t.indexOf("a") > -1 ? (e.length === 3 && e.push(1), e[3] = R(e[3], [0, 1]), t + "(" + e.slice(0, 4).join(",") + ")") : t + "(" + e.slice(0, 3).join(",") + ")" } } function w(e) { e = _(e), e.indexOf("#") > -1 && (e = x(e)); var t = e.replace(/[rgbahsvl%\(\)]/ig, "").split(","); return t = q(t, function (e) { return Number(e) }), t } function E(e, t) { var n = F(e), r = n[3]; return typeof r == "undefined" && (r = 1), e.indexOf("hsb") > -1 ? n = U(n) : e.indexOf("hsl") > -1 && (n = z(n)), t.indexOf("hsb") > -1 || t.indexOf("hsv") > -1 ? n = X(n) : t.indexOf("hsl") > -1 && (n = V(n)), n[3] = r, b(n, t) } function S(e) { return E(e, "rgba") } function x(e) { return E(e, "rgb") } function T(e) { return E(e, "hex") } function N(e) { return E(e, "hsva") } function C(e) { return E(e, "hsv") } function k(e) { return E(e, "hsba") } function L(e) { return E(e, "hsb") } function A(e) { return E(e, "hsla") } function O(e) { return E(e, "hsl") } function M(e) { for (var t in a)if (T(a[t]) === T(e))return t; return null } function _(e) { return e = String(e), e = e.replace(/(^\s*)|(\s*$)/g, ""), /^[^#]*?$/i.test(e) && (e = e.replace(/\s/g, "")), e } function D(e) { a[e] && (e = a[e]), e = _(e), e = e.replace(/hsv/i, "hsb"); if (/^#[0-9a-f]{3}$/i.test(e)) { var t = e.replace("#", "").split(""); e = "#" + t[0] + t[0] + t[1] + t[1] + t[2] + t[2] } return e } function P(e, t) { var n = t > 0 ? 1 : -1; typeof t == "undefined" && (t = 0), t = Math.abs(t) > 1 ? 1 : Math.abs(t), e = x(e); var r = F(e); for (var i = 0; i < 3; i++)n === 1 ? r[i] = Math.floor(r[i] * (1 - t)) : r[i] = Math.floor((255 - r[i]) * t + r[i]); return "rgb(" + r.join(",") + ")" } function H(e) { var t = F(S(e)); return t = q(t, function (e) { return 255 - e }), b(t, "rgb") } function B(e, t, n) { typeof n == "undefined" && (n = .5), n = 1 - R(n, [0, 1]); var r = n * 2 - 1, i = F(S(e)), s = F(S(t)), o = i[3] - s[3], u = ((r * o === -1 ? r : (r + o) / (1 + r * o)) + 1) / 2, a = 1 - u, f = []; for (var l = 0; l < 3; l++)f[l] = i[l] * u + s[l] * a; var c = i[3] * n + s[3] * (1 - n); return c = Math.max(0, Math.min(1, c)), i[3] === 1 && s[3] === 1 ? b(f, "rgb") : (f[3] = c, b(f, "rgba")) } function j() { return T("rgb(" + Math.round(Math.random() * 256) + "," + Math.round(Math.random() * 256) + "," + Math.round(Math.random() * 256) + ")") } function F(e) { e = D(e); var t = e.match(u); if (t === null)throw new Error("The color format error"); var n, r, i = [], s; if (t[2]) n = t[2].replace("#", "").split(""), s = [n[0] + n[1], n[2] + n[3], n[4] + n[5]], i = q(s, function (e) { return R(parseInt(e, 16), [0, 255]) }); else if (t[4]) { var o = t[4].split(","); r = o[3], s = o.slice(0, 3), i = q(s, function (e) { return e = Math.floor(e.indexOf("%") > 0 ? parseInt(e, 0) * 2.55 : e), R(e, [0, 255]) }), typeof r != "undefined" && i.push(R(parseFloat(r), [0, 1])) } else if (t[5] || t[6]) { var a = (t[5] || t[6]).split(","), f = parseInt(a[0], 0) / 360, l = a[1], c = a[2]; r = a[3], i = q([l, c], function (e) { return R(parseFloat(e) / 100, [0, 1]) }), i.unshift(f), typeof r != "undefined" && i.push(R(parseFloat(r), [0, 1])) } return i } function I(e, t) { t === null && (t = 1); var n = F(S(e)); return n[3] = R(Number(t).toFixed(4), [0, 1]), b(n, "rgba") } function q(e, t) { if (typeof t != "function")throw new TypeError; var n = e ? e.length : 0; for (var r = 0; r < n; r++)e[r] = t(e[r]); return e } function R(e, t) { return e <= t[0] ? e = t[0] : e >= t[1] && (e = t[1]), e } function U(e) { var t = e[0], n = e[1], r = e[2], i, s, o; if (n === 0) i = r * 255, s = r * 255, o = r * 255; else { var u = t * 6; u === 6 && (u = 0); var a = Math.floor(u), f = r * (1 - n), l = r * (1 - n * (u - a)), c = r * (1 - n * (1 - (u - a))), h = 0, p = 0, d = 0; a === 0 ? (h = r, p = c, d = f) : a === 1 ? (h = l, p = r, d = f) : a === 2 ? (h = f, p = r, d = c) : a === 3 ? (h = f, p = l, d = r) : a === 4 ? (h = c, p = f, d = r) : (h = r, p = f, d = l), i = h * 255, s = p * 255, o = d * 255 } return [i, s, o] } function z(e) { var t = e[0], n = e[1], r = e[2], i, s, o; if (n === 0) i = r * 255, s = r * 255, o = r * 255; else { var u; r < .5 ? u = r * (1 + n) : u = r + n - n * r; var a = 2 * r - u; i = 255 * W(a, u, t + 1 / 3), s = 255 * W(a, u, t), o = 255 * W(a, u, t - 1 / 3) } return [i, s, o] } function W(e, t, n) { return n < 0 && (n += 1), n > 1 && (n -= 1), 6 * n < 1 ? e + (t - e) * 6 * n : 2 * n < 1 ? t : 3 * n < 2 ? e + (t - e) * (2 / 3 - n) * 6 : e } function X(e) { var t = e[0] / 255, n = e[1] / 255, r = e[2] / 255, i = Math.min(t, n, r), s = Math.max(t, n, r), o = s - i, u = s, a, f; if (o === 0) a = 0, f = 0; else { f = o / s; var l = ((s - t) / 6 + o / 2) / o, c = ((s - n) / 6 + o / 2) / o, h = ((s - r) / 6 + o / 2) / o; t === s ? a = h - c : n === s ? a = 1 / 3 + l - h : r === s && (a = 2 / 3 + c - l), a < 0 && (a += 1), a > 1 && (a -= 1) } return a *= 360, f *= 100, u *= 100, [a, f, u] } function V(e) { var t = e[0] / 255, n = e[1] / 255, r = e[2] / 255, i = Math.min(t, n, r), s = Math.max(t, n, r), o = s - i, u = (s + i) / 2, a, f; if (o === 0) a = 0, f = 0; else { u < .5 ? f = o / (s + i) : f = o / (2 - s - i); var l = ((s - t) / 6 + o / 2) / o, c = ((s - n) / 6 + o / 2) / o, h = ((s - r) / 6 + o / 2) / o; t === s ? a = h - c : n === s ? a = 1 / 3 + l - h : r === s && (a = 2 / 3 + c - l), a < 0 && (a += 1), a > 1 && (a -= 1) } return a *= 360, f *= 100, u *= 100, [a, f, u] } var t = e("../tool/util"), n, r = ["#ff9277", " #dddd00", " #ffc877", " #bbe3ff", " #d5ffbb", "#bbbbff", " #ddb000", " #b0dd00", " #e2bbff", " #ffbbe3", "#ff7777", " #ff9900", " #83dd00", " #77e3ff", " #778fff", "#c877ff", " #ff77ab", " #ff6600", " #aa8800", " #77c7ff", "#ad77ff", " #ff77ff", " #dd0083", " #777700", " #00aa00", "#0088aa", " #8400dd", " #aa0088", " #dd0000", " #772e00"], i = r, s = "rgba(255,255,0,0.5)", o = s, u = /^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+)?)%?\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+)?)%?\s*\))\s*$/i, a = { aliceblue: "#f0f8ff", antiquewhite: "#faebd7", aqua: "#0ff", aquamarine: "#7fffd4", azure: "#f0ffff", beige: "#f5f5dc", bisque: "#ffe4c4", black: "#000", blanchedalmond: "#ffebcd", blue: "#00f", blueviolet: "#8a2be2", brown: "#a52a2a", burlywood: "#deb887", cadetblue: "#5f9ea0", chartreuse: "#7fff00", chocolate: "#d2691e", coral: "#ff7f50", cornflowerblue: "#6495ed", cornsilk: "#fff8dc", crimson: "#dc143c", cyan: "#0ff", darkblue: "#00008b", darkcyan: "#008b8b", darkgoldenrod: "#b8860b", darkgray: "#a9a9a9", darkgrey: "#a9a9a9", darkgreen: "#006400", darkkhaki: "#bdb76b", darkmagenta: "#8b008b", darkolivegreen: "#556b2f", darkorange: "#ff8c00", darkorchid: "#9932cc", darkred: "#8b0000", darksalmon: "#e9967a", darkseagreen: "#8fbc8f", darkslateblue: "#483d8b", darkslategray: "#2f4f4f", darkslategrey: "#2f4f4f", darkturquoise: "#00ced1", darkviolet: "#9400d3", deeppink: "#ff1493", deepskyblue: "#00bfff", dimgray: "#696969", dimgrey: "#696969", dodgerblue: "#1e90ff", firebrick: "#b22222", floralwhite: "#fffaf0", forestgreen: "#228b22", fuchsia: "#f0f", gainsboro: "#dcdcdc", ghostwhite: "#f8f8ff", gold: "#ffd700", goldenrod: "#daa520", gray: "#808080", grey: "#808080", green: "#008000", greenyellow: "#adff2f", honeydew: "#f0fff0", hotpink: "#ff69b4", indianred: "#cd5c5c", indigo: "#4b0082", ivory: "#fffff0", khaki: "#f0e68c", lavender: "#e6e6fa", lavenderblush: "#fff0f5", lawngreen: "#7cfc00", lemonchiffon: "#fffacd", lightblue: "#add8e6", lightcoral: "#f08080", lightcyan: "#e0ffff", lightgoldenrodyellow: "#fafad2", lightgray: "#d3d3d3", lightgrey: "#d3d3d3", lightgreen: "#90ee90", lightpink: "#ffb6c1", lightsalmon: "#ffa07a", lightseagreen: "#20b2aa", lightskyblue: "#87cefa", lightslategray: "#789", lightslategrey: "#789", lightsteelblue: "#b0c4de", lightyellow: "#ffffe0", lime: "#0f0", limegreen: "#32cd32", linen: "#faf0e6", magenta: "#f0f", maroon: "#800000", mediumaquamarine: "#66cdaa", mediumblue: "#0000cd", mediumorchid: "#ba55d3", mediumpurple: "#9370d8", mediumseagreen: "#3cb371", mediumslateblue: "#7b68ee", mediumspringgreen: "#00fa9a", mediumturquoise: "#48d1cc", mediumvioletred: "#c71585", midnightblue: "#191970", mintcream: "#f5fffa", mistyrose: "#ffe4e1", moccasin: "#ffe4b5", navajowhite: "#ffdead", navy: "#000080", oldlace: "#fdf5e6", olive: "#808000", olivedrab: "#6b8e23", orange: "#ffa500", orangered: "#ff4500", orchid: "#da70d6", palegoldenrod: "#eee8aa", palegreen: "#98fb98", paleturquoise: "#afeeee", palevioletred: "#d87093", papayawhip: "#ffefd5", peachpuff: "#ffdab9", peru: "#cd853f", pink: "#ffc0cb", plum: "#dda0dd", powderblue: "#b0e0e6", purple: "#800080", red: "#f00", rosybrown: "#bc8f8f", royalblue: "#4169e1", saddlebrown: "#8b4513", salmon: "#fa8072", sandybrown: "#f4a460", seagreen: "#2e8b57", seashell: "#fff5ee", sienna: "#a0522d", silver: "#c0c0c0", skyblue: "#87ceeb", slateblue: "#6a5acd", slategray: "#708090", slategrey: "#708090", snow: "#fffafa", springgreen: "#00ff7f", steelblue: "#4682b4", tan: "#d2b48c", teal: "#008080", thistle: "#d8bfd8", tomato: "#ff6347", turquoise: "#40e0d0", violet: "#ee82ee", wheat: "#f5deb3", white: "#fff", whitesmoke: "#f5f5f5", yellow: "#ff0", yellowgreen: "#9acd32" }; return { customPalette: f, resetPalette: l, getColor: c, getHighlightColor: d, customHighlight: h, resetHighlight: p, getRadialGradient: v, getLinearGradient: m, getGradientColors: y, getStepColors: g, reverse: H, mix: B, lift: P, trim: _, random: j, toRGB: x, toRGBA: S, toHex: T, toHSL: O, toHSLA: A, toHSB: L, toHSBA: k, toHSV: C, toHSVA: N, toName: M, toColor: b, toArray: w, alpha: I, getData: F } }), define("zrender/shape/base", ["require", "../tool/area", "../tool/matrix", "../tool/vector", "../tool/color"], function (e) { function s(e) { var n = ["brush", "setContext", "dashedLineTo", "smoothBezier", "smoothSpline", "drawText", "getHighlightStyle", "getHighlightZoom", "drift", "isCover", "updateTransform"], r = n.length, i = e.prototype, s = 0, o; for (; s < r; s++)o = n[s], i[o] || (i[o] = t[o]) } function o(e, t, n) { var r = t.style || {}; this.brushTypeOnly && (r.brushType = this.brushTypeOnly), n && (r = this.getHighlightStyle(r, t.highlightStyle || {}, this.brushTypeOnly)), this.brushTypeOnly == "stroke" && (r.strokeColor = r.strokeColor || r.color), e.save(), this.setContext(e, r), t.__needTransform && e.transform.apply(e, this.updateTransform(t)), e.beginPath(), this.buildPath(e, r), this.brushTypeOnly != "stroke" && e.closePath(); switch (r.brushType) { case"fill": e.fill(); break; case"stroke": r.lineWidth > 0 && e.stroke(); break; case"both": e.fill(), r.lineWidth > 0 && e.stroke(); break; default: e.fill() } typeof r.text != "undefined" && this.drawText(e, r, t.style), e.restore(); return } function u(e, t) { t.color && (e.fillStyle = t.color), t.strokeColor && (e.strokeStyle = t.strokeColor), typeof t.opacity != "undefined" && (e.globalAlpha = t.opacity), t.lineCap && (e.lineCap = t.lineCap), t.lineJoin && (e.lineJoin = t.lineJoin), t.miterLimit && (e.miterLimit = t.miterLimit), typeof t.lineWidth != "undefined" && (e.lineWidth = t.lineWidth), typeof t.shadowBlur != "undefined" && (e.shadowBlur = t.shadowBlur), t.shadowColor && (e.shadowColor = t.shadowColor), typeof t.shadowOffsetX != "undefined" && (e.shadowOffsetX = t.shadowOffsetX), typeof t.shadowOffsetY != "undefined" && (e.shadowOffsetY = t.shadowOffsetY) } function a(e, t, n, r, i, s) { s = typeof s == "undefined" ? 5 : s; var o = r - t, u = i - n, a = Math.floor(Math.sqrt(o * o + u * u) / s); for (var f = 0; f < a; ++f)e[f % 2 === 0 ? "moveTo" : "lineTo"](t + o / a * f, n + u / a * f) } function f(e, t, n) { var r = e.length, s = [], o = [], u = [], a = [], f, l; for (var c = 0; c < r; c++) { var h = e[c], f, l; if (n) f = e[c === 0 ? r - 1 : c - 1], l = e[(c + 1) % r]; else { if (c === 0 || c === r - 1) { s.push(e[c]); continue } f = e[c - 1], l = e[c + 1] } i.sub(o, l, f), i.scale(o, o, t); var p = i.distance(h, f), d = i.distance(h, l), v = p + d; p /= v, d /= v, i.scale(u, o, -p), i.scale(a, o, d), s.push(i.add([], h, u)), s.push(i.add([], h, a)) } return n && s.push(s.shift()), s } function l(e, t) { var n = e.length, r = [], s = 0; for (var o = 1; o < n; o++)s += i.distance(e[o - 1], e[o]); var u = s / 5; u = u < n ? n : u; for (var o = 0; o < u; o++) { var a; t ? a = o / (u - 1) * n : a = o / (u - 1) * (n - 1); var f = Math.floor(a), l = a - f, h, p = e[f % n], d, v; t ? (h = e[(f - 1 + n) % n], d = e[(f + 1) % n], v = e[(f + 2) % n]) : (h = e[f === 0 ? f : f - 1], d = e[f > n - 2 ? n - 1 : f + 1], v = e[f > n - 3 ? n - 1 : f + 2]); var m = l * l, g = l * m; r.push([c(h[0], p[0], d[0], v[0], l, m, g), c(h[1], p[1], d[1], v[1], l, m, g)]) } return r } function c(e, t, n, r, i, s, o) { var u = (n - e) * .5, a = (r - t) * .5; return (2 * (t - n) + u + a) * o + (-3 * (t - n) - 2 * u - a) * s + u * i + t } function h(e, t, n) { t.textColor = t.textColor || t.color || t.strokeColor, e.fillStyle = t.textColor, t.textPosition == "inside" && (e.shadowColor = "rgba(0,0,0,0)"); var r = 10, i, s, o, u, a = t.textPosition || this.textPosition || "top"; if (a != "inside" && a != "top" && a != "bottom" && a != "left" && a != "right" || !this.getRect)if (a == "start" || a == "end") { var l, c, h, d; if (typeof t.pointList != "undefined") { var v = t.pointList; if (v.length < 2)return; var m = v.length; switch (a) { case"start": l = v[0][0], c = v[1][0], h = v[0][1], d = v[1][1]; break; case"end": l = v[m - 2][0], c = v[m - 1][0], h = v[m - 2][1], d = v[m - 1][1] } } else l = t.xStart || 0, c = t.xEnd || 0, h = t.yStart || 0, d = t.yEnd || 0; switch (a) { case"start": i = l < c ? "end" : "start", s = h < d ? "bottom" : "top", o = l, u = h; break; case"end": i = l < c ? "start" : "end", s = h < d ? "top" : "bottom", o = c, u = d } r -= 4, l != c ? o -= i == "end" ? r : -r : i = "center", h != d ? u -= s == "bottom" ? r : -r : s = "middle" } else a == "specific" && (o = t.textX || 0, u = t.textY || 0, i = "start", s = "middle"); else { var f = (n || t).__rect || this.getRect(n || t); switch (a) { case"inside": o = f.x + f.width / 2, u = f.y + f.height / 2, i = "center", s = "middle", t.brushType != "stroke" && t.textColor == t.color && (e.fillStyle = "#fff"); break; case"left": o = f.x - r, u = f.y + f.height / 2, i = "end", s = "middle"; break; case"right": o = f.x + f.width + r, u = f.y + f.height / 2, i = "start", s = "middle"; break; case"top": o = f.x + f.width / 2, u = f.y - r, i = "center", s = "bottom"; break; case"bottom": o = f.x + f.width / 2, u = f.y + f.height + r, i = "center", s = "top" } } typeof o != "undefined" && typeof u != "undefined" && p(e, t.text, o, u, t.textFont, t.textAlign || i, t.textBaseline || s) } function p(e, t, r, i, s, o, u) { s && (e.font = s), e.textAlign = o, e.textBaseline = u; var a = d(t, r, i, s, o, u); t = (t + "").split("\n"); var f = n.getTextHeight("国", s), r = r, i; u == "top" ? i = a.y : u == "bottom" ? i = a.y + f : i = a.y + f / 2; for (var l = 0, c = t.length; l < c; l++)e.fillText(t[l], r, i), i += f } function d(e, t, r, i, s, o) { var u = n.getTextWidth(e, i), a = n.getTextHeight("国", i); e = (e + "").split("\n"); var f = t; s == "end" || s == "right" ? f -= u : s == "center" && (f -= u / 2); var l; return o == "top" ? l = r : o == "bottom" ? l = r - a * e.length : l = r - a * e.length / 2, { x: f, y: l, width: u, height: a * e.length } } function v(t, n, r) { var i = {}; for (var s in t)i[s] = t[s]; var o = e("../tool/color"), u = o.getHighlightColor(); t.brushType != "stroke" ? (i.strokeColor = u, i.lineWidth = (t.lineWidth || 1) + this.getHighlightZoom(), i.brushType = "both") : r != "stroke" ? (i.strokeColor = u, i.lineWidth = (t.lineWidth || 1) + this.getHighlightZoom()) : i.strokeColor = n.strokeColor || o.mix(t.strokeColor, o.toRGB(u)); for (var s in n)typeof n[s] != "undefined" && (i[s] = n[s]); return i } function m() { return this.type != "text" ? 6 : 2 } function g(e, t, n) { e.position[0] += t, e.position[1] += n } function y(e, t, i) { if (e.__needTransform && e._transform) { var s = []; r.invert(s, e._transform); var o = [t, i]; r.mulVector(o, s, [t, i, 1]), t == o[0] && i == o[1] && (Math.abs(e.rotation[0]) > 1e-4 || Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4 || Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4 ? e.__needTransform = !0 : e.__needTransform = !1), t = o[0], i = o[1] } var u; return e.style.__rect ? u = e.style.__rect : (u = this.getRect(e.style), e.style.__rect = u), t >= u.x && t <= u.x + u.width && i >= u.y && i <= u.y + u.height ? n.isInside(this, e.style, t, i) : !1 } function b(e) { var t = e._transform || r.create(); r.identity(t); if (e.scale && (e.scale[0] !== 1 || e.scale[1] !== 1)) { var n = e.scale[2] || 0, i = e.scale[3] || 0; (n || i) && r.translate(t, t, [-n, -i]), r.scale(t, t, e.scale), (n || i) && r.translate(t, t, [n, i]) } if (e.rotation)if (e.rotation instanceof Array) { if (e.rotation[0] !== 0) { var n = e.rotation[1] || 0, i = e.rotation[2] || 0; (n || i) && r.translate(t, t, [-n, -i]), r.rotate(t, t, e.rotation[0]), (n || i) && r.translate(t, t, [n, i]) } } else e.rotation !== 0 && r.rotate(t, t, e.rotation); return e.position && (e.position[0] !== 0 || e.position[1] !== 0) && r.translate(t, t, e.position), e._transform = t, t } var t, n = e("../tool/area"), r = e("../tool/matrix"), i = e("../tool/vector"); return t = { derive: s, brush: o, setContext: u, dashedLineTo: a, smoothBezier: f, smoothSpline: l, drawText: h, getHighlightStyle: v, getHighlightZoom: m, drift: g, isCover: y, updateTransform: b }, t }), define("zrender/shape/circle", ["require", "./base", "../shape"], function (e) { function t() { this.type = "circle" } t.prototype = { buildPath: function (e, t) { e.arc(t.x, t.y, t.r, 0, Math.PI * 2, !0); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.r - t / 2), y: Math.round(e.y - e.r - t / 2), width: e.r * 2 + t, height: e.r * 2 + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("circle", new t), t }), define("zrender/shape/ellipse", ["require", "./base", "../shape"], function (e) { function t() { this.type = "ellipse" } t.prototype = { buildPath: function (e, t) { var n = .5522848, r = t.x, i = t.y, s = t.a, o = t.b, u = s * n, a = o * n; e.moveTo(r - s, i), e.bezierCurveTo(r - s, i - a, r - u, i - o, r, i - o), e.bezierCurveTo(r + u, i - o, r + s, i - a, r + s, i), e.bezierCurveTo(r + s, i + a, r + u, i + o, r, i + o), e.bezierCurveTo(r - u, i + o, r - s, i + a, r - s, i); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.a - t / 2), y: Math.round(e.y - e.b - t / 2), width: e.a * 2 + t, height: e.b * 2 + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("ellipse", new t), t }), define("zrender/shape/line", ["require", "./base", "../shape"], function (e) { function t() { this.type = "line", this.brushTypeOnly = "stroke", this.textPosition = "end" } t.prototype = { buildPath: function (e, t) { if (!t.lineType || t.lineType == "solid") e.moveTo(t.xStart, t.yStart), e.lineTo(t.xEnd, t.yEnd); else if (t.lineType == "dashed" || t.lineType == "dotted") { var n = (t.lineWidth || 1) * (t.lineType == "dashed" ? 5 : 1); this.dashedLineTo(e, t.xStart, t.yStart, t.xEnd, t.yEnd, n) } }, getRect: function (e) { var t = e.lineWidth || 1; return { x: Math.min(e.xStart, e.xEnd) - t, y: Math.min(e.yStart, e.yEnd) - t, width: Math.abs(e.xStart - e.xEnd) + t, height: Math.abs(e.yStart - e.yEnd) + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("line", new t), t }), define("zrender/shape/polygon", ["require", "./base", "../shape"], function (e) { function t() { this.type = "polygon" } t.prototype = { brush: function (e, t, n) { var r = t.style || {}; n && (r = this.getHighlightStyle(r, t.highlightStyle || {})), e.save(), this.setContext(e, r), t.__needTransform && e.transform.apply(e, this.updateTransform(t)); var i = !1; if (r.brushType == "fill" || r.brushType == "both" || typeof r.brushType == "undefined") e.beginPath(), r.lineType == "dashed" || r.lineType == "dotted" ? (this.buildPath(e, { lineType: "solid", lineWidth: r.lineWidth, pointList: r.pointList }), i = !1) : (this.buildPath(e, r), i = !0), e.closePath(), e.fill(); r.lineWidth > 0 && (r.brushType == "stroke" || r.brushType == "both") && (i || (e.beginPath(), this.buildPath(e, r), e.closePath()), e.stroke()), r.text && this.drawText(e, r, t.style), e.restore(); return }, buildPath: function (e, t) { var n = t.pointList, r = n[0], i = n[n.length - 1]; r && i && r[0] == i[0] && r[1] == i[1] && n.pop(); if (n.length < 2)return; if (t.smooth && t.smooth !== "spline") { var s = this.smoothBezier(n, t.smooth, !0); e.moveTo(n[0][0], n[0][1]); var o, u, a, f = n.length; for (var l = 0; l < f; l++)o = s[l * 2], u = s[l * 2 + 1], a = n[(l + 1) % f], e.bezierCurveTo(o[0], o[1], u[0], u[1], a[0], a[1]) } else { t.smooth === "spline" && (n = this.smoothSpline(n, !0)); if (!t.lineType || t.lineType == "solid") { e.moveTo(n[0][0], n[0][1]); for (var l = 1, c = n.length; l < c; l++)e.lineTo(n[l][0], n[l][1]); e.lineTo(n[0][0], n[0][1]) } else if (t.lineType == "dashed" || t.lineType == "dotted") { var h = t._dashLength || (t.lineWidth || 1) * (t.lineType == "dashed" ? 5 : 1); t._dashLength = h, e.moveTo(n[0][0], n[0][1]); for (var l = 1, c = n.length; l < c; l++)this.dashedLineTo(e, n[l - 1][0], n[l - 1][1], n[l][0], n[l][1], h); this.dashedLineTo(e, n[n.length - 1][0], n[n.length - 1][1], n[0][0], n[0][1], h) } } return }, getRect: function (e) { var t = Number.MAX_VALUE, n = Number.MIN_VALUE, r = Number.MAX_VALUE, i = Number.MIN_VALUE, s = e.pointList; for (var o = 0, u = s.length; o < u; o++)s[o][0] < t && (t = s[o][0]), s[o][0] > n && (n = s[o][0]), s[o][1] < r && (r = s[o][1]), s[o][1] > i && (i = s[o][1]); var a; return e.brushType == "stroke" || e.brushType == "fill" ? a = e.lineWidth || 1 : a = 0, { x: Math.round(t - a / 2), y: Math.round(r - a / 2), width: n - t + a, height: i - r + a } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("polygon", new t), t }), define("zrender/shape/brokenLine", ["require", "../shape", "./base", "../shape"], function (e) { function t() { this.type = "brokenLine", this.brushTypeOnly = "stroke", this.textPosition = "end" } t.prototype = { buildPath: function (e, t) { var n = t.pointList; if (n.length < 2)return; if (t.smooth && t.smooth !== "spline") { var r = this.smoothBezier(n, t.smooth, !1); e.moveTo(n[0][0], n[0][1]); var i, s, o; for (var u = 0, a = n.length; u < a - 1; u++)i = r[u * 2], s = r[u * 2 + 1], o = n[u + 1], e.bezierCurveTo(i[0], i[1], s[0], s[1], o[0], o[1]) } else { t.smooth === "spline" && (n = this.smoothSpline(n, !1)); if (!t.lineType || t.lineType == "solid") { e.moveTo(n[0][0], n[0][1]); for (var u = 1, a = n.length; u < a; u++)e.lineTo(n[u][0], n[u][1]) } else if (t.lineType == "dashed" || t.lineType == "dotted") { var f = (t.lineWidth || 1) * (t.lineType == "dashed" ? 5 : 1); e.moveTo(n[0][0], n[0][1]); for (var u = 1, a = n.length; u < a; u++)this.dashedLineTo(e, n[u - 1][0], n[u - 1][1], n[u][0], n[u][1], f) } } return }, getRect: function (t) { var n = e("../shape"); return n.get("polygon").getRect(t) } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("brokenLine", new t), t }), define("zrender/shape/rectangle", ["require", "./base", "../shape"], function (e) { function t() { this.type = "rectangle" } t.prototype = { _buildRadiusPath: function (e, t) { var n = t.x, r = t.y, i = t.width, s = t.height, o = t.radius, u, a, f, l; typeof o == "number" ? u = a = f = l = o : o instanceof Array ? o.length === 1 ? u = a = f = l = o[0] : o.length === 2 ? (u = f = o[0], a = l = o[1]) : o.length === 3 ? (u = o[0], a = l = o[1], f = o[2]) : (u = o[0], a = o[1], f = o[2], l = o[3]) : u = a = f = l = 0, e.moveTo(n + u, r), e.lineTo(n + i - a, r), a !== 0 && e.quadraticCurveTo(n + i, r, n + i, r + a), e.lineTo(n + i, r + s - f), f !== 0 && e.quadraticCurveTo(n + i, r + s, n + i - f, r + s), e.lineTo(n + l, r + s), l !== 0 && e.quadraticCurveTo(n, r + s, n, r + s - l), e.lineTo(n, r + u), u !== 0 && e.quadraticCurveTo(n, r, n + u, r) }, buildPath: function (e, t) { t.radius ? this._buildRadiusPath(e, t) : (e.moveTo(t.x, t.y), e.lineTo(t.x + t.width, t.y), e.lineTo(t.x + t.width, t.y + t.height), e.lineTo(t.x, t.y + t.height), e.lineTo(t.x, t.y)); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - t / 2), y: Math.round(e.y - t / 2), width: e.width + t, height: e.height + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("rectangle", new t), t }), define("zrender/shape/ring", ["require", "./base", "../shape"], function (e) { function t() { this.type = "ring" } t.prototype = { buildPath: function (e, t) { e.arc(t.x, t.y, t.r, 0, Math.PI * 2, !1), e.moveTo(t.x + t.r0, t.y), e.arc(t.x, t.y, t.r0, 0, Math.PI * 2, !0); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.r - t / 2), y: Math.round(e.y - e.r - t / 2), width: e.r * 2 + t, height: e.r * 2 + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("ring", new t), t }), define("zrender/tool/math", [], function () { function t(t, n) { return Math.sin(n ? t * e : t) } function n(t, n) { return Math.cos(n ? t * e : t) } function r(t) { return t * e } function i(t) { return t / e } var e = Math.PI / 180; return {sin: t, cos: n, degreeToRadian: r, radianToDegree: i} }), define("zrender/shape/sector", ["require", "../tool/math", "../shape", "./base", "../shape"], function (e) { function n() { this.type = "sector" } var t = e("../tool/math"); n.prototype = { buildPath: function (e, n) { var r = n.x, i = n.y, s = typeof n.r0 == "undefined" ? 0 : n.r0, o = n.r, u = n.startAngle, a = n.endAngle; if (Math.abs(a - u) >= 360) { e.arc(r, i, o, 0, Math.PI * 2, !1), s !== 0 && (e.moveTo(r + s, i), e.arc(r, i, s, 0, Math.PI * 2, !0)); return } u = t.degreeToRadian(u), a = t.degreeToRadian(a); var f = Math.PI * 2, l = t.cos(u), c = t.sin(u); e.moveTo(l * s + r, i - c * s), e.lineTo(l * o + r, i - c * o), e.arc(r, i, o, f - u, f - a, !0), e.lineTo(t.cos(a) * s + r, i - t.sin(a) * s), s !== 0 && e.arc(r, i, s, f - a, f - u, !1); return }, getRect: function (n) { var r = e("../shape"), i = n.x, s = n.y, o = typeof n.r0 == "undefined" ? 0 : n.r0, u = n.r, a = n.startAngle, f = n.endAngle; if (Math.abs(f - a) >= 360)return r.get("ring").getRect(n); a = (720 + a) % 360, f = (720 + f) % 360, f <= a && (f += 360); var l = []; return a <= 90 && f >= 90 && l.push([i, s - u]), a <= 180 && f >= 180 && l.push([i - u, s]), a <= 270 && f >= 270 && l.push([i, s + u]), a <= 360 && f >= 360 && l.push([i + u, s]), a = t.degreeToRadian(a), f = t.degreeToRadian(f), l.push([t.cos(a) * o + i, s - t.sin(a) * o]), l.push([t.cos(a) * u + i, s - t.sin(a) * u]), l.push([t.cos(f) * u + i, s - t.sin(f) * u]), l.push([t.cos(f) * o + i, s - t.sin(f) * o]), r.get("polygon").getRect({ brushType: n.brushType, lineWidth: n.lineWidth, pointList: l }) } }; var r = e("./base"); r.derive(n); var i = e("../shape"); return i.define("sector", new n), n }), define("zrender/shape/text", ["require", "../tool/area", "./base", "../shape"], function (e) { function n() { this.type = "text" } var t = e("../tool/area"); n.prototype = { brush: function (e, n, r) { var i = n.style || {}; r && (i = this.getHighlightStyle(i, n.highlightStyle || {})); if (typeof i.text == "undefined")return; e.save(), this.setContext(e, i), n.__needTransform && e.transform.apply(e, this.updateTransform(n)), i.textFont && (e.font = i.textFont), e.textAlign = i.textAlign || "start", e.textBaseline = i.textBaseline || "middle"; var s = (i.text + "").split("\n"), o = t.getTextHeight("国", i.textFont), u = this.getRect(i), a = i.x, f; i.textBaseline == "top" ? f = u.y : i.textBaseline == "bottom" ? f = u.y + o : f = u.y + o / 2; for (var l = 0, c = s.length; l < c; l++) { if (i.maxWidth)switch (i.brushType) { case"fill": e.fillText(s[l], a, f, i.maxWidth); break; case"stroke": e.strokeText(s[l], a, f, i.maxWidth); break; case"both": e.fillText(s[l], a, f, i.maxWidth), e.strokeText(s[l], a, f, i.maxWidth); break; default: e.fillText(s[l], a, f, i.maxWidth) } else switch (i.brushType) { case"fill": e.fillText(s[l], a, f); break; case"stroke": e.strokeText(s[l], a, f); break; case"both": e.fillText(s[l], a, f), e.strokeText(s[l], a, f); break; default: e.fillText(s[l], a, f) } f += o } e.restore(); return }, getRect: function (e) { var n = t.getTextWidth(e.text, e.textFont), r = t.getTextHeight(e.text, e.textFont), i = e.x; e.textAlign == "end" || e.textAlign == "right" ? i -= n : e.textAlign == "center" && (i -= n / 2); var s; return e.textBaseline == "top" ? s = e.y : e.textBaseline == "bottom" ? s = e.y - r : s = e.y - r / 2, { x: i, y: s, width: n, height: r } } }; var r = e("./base"); r.derive(n); var i = e("../shape"); return i.define("text", new n), n }), define("zrender/shape/heart", ["require", "./base", "../shape"], function (e) { function t() { this.type = "heart" } t.prototype = { buildPath: function (e, t) { e.moveTo(t.x, t.y), e.bezierCurveTo(t.x + t.a / 2, t.y - t.b * 2 / 3, t.x + t.a * 2, t.y + t.b / 3, t.x, t.y + t.b), e.bezierCurveTo(t.x - t.a * 2, t.y + t.b / 3, t.x - t.a / 2, t.y - t.b * 2 / 3, t.x, t.y); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.a - t / 2), y: Math.round(e.y - e.b / 4 - t / 2), width: e.a * 2 + t, height: e.b * 5 / 4 + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("heart", new t), t }), define("zrender/shape/droplet", ["require", "./base", "../shape"], function (e) { function t() { this.type = "droplet" } t.prototype = { buildPath: function (e, t) { e.moveTo(t.x, t.y + t.a), e.bezierCurveTo(t.x + t.a, t.y + t.a, t.x + t.a * 3 / 2, t.y - t.a / 3, t.x, t.y - t.b), e.bezierCurveTo(t.x - t.a * 3 / 2, t.y - t.a / 3, t.x - t.a, t.y + t.a, t.x, t.y + t.a); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.a - t / 2), y: Math.round(e.y - e.b - t / 2), width: e.a * 2 + t, height: e.a + e.b + t } } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("droplet", new t), t }), define("zrender/shape/path", ["require", "./base", "../shape"], function (e) { function t() { this.type = "path" } t.prototype = { _parsePathData: function (e) { if (!e)return []; var t = e, n = ["m", "M", "l", "L", "v", "V", "h", "H", "z", "Z", "c", "C", "q", "Q", "t", "T", "s", "S", "a", "A"]; t = t.replace(/-/g, " -"), t = t.replace(/ /g, " "), t = t.replace(/ /g, ","), t = t.replace(/,,/g, ","); var r; for (r = 0; r < n.length; r++)t = t.replace(new RegExp(n[r], "g"), "|" + n[r]); var i = t.split("|"), s = [], o = 0, u = 0; for (r = 1; r < i.length; r++) { var a = i[r], f = a.charAt(0); a = a.slice(1), a = a.replace(new RegExp("e,-", "g"), "e-"); var l = a.split(","); l.length > 0 && l[0] === "" && l.shift(); for (var c = 0; c < l.length; c++)l[c] = parseFloat(l[c]); while (l.length > 0) { if (isNaN(l[0]))break; var h = null, p = [], d, v, m, g, y, b, w, E, S = o, x = u; switch (f) { case"l": o += l.shift(), u += l.shift(), h = "L", p.push(o, u); break; case"L": o = l.shift(), u = l.shift(), p.push(o, u); break; case"m": o += l.shift(), u += l.shift(), h = "M", p.push(o, u), f = "l"; break; case"M": o = l.shift(), u = l.shift(), h = "M", p.push(o, u), f = "L"; break; case"h": o += l.shift(), h = "L", p.push(o, u); break; case"H": o = l.shift(), h = "L", p.push(o, u); break; case"v": u += l.shift(), h = "L", p.push(o, u); break; case"V": u = l.shift(), h = "L", p.push(o, u); break; case"C": p.push(l.shift(), l.shift(), l.shift(), l.shift()), o = l.shift(), u = l.shift(), p.push(o, u); break; case"c": p.push(o + l.shift(), u + l.shift(), o + l.shift(), u + l.shift()), o += l.shift(), u += l.shift(), h = "C", p.push(o, u); break; case"S": d = o, v = u, m = s[s.length - 1], m.command === "C" && (d = o + (o - m.points[2]), v = u + (u - m.points[3])), p.push(d, v, l.shift(), l.shift()), o = l.shift(), u = l.shift(), h = "C", p.push(o, u); break; case"s": d = o, v = u, m = s[s.length - 1], m.command === "C" && (d = o + (o - m.points[2]), v = u + (u - m.points[3])), p.push(d, v, o + l.shift(), u + l.shift()), o += l.shift(), u += l.shift(), h = "C", p.push(o, u); break; case"Q": p.push(l.shift(), l.shift()), o = l.shift(), u = l.shift(), p.push(o, u); break; case"q": p.push(o + l.shift(), u + l.shift()), o += l.shift(), u += l.shift(), h = "Q", p.push(o, u); break; case"T": d = o, v = u, m = s[s.length - 1], m.command === "Q" && (d = o + (o - m.points[0]), v = u + (u - m.points[1])), o = l.shift(), u = l.shift(), h = "Q", p.push(d, v, o, u); break; case"t": d = o, v = u, m = s[s.length - 1], m.command === "Q" && (d = o + (o - m.points[0]), v = u + (u - m.points[1])), o += l.shift(), u += l.shift(), h = "Q", p.push(d, v, o, u); break; case"A": g = l.shift(), y = l.shift(), b = l.shift(), w = l.shift(), E = l.shift(), S = o, x = u, o = l.shift(), u = l.shift(), h = "A", p = this._convertPoint(S, x, o, u, w, E, g, y, b); break; case"a": g = l.shift(), y = l.shift(), b = l.shift(), w = l.shift(), E = l.shift(), S = o, x = u, o += l.shift(), u += l.shift(), h = "A", p = this._convertPoint(S, x, o, u, w, E, g, y, b) } s.push({command: h || f, points: p}) } (f === "z" || f === "Z") && s.push({command: "z", points: []}) } return s }, _convertPoint: function (e, t, n, r, i, s, o, u, a) { var f = a * (Math.PI / 180), l = Math.cos(f) * (e - n) / 2 + Math.sin(f) * (t - r) / 2, c = -1 * Math.sin(f) * (e - n) / 2 + Math.cos(f) * (t - r) / 2, h = l * l / (o * o) + c * c / (u * u); h > 1 && (o *= Math.sqrt(h), u *= Math.sqrt(h)); var p = Math.sqrt((o * o * u * u - o * o * c * c - u * u * l * l) / (o * o * c * c + u * u * l * l)); i === s && (p *= -1), isNaN(p) && (p = 0); var d = p * o * c / u, v = p * -u * l / o, m = (e + n) / 2 + Math.cos(f) * d - Math.sin(f) * v, g = (t + r) / 2 + Math.sin(f) * d + Math.cos(f) * v, y = function (e) { return Math.sqrt(e[0] * e[0] + e[1] * e[1]) }, b = function (e, t) { return (e[0] * t[0] + e[1] * t[1]) / (y(e) * y(t)) }, w = function (e, t) { return (e[0] * t[1] < e[1] * t[0] ? -1 : 1) * Math.acos(b(e, t)) }, E = w([1, 0], [(l - d) / o, (c - v) / u]), S = [(l - d) / o, (c - v) / u], x = [(-1 * l - d) / o, (-1 * c - v) / u], T = w(S, x); return b(S, x) <= -1 && (T = Math.PI), b(S, x) >= 1 && (T = 0), s === 0 && T > 0 && (T -= 2 * Math.PI), s === 1 && T < 0 && (T += 2 * Math.PI), [m, g, o, u, E, T, f, s] }, buildPath: function (e, t) { var n = t.path, r = this._parsePathData(n), i = t.x || 0, s = t.y || 0, o, u = t.pointList = [], a = []; for (var f = 0, l = r.length; f < l; f++) { r[f].command.toUpperCase() == "M" && (a.length > 0 && u.push(a), a = []), o = r[f].points; for (var c = 0, h = o.length; c < h; c += 2)a.push([o[c] + i, o[c + 1] + s]) } a.length > 0 && u.push(a); var p; for (var f = 0, l = r.length; f < l; f++) { p = r[f].command, o = r[f].points; for (var c = 0, h = o.length; c < h; c++)c % 2 === 0 ? o[c] += i : o[c] += s; switch (p) { case"L": e.lineTo(o[0], o[1]); break; case"M": e.moveTo(o[0], o[1]); break; case"C": e.bezierCurveTo(o[0], o[1], o[2], o[3], o[4], o[5]); break; case"Q": e.quadraticCurveTo(o[0], o[1], o[2], o[3]); break; case"A": var d = o[0], v = o[1], m = o[2], g = o[3], y = o[4], b = o[5], w = o[6], E = o[7], S = m > g ? m : g, x = m > g ? 1 : m / g, T = m > g ? g / m : 1; e.translate(d, v), e.rotate(w), e.scale(x, T), e.arc(0, 0, S, y, y + b, 1 - E), e.scale(1 / x, 1 / T), e.rotate(-w), e.translate(-d, -v); break; case"z": e.closePath() } } return }, getRect: function (e) { var t; e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0; var n = Number.MAX_VALUE, r = Number.MIN_VALUE, i = Number.MAX_VALUE, s = Number.MIN_VALUE, o = e.x || 0, u = e.y || 0, a = this._parsePathData(e.path); for (var f = 0; f < a.length; f++) { var l = a[f].points; for (var c = 0; c < l.length; c++)c % 2 === 0 ? (l[c] + o < n && (n = l[c] + o), l[c] + o > r && (r = l[c] + o)) : (l[c] + u < i && (i = l[c] + u), l[c] + u > s && (s = l[c] + u)) } var h; return n === Number.MAX_VALUE || r === Number.MIN_VALUE || i === Number.MAX_VALUE || s === Number.MIN_VALUE ? h = { x: 0, y: 0, width: 0, height: 0 } : h = {x: Math.round(n - t / 2), y: Math.round(i - t / 2), width: r - n + t, height: s - i + t}, h } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("path", new t), t }), define("zrender/shape/image", ["require", "./base", "../shape"], function (e) { function i() { this.type = "image" } var t = {}, n = [], r; i.prototype = { brush: function (e, i, s, o) { var u = i.style || {}; s && (u = this.getHighlightStyle(u, i.highlightStyle || {})); var a = u.image; if (typeof a == "string") { var f = a; t[f] ? a = t[f] : (a = new Image, a.onload = function () { a.onload = null, clearTimeout(r), n.push(i), r = setTimeout(function () { o(n), n = [] }, 10) }, t[f] = a, a.src = f) } if (a) { if (window.ActiveXObject) { if (a.readyState != "complete")return } else if (!a.complete)return; e.save(), this.setContext(e, u), i.__needTransform && e.transform.apply(e, this.updateTransform(i)); var l = u.width || a.width, c = u.height || a.height, h = u.x, p = u.y; if (u.sWidth && u.sHeight) { var d = u.sx || 0, v = u.sy || 0; e.drawImage(a, d, v, u.sWidth, u.sHeight, h, p, l, c) } else if (u.sx && u.sy) { var d = u.sx, v = u.sy, m = l - d, g = c - v; e.drawImage(a, d, v, m, g, h, p, l, c) } else e.drawImage(a, h, p, l, c); u.width = l, u.height = c, i.style.width = l, i.style.height = c, u.text && this.drawText(e, u, i.style), e.restore() } return }, buildPath: function (e, t) { e.rect(t.x, t.y, t.width, t.height); return }, getRect: function (e) { return {x: e.x, y: e.y, width: e.width, height: e.height} } }; var s = e("./base"); s.derive(i); var o = e("../shape"); return o.define("image", new i), i }), define("zrender/shape/beziercurve", ["require", "./base", "../shape"], function (e) { function t() { this.type = "beziercurve", this.brushTypeOnly = "stroke", this.textPosition = "end" } t.prototype = { buildPath: function (e, t) { e.moveTo(t.xStart, t.yStart), typeof t.cpX2 != "undefined" && typeof t.cpY2 != "undefined" ? e.bezierCurveTo(t.cpX1, t.cpY1, t.cpX2, t.cpY2, t.xEnd, t.yEnd) : e.quadraticCurveTo(t.cpX1, t.cpY1, t.xEnd, t.yEnd) }, getRect: function (e) { var t = Math.min(e.xStart, e.xEnd, e.cpX1), n = Math.min(e.yStart, e.yEnd, e.cpY1), r = Math.max(e.xStart, e.xEnd, e.cpX1), i = Math.max(e.yStart, e.yEnd, e.cpY1), s = e.cpX2, o = e.cpY2; typeof s != "undefined" && typeof o != "undefined" && (t = Math.min(t, s), n = Math.min(n, o), r = Math.max(r, s), i = Math.max(i, o)); var u = e.lineWidth || 1; return {x: t - u, y: n - u, width: r - t + u, height: i - n + u} } }; var n = e("./base"); n.derive(t); var r = e("../shape"); return r.define("beziercurve", new t), t }), define("zrender/shape/star", ["require", "../tool/math", "./base", "../shape"], function (e) { function s() { this.type = "heart" } var t = e("../tool/math"), n = t.sin, r = t.cos, i = Math.PI; s.prototype = { buildPath: function (e, t) { var s = t.n; if (!s || s < 2)return; var o = t.x, u = t.y, a = t.r, f = t.r0; f == null && (f = s > 4 ? a * r(2 * i / s) / r(i / s) : a / 3); var l = i / s, c = -i / 2, h = o + a * r(c), p = u + a * n(c); c += l; var d = t.pointList = []; d.push([h, p]); for (var v = 0, m = s * 2 - 1, g; v < m; v++)g = v % 2 === 0 ? f : a, d.push([o + g * r(c), u + g * n(c)]), c += l; d.push([h, p]), e.moveTo(d[0][0], d[0][1]); for (var v = 0; v < d.length; v++)e.lineTo(d[v][0], d[v][1]); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.r - t / 2), y: Math.round(e.y - e.r - t / 2), width: e.r * 2 + t, height: e.r * 2 + t } } }; var o = e("./base"); o.derive(s); var u = e("../shape"); return u.define("star", new s), s }), define("zrender/shape/isogon", ["require", "../tool/math", "./base", "../shape"], function (e) { function s() { this.type = "isogon" } var t = e("../tool/math"), n = t.sin, r = t.cos, i = Math.PI; s.prototype = { buildPath: function (e, t) { var s = t.n; if (!s || s < 2)return; var o = t.x, u = t.y, a = t.r, f = 2 * i / s, l = -i / 2, c = o + a * r(l), h = u + a * n(l); l += f; var p = t.pointList = []; p.push([c, h]); for (var d = 0, v = s - 1; d < v; d++)p.push([o + a * r(l), u + a * n(l)]), l += f; p.push([c, h]), e.moveTo(p[0][0], p[0][1]); for (var d = 0; d < p.length; d++)e.lineTo(p[d][0], p[d][1]); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.r - t / 2), y: Math.round(e.y - e.r - t / 2), width: e.r * 2 + t, height: e.r * 2 + t } } }; var o = e("./base"); o.derive(s); var u = e("../shape"); return u.define("isogon", new s), s }), define("zrender/animation/easing", [], function () { var e = { Linear: function (e) { return e }, QuadraticIn: function (e) { return e * e }, QuadraticOut: function (e) { return e * (2 - e) }, QuadraticInOut: function (e) { return (e *= 2) < 1 ? .5 * e * e : -0.5 * (--e * (e - 2) - 1) }, CubicIn: function (e) { return e * e * e }, CubicOut: function (e) { return --e * e * e + 1 }, CubicInOut: function (e) { return (e *= 2) < 1 ? .5 * e * e * e : .5 * ((e -= 2) * e * e + 2) }, QuarticIn: function (e) { return e * e * e * e }, QuarticOut: function (e) { return 1 - --e * e * e * e }, QuarticInOut: function (e) { return (e *= 2) < 1 ? .5 * e * e * e * e : -0.5 * ((e -= 2) * e * e * e - 2) }, QuinticIn: function (e) { return e * e * e * e * e }, QuinticOut: function (e) { return --e * e * e * e * e + 1 }, QuinticInOut: function (e) { return (e *= 2) < 1 ? .5 * e * e * e * e * e : .5 * ((e -= 2) * e * e * e * e + 2) }, SinusoidalIn: function (e) { return 1 - Math.cos(e * Math.PI / 2) }, SinusoidalOut: function (e) { return Math.sin(e * Math.PI / 2) }, SinusoidalInOut: function (e) { return .5 * (1 - Math.cos(Math.PI * e)) }, ExponentialIn: function (e) { return e === 0 ? 0 : Math.pow(1024, e - 1) }, ExponentialOut: function (e) { return e === 1 ? 1 : 1 - Math.pow(2, -10 * e) }, ExponentialInOut: function (e) { return e === 0 ? 0 : e === 1 ? 1 : (e *= 2) < 1 ? .5 * Math.pow(1024, e - 1) : .5 * (-Math.pow(2, -10 * (e - 1)) + 2) }, CircularIn: function (e) { return 1 - Math.sqrt(1 - e * e) }, CircularOut: function (e) { return Math.sqrt(1 - --e * e) }, CircularInOut: function (e) { return (e *= 2) < 1 ? -0.5 * (Math.sqrt(1 - e * e) - 1) : .5 * (Math.sqrt(1 - (e -= 2) * e) + 1) }, ElasticIn: function (e) { var t, n = .1, r = .4; return e === 0 ? 0 : e === 1 ? 1 : (!n || n < 1 ? (n = 1, t = r / 4) : t = r * Math.asin(1 / n) / (2 * Math.PI), -(n * Math.pow(2, 10 * (e -= 1)) * Math.sin((e - t) * 2 * Math.PI / r))) }, ElasticOut: function (e) { var t, n = .1, r = .4; return e === 0 ? 0 : e === 1 ? 1 : (!n || n < 1 ? (n = 1, t = r / 4) : t = r * Math.asin(1 / n) / (2 * Math.PI), n * Math.pow(2, -10 * e) * Math.sin((e - t) * 2 * Math.PI / r) + 1) }, ElasticInOut: function (e) { var t, n = .1, r = .4; return e === 0 ? 0 : e === 1 ? 1 : (!n || n < 1 ? (n = 1, t = r / 4) : t = r * Math.asin(1 / n) / (2 * Math.PI), (e *= 2) < 1 ? -0.5 * n * Math.pow(2, 10 * (e -= 1)) * Math.sin((e - t) * 2 * Math.PI / r) : n * Math.pow(2, -10 * (e -= 1)) * Math.sin((e - t) * 2 * Math.PI / r) * .5 + 1) }, BackIn: function (e) { var t = 1.70158; return e * e * ((t + 1) * e - t) }, BackOut: function (e) { var t = 1.70158; return --e * e * ((t + 1) * e + t) + 1 }, BackInOut: function (e) { var t = 2.5949095; return (e *= 2) < 1 ? .5 * e * e * ((t + 1) * e - t) : .5 * ((e -= 2) * e * ((t + 1) * e + t) + 2) }, BounceIn: function (t) { return 1 - e.BounceOut(1 - t) }, BounceOut: function (e) { return e < 1 / 2.75 ? 7.5625 * e * e : e < 2 / 2.75 ? 7.5625 * (e -= 1.5 / 2.75) * e + .75 : e < 2.5 / 2.75 ? 7.5625 * (e -= 2.25 / 2.75) * e + .9375 : 7.5625 * (e -= 2.625 / 2.75) * e + .984375 }, BounceInOut: function (t) { return t < .5 ? e.BounceIn(t * 2) * .5 : e.BounceOut(t * 2 - 1) * .5 + .5 } }; return e }), define("zrender/animation/clip", ["require", "./easing"], function (e) { var t = e("./easing"), n = function (e) { this._targetPool = e.target || {}, this._targetPool.constructor != Array && (this._targetPool = [this._targetPool]), this._life = e.life || 1e3, this._delay = e.delay || 0, this._startTime = (new Date).getTime() + this._delay, this._endTime = this._startTime + this._life * 1e3, this.loop = typeof e.loop == "undefined" ? !1 : e.loop, this.gap = e.gap || 0, this.easing = e.easing || "Linear", this.onframe = e.onframe || null, this.ondestroy = e.ondestroy || null, this.onrestart = e.onrestart || null }; return n.prototype = { step: function (e) { var n = (e - this._startTime) / this._life; if (n < 0)return; n = Math.min(n, 1); var r = typeof this.easing == "string" ? t[this.easing] : this.easing, i; return typeof r == "function" ? i = r(n) : i = n, this.fire("frame", i), n == 1 ? this.loop ? (this.restart(), "restart") : (this._needsRemove = !0, "destroy") : null }, restart: function () { this._startTime = (new Date).getTime() + this.gap }, fire: function (e, t) { for (var n = 0, r = this._targetPool.length; n < r; n++)this["on" + e] && this["on" + e](this._targetPool[n], t) } }, n.prototype.constructor = n, n }), define("zrender/animation/animation", ["require", "./clip"], function (e) { function s(e, t) { return e[t] } function o(e, t, n) { e[t] = n } function u(e, t, n) { return (t - e) * n + e } function a(e, t, n, r, i) { var s = e.length; if (i == 1)for (var o = 0; o < s; o++)r[o] = u(e[o], t[o], n); else { var a = e[0].length; for (var o = 0; o < s; o++)for (var f = 0; f < a; f++)r[o][f] = u(e[o][f], t[o][f], n) } } function f(e) { return typeof e == "undefined" ? !1 : typeof e == "string" ? !1 : typeof e.length != "undefined" } function l(e, t, n, r, i, s, o, u, a) { var f = e.length; if (a == 1)for (var l = 0; l < f; l++)u[l] = c(e[l], t[l], n[l], r[l], i, s, o); else { var h = e[0].length; for (var l = 0; l < f; l++)for (var p = 0; p < h; p++)u[l][p] = c(e[l][p], t[l][p], n[l][p], r[l][p], i, s, o) } } function c(e, t, n, r, i, s, o) { var u = (n - e) * .5, a = (r - t) * .5; return (2 * (t - n) + u + a) * o + (-3 * (t - n) - 2 * u - a) * s + u * i + t } function h(e, t, n, r) { this._tracks = {}, this._target = e, this._loop = t || !1, this._getter = n || s, this._setter = r || o, this._clipCount = 0, this._delay = 0, this._doneList = [], this._onframeList = [], this._clipList = [] } var t = e("./clip"), n = window.requestAnimationFrame || window.msRequestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function (e) { setTimeout(e, 16) }, r = Array.prototype.slice, i = function (e) { e = e || {}, this.stage = e.stage || {}, this.onframe = e.onframe || function () { }, this._clips = [], this._running = !1, this._time = 0 }; return i.prototype = { add: function (e) { this._clips.push(e) }, remove: function (e) { var t = this._clips.indexOf(e); t >= 0 && this._clips.splice(t, 1) }, update: function () { var e = (new Date).getTime(), t = this._clips, n = t.length, r = [], i = []; for (var s = 0; s < n; s++) { var o = t[s], u = o.step(e); u && (r.push(u), i.push(o)) } this.stage && this.stage.update && this._clips.length && this.stage.update(); for (var s = 0; s < n;)t[s]._needsRemove ? (t[s] = t[n - 1], t.pop(), n--) : s++; n = r.length; for (var s = 0; s < n; s++)i[s].fire(r[s]); this._time = e, this.onframe() }, start: function () { function t() { e._running && (e.update(), n(t)) } var e = this; this._running = !0, n(t) }, stop: function () { this._running = !1 }, clear: function () { this._clips = [] }, animate: function (e, t) { t = t || {}; var n = new h(e, t.loop, t.getter, t.setter); return n.animation = this, n } }, i.prototype.constructor = i, h.prototype = { when: function (e, t) { for (var n in t)this._tracks[n] || (this._tracks[n] = [], this._tracks[n].push({ time: 0, value: this._getter(this._target, n) })), this._tracks[n].push({time: parseInt(e, 10), value: t[n]}); return this }, during: function (e) { return this._onframeList.push(e), this }, start: function (e) { var n = this, i = this._setter, s = this._getter, o = n._onframeList.length, h = e === "spline", p = function () { n._clipCount--; if (n._clipCount === 0) { n._tracks = {}; var e = n._doneList.length; for (var t = 0; t < e; t++)n._doneList[t].call(n) } }, d = function (d, v) { var m = d.length; if (!m)return; var g = d[0].value, y = f(g), b = y && f(g[0]) ? 2 : 1; d.sort(function (e, t) { return e.time - t.time }); var w; if (!m)return; w = d[m - 1].time; var E = [], S = []; for (var x = 0; x < m; x++) { E.push(d[x].time / w); if (y)if (b == 2) { S[x] = []; for (var T = 0; T < g.length; T++)S[x].push(r.call(d[x].value[T])) } else S.push(r.call(d[x].value)); else S.push(d[x].value) } var N = 0, C = 0, k, x, L, A, O, M, _, D = function (e, t) { if (t < C) { k = Math.min(N + 1, m - 1); for (x = k; x >= 0; x--)if (E[x] <= t)break; x = Math.min(x, m - 2) } else { for (x = N; x < m; x++)if (E[x] > t)break; x = Math.min(x - 1, m - 2) } N = x, C = t; var r = E[x + 1] - E[x]; if (r === 0)return; L = (t - E[x]) / r, L < 0 && console.log(L), h ? (O = S[x], A = S[x === 0 ? x : x - 1], M = S[x > m - 2 ? m - 1 : x + 1], _ = S[x > m - 3 ? m - 1 : x + 2], y ? l(A, O, M, _, L, L * L, L * L * L, s(e, v), b) : i(e, v, c(A, O, M, _, L, L * L, L * L * L))) : y ? a(S[x], S[x + 1], L, s(e, v), b) : i(e, v, u(S[x], S[x + 1], L)); for (x = 0; x < o; x++)n._onframeList[x](e, t) }, P = new t({target: n._target, life: w, loop: n._loop, delay: n._delay, onframe: D, ondestroy: p}); e && e !== "spline" && (P.easing = e), n._clipList.push(P), n._clipCount++, n.animation.add(P) }; for (var v in this._tracks)d(this._tracks[v], v); return this }, stop: function () { for (var e = 0; e < this._clipList.length; e++) { var t = this._clipList[e]; this.animation.remove(t) } this._clipList = [] }, delay: function (e) { return this._delay = e, this }, done: function (e) { return this._doneList.push(e), this } }, i }), define("zrender/config", { loadingEffect: "spin", EVENT: { RESIZE: "resize", CLICK: "click", MOUSEWHEEL: "mousewheel", MOUSEMOVE: "mousemove", MOUSEOVER: "mouseover", MOUSEOUT: "mouseout", MOUSEDOWN: "mousedown", MOUSEUP: "mouseup", GLOBALOUT: "globalout", DRAGSTART: "dragstart", DRAGEND: "dragend", DRAGENTER: "dragenter", DRAGOVER: "dragover", DRAGLEAVE: "dragleave", DROP: "drop", touchClickDelay: 300 } }), define("zrender/tool/loadingEffect", ["require", "./util", "./color", "./color", "./color", "./color", "./color", "./math"], function (e) { function u(e, t) { n[e] = t } function a(e) { return { shape: "text", highlightStyle: t.merge({ x: s / 2, y: o / 2, text: r, textAlign: "center", textBaseline: "middle", textFont: i, color: "#333", brushType: "fill" }, e, {overwrite: !0, recursive: !0}) } } function f(e) { return {shape: "rectangle", highlightStyle: {x: 0, y: 0, width: s, height: o, brushType: "fill", color: e}} } function l(e, t) { return e <= t[0] ? e = t[0] : e >= t[1] && (e = t[1]), e } function c(n, r, i) { var u = e("./color"); n = t.merge(n, { textStyle: {color: "#888"}, backgroundColor: "rgba(250, 250, 250, 0.8)", effectOption: {x: 0, y: o / 2 - 30, width: s, height: 5, brushType: "fill", timeInterval: 100} }, {overwrite: !1, recursive: !0}); var c = a(n.textStyle), h = f(n.backgroundColor), p = n.effectOption, d = {shape: "rectangle", highlightStyle: t.clone(p)}; d.highlightStyle.color = p.color || u.getLinearGradient(p.x, p.y, p.x + p.width, p.y + p.height, [[0, "#ff6400"], [.5, "#ffe100"], [1, "#b1ff00"]]); if (typeof n.progress != "undefined") { r(h), d.highlightStyle.width = l(n.progress, [0, 1]) * n.effectOption.width, r(d), r(c), i(); return } return d.highlightStyle.width = 0, setInterval(function () { r(h), d.highlightStyle.width < n.effectOption.width ? d.highlightStyle.width += 8 : d.highlightStyle.width = 0, r(d), r(c), i() }, p.timeInterval) } function h(e, n, r) { e.effectOption = t.merge(e.effectOption || {}, { x: s / 2 - 80, y: o / 2, r: 18, colorIn: "#fff", colorOut: "#555", colorWhirl: "#6cf", timeInterval: 50 }); var i = e.effectOption; e = t.merge(e, { textStyle: {color: "#888", x: i.x + i.r + 10, y: i.y, textAlign: "start"}, backgroundColor: "rgba(250, 250, 250, 0.8)" }, {overwrite: !1, recursive: !0}); var u = a(e.textStyle), l = f(e.backgroundColor), c = { shape: "droplet", highlightStyle: { a: Math.round(i.r / 2), b: Math.round(i.r - i.r / 6), brushType: "fill", color: i.colorWhirl } }, h = {shape: "circle", highlightStyle: {r: Math.round(i.r / 6), brushType: "fill", color: i.colorIn}}, p = { shape: "ring", highlightStyle: {r0: Math.round(i.r - i.r / 3), r: i.r, brushType: "fill", color: i.colorOut} }, d = [0, i.x, i.y]; return c.highlightStyle.x = h.highlightStyle.x = p.highlightStyle.x = d[1], c.highlightStyle.y = h.highlightStyle.y = p.highlightStyle.y = d[2], setInterval(function () { n(l), n(p), d[0] -= .3, c.rotation = d, n(c), n(h), n(u), r() }, i.timeInterval) } function p(n, r, i) { var u = e("./color"); n = t.merge(n, { textStyle: {color: "#fff"}, backgroundColor: "rgba(0, 0, 0, 0.8)", effectOption: {n: 30, lineWidth: 1, color: "random", timeInterval: 100} }, {overwrite: !1, recursive: !0}); var l = a(n.textStyle), c = f(n.backgroundColor), h = n.effectOption, p = h.n, d = h.lineWidth, v = [], m, g, y, b; for (var w = 0; w < p; w++)y = -Math.ceil(Math.random() * 1e3), g = Math.ceil(Math.random() * 400), m = Math.ceil(Math.random() * o), h.color == "random" ? b = u.random() : b = h.color, v[w] = { shape: "line", highlightStyle: {xStart: y, yStart: m, xEnd: y + g, yEnd: m, strokeColor: b, lineWidth: d}, animationX: Math.ceil(Math.random() * 100), len: g }; return setInterval(function () { r(c); var e; for (var t = 0; t < p; t++)e = v[t].highlightStyle, e.xStart >= s && (v[t].len = Math.ceil(Math.random() * 400), v[t].highlightStyle.xStart = -400, v[t].highlightStyle.xEnd = -400 + v[t].len, v[t].highlightStyle.yStart = Math.ceil(Math.random() * o), v[t].highlightStyle.yEnd = v[t].highlightStyle.yStart), v[t].highlightStyle.xStart += v[t].animationX, v[t].highlightStyle.xEnd += v[t].animationX, r(v[t]); r(l), i() }, h.timeInterval) } function d(n, r, i) { var u = e("./color"); n = t.merge(n, { textStyle: {color: "#888"}, backgroundColor: "rgba(250, 250, 250, 0.8)", effectOption: {n: 50, lineWidth: 2, brushType: "stroke", color: "random", timeInterval: 100} }, {overwrite: !1, recursive: !0}); var l = a(n.textStyle), c = f(n.backgroundColor), h = n.effectOption, p = h.n, d = h.brushType, v = h.lineWidth, m = [], g; for (var y = 0; y < p; y++)h.color == "random" ? g = u.alpha(u.random(), .3) : g = h.color, m[y] = { shape: "circle", highlightStyle: { x: Math.ceil(Math.random() * s), y: Math.ceil(Math.random() * o), r: Math.ceil(Math.random() * 40), brushType: d, color: g, strokeColor: g, lineWidth: v }, animationY: Math.ceil(Math.random() * 20) }; return setInterval(function () { r(c); var e; for (var t = 0; t < p; t++)e = m[t].highlightStyle, e.y - m[t].animationY + e.r <= 0 && (m[t].highlightStyle.y = o + e.r, m[t].highlightStyle.x = Math.ceil(Math.random() * s)), m[t].highlightStyle.y -= m[t].animationY, r(m[t]); r(l), i() }, h.timeInterval) } function v(n, r, i) { var u = e("./color"); n.effectOption = t.merge(n.effectOption || {}, { x: s / 2 - 80, y: o / 2, r0: 9, r: 15, n: 18, color: "#fff", timeInterval: 100 }); var l = n.effectOption; n = t.merge(n, { textStyle: {color: "#fff", x: l.x + l.r + 10, y: l.y, textAlign: "start"}, backgroundColor: "rgba(0, 0, 0, 0.8)" }, {overwrite: !1, recursive: !0}); var c = a(n.textStyle), h = f(n.backgroundColor), p = l.n, d = l.x, v = l.y, m = l.r0, g = l.r, y = l.color, b = [], w = Math.round(180 / p); for (var E = 0; E < p; E++)b[E] = { shape: "sector", highlightStyle: { x: d, y: v, r0: m, r: g, startAngle: w * E * 2, endAngle: w * E * 2 + w, color: u.alpha(y, (E + 1) / p), brushType: "fill" } }; var S = [0, d, v]; return setInterval(function () { r(h), S[0] -= .3; for (var e = 0; e < p; e++)b[e].rotation = S, r(b[e]); r(c), i() }, l.timeInterval) } function m(n, r, i) { var u = e("./color"), c = e("./math"); n = t.merge(n, { textStyle: {color: "#07a"}, backgroundColor: "rgba(250, 250, 250, 0.8)", effectOption: { x: s / 2, y: o / 2, r0: 60, r: 100, color: "#bbdcff", brushType: "fill", textPosition: "inside", textFont: "normal 30px verdana", textColor: "rgba(30, 144, 255, 0.6)", timeInterval: 100 } }, {overwrite: !1, recursive: !0}); var h = n.effectOption, p = n.textStyle; p.x = typeof p.x != "undefined" ? p.x : h.x, p.y = typeof p.y != "undefined" ? p.y : h.y + (h.r0 + h.r) / 2 - 5; var d = a(n.textStyle), v = f(n.backgroundColor), m = h.x, g = h.y, y = h.r0 + 6, b = h.r - 6, w = h.color, E = u.lift(w, .1), S = {shape: "ring", highlightStyle: t.clone(h)}, x = [], T = u.getGradientColors(["#ff6400", "#ffe100", "#97ff00"], 25), N = 15, C = 240; for (var k = 0; k < 16; k++)x.push({ shape: "sector", highlightStyle: {x: m, y: g, r0: y, r: b, startAngle: C - N, endAngle: C, brushType: "fill", color: E}, _color: u.getLinearGradient(m + y * c.cos(C, !0), g - y * c.sin(C, !0), m + y * c.cos(C - N, !0), g - y * c.sin(C - N, !0), [[0, T[k * 2]], [1, T[k * 2 + 1]]]) }), C -= N; C = 360; for (var k = 0; k < 4; k++)x.push({ shape: "sector", highlightStyle: {x: m, y: g, r0: y, r: b, startAngle: C - N, endAngle: C, brushType: "fill", color: E}, _color: u.getLinearGradient(m + y * c.cos(C, !0), g - y * c.sin(C, !0), m + y * c.cos(C - N, !0), g - y * c.sin(C - N, !0), [[0, T[k * 2 + 32]], [1, T[k * 2 + 33]]]) }), C -= N; var L = 0; if (typeof n.progress != "undefined") { r(v), L = l(n.progress, [0, 1]).toFixed(2) * 100 / 5, S.highlightStyle.text = L * 5 + "%", r(S); for (var k = 0; k < 20; k++)x[k].highlightStyle.color = k < L ? x[k]._color : E, r(x[k]); r(d), i(); return } return setInterval(function () { r(v), L += L >= 20 ? -20 : 1, r(S); for (var e = 0; e < 20; e++)x[e].highlightStyle.color = e < L ? x[e]._color : E, r(x[e]); r(d), i() }, h.timeInterval) } function g(e, t, r) { var i = n.ring; return typeof e.effect == "function" ? i = e.effect : typeof n[e.effect] == "function" && (i = n[e.effect]), s = e.canvasSize.width, o = e.canvasSize.height, i(e, t, r) } function y(e) { clearInterval(e) } var t = e("./util"), n, r = "Loading...", i = "normal 16px Arial", s, o; return n = { getBackgroundShape: f, getTextShape: a, define: u, bar: c, whirling: h, dynamicLine: p, bubble: d, spin: v, ring: m, start: g, stop: y }, n }), define("zrender/tool/event", [], function () { function e(e) { return typeof e.zrenderX != "undefined" && e.zrenderX || typeof e.offsetX != "undefined" && e.offsetX || typeof e.layerX != "undefined" && e.layerX || typeof e.clientX != "undefined" && e.clientX } function t(e) { return typeof e.zrenderY != "undefined" && e.zrenderY || typeof e.offsetY != "undefined" && e.offsetY || typeof e.layerY != "undefined" && e.layerY || typeof e.clientY != "undefined" && e.clientY } function n(e) { return typeof e.wheelDelta != "undefined" && e.wheelDelta || typeof e.detail != "undefined" && -e.detail } function r(e) { e.preventDefault ? (e.preventDefault(), e.stopPropagation()) : (e.returnValue = !1, e.cancelBubble = !0) } function i() { function n(n, r) { return !r || !n ? e : (t[n] || (t[n] = []), t[n].push({h: r, one: !0}), e) } function r(n, r) { return !r || !n ? e : (t[n] || (t[n] = []), t[n].push({h: r, one: !1}), e) } function i(n, r) { if (!n)return t = {}, e; if (r) { if (t[n]) { var i = []; for (var s = 0, o = t[n].length; s < o; s++)t[n][s]["h"] != r && i.push(t[n][s]); t[n] = i } t[n] && t[n].length === 0 && delete t[n] } else delete t[n]; return e } function s(n, r, i) { if (t[n]) { var s = [], o = i || {}; o.type = n, o.event = r; for (var u = 0, a = t[n].length; u < a; u++)t[n][u].h(o), t[n][u].one || s.push(t[n][u]); s.length != t[n].length && (t[n] = s) } return e } var e = this, t = {}; e.one = n, e.bind = r, e.unbind = i, e.dispatch = s } return {getX: e, getY: t, getDelta: n, stop: r, Dispatcher: i} }), define("zrender/zrender", ["require", "./lib/excanvas", "./tool/util", "./tool/env", "./shape", "./shape/circle", "./shape/ellipse", "./shape/line", "./shape/polygon", "./shape/brokenLine", "./shape/rectangle", "./shape/ring", "./shape/sector", "./shape/text", "./shape/heart", "./shape/droplet", "./shape/path", "./shape/image", "./shape/beziercurve", "./shape/star", "./shape/isogon", "./animation/animation", "./config", "./tool/loadingEffect", "./tool/loadingEffect", "./config", "./tool/env", "./tool/event"], function (e) { function o(n, i, s) { var o = this; o.env = e("./tool/env"); var l = e("./shape"); e("./shape/circle"), e("./shape/ellipse"), e("./shape/line"), e("./shape/polygon"), e("./shape/brokenLine"), e("./shape/rectangle"), e("./shape/ring"), e("./shape/sector"), e("./shape/text"), e("./shape/heart"), e("./shape/droplet"), e("./shape/path"), e("./shape/image"), e("./shape/beziercurve"), e("./shape/star"), e("./shape/isogon"); var c; if (typeof s.shape == "undefined") c = l; else { c = {}; for (var h in s.shape)c[h] = s.shape[h]; c.get = function (e) { return c[e] || l.get(e) } } var p = new u(c), d = new a(i, p, c), v = new f(i, p, d, c), m = e("./animation/animation"), g = [], y = new m({ stage: { update: function () { var e = g; for (var t = 0, n = e.length; t < n; t++)p.mod(e[t].id); e.length > 0 && d.refresh() } } }); y.start(), o.getId = function () { return n }, o.addShape = function (e) { return p.add(e), o }, o.delShape = function (e) { return p.del(e), o }, o.modShape = function (e, t, n) { return p.mod(e, t, n), o }, o.modLayer = function (e, t) { d.modLayer(e, t) }, o.addHoverShape = function (e) { return p.addHover(e), o }, o.render = function (e) { return d.render(e), o }, o.refresh = function (e) { return d.refresh(e), o }, o.refreshHover = function (e) { return d.refreshHover(e), o }, o.update = function (e, t) { return d.update(e, t), o }, o.resize = function () { return d.resize(), o }, o.animate = function (e, n, i) { var s = p.get(e); if (s) { var o; if (n) { var u = n.split("."), a = s; for (var f = 0, l = u.length; f < l; f++) { if (!a)continue; a = a[u[f]] } a && (o = a) } else o = s; if (!o) { r.log('Property "' + n + '" is not existed in shape ' + e); return } return typeof s.__aniCount == "undefined" && (s.__aniCount = 0), s.__aniCount === 0 && g.push(s), s.__aniCount++, y.animate(o, {loop: i}).done(function () { s.__aniCount--; if (s.__aniCount === 0) { var e = t.indexOf(g, s); g.splice(e, 1) } }) } r.log('Shape "' + e + '" not existed') }, o.clearAnimation = function () { y.clear() }, o.showLoading = function (e) { return d.showLoading(e), o }, o.hideLoading = function () { return d.hideLoading(), o }, o.newShapeId = function (e) { return p.newShapeId(e) }, o.getWidth = function () { return d.getWidth() }, o.getHeight = function () { return d.getHeight() }, o.toDataURL = function (e, t, n) { return d.toDataURL(e, t, n) }, o.shapeToImage = function (e, t, n) { var r = o.newShapeId("image"); return d.shapeToImage(r, e, t, n) }, o.on = function (e, t) { return v.on(e, t), o }, o.un = function (e, t) { return v.un(e, t), o }, o.trigger = function (e, t) { return v.trigger(e, t), o }, o.clear = function () { return p.del(), d.clear(), o }, o.dispose = function () { y.stop(), y = null, g = null, o.clear(), o = null, p.dispose(), p = null, d.dispose(), d = null, v.dispose(), v = null, r.delInstance(n); return } } function u(e) { function l(e) { e.hoverable || e.onclick || e.draggable || e.onmousemove || e.onmouseover || e.onmouseout || e.onmousedown || e.onmouseup || e.ondragenter || e.ondragover || e.ondragleave || e.ondrop ? e.__silent = !1 : e.__silent = !0, Math.abs(e.rotation[0]) > 1e-4 || Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4 || Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4 ? e.__needTransform = !0 : e.__needTransform = !1, e.style = e.style || {}, e.style.__rect = null } function c(e) { return (e || "") + ++i } function h(e) { var r = { shape: "circle", id: e.id || n.newShapeId(), zlevel: 0, draggable: !1, clickable: !1, hoverable: !0, position: [0, 0], rotation: [0, 0, 0], scale: [1, 1, 0, 0] }; return t.merge(r, e, { overwrite: !0, recursive: !0 }), l(r), s[r.id] = r, o[r.zlevel] = o[r.zlevel] || [], o[r.zlevel].push(r), a = Math.max(a, r.zlevel), f[r.zlevel] = !0, n } function p(e) { return s[e] } function d(e) { if (typeof e != "undefined") { var t = {}; if (e instanceof Array) { if (e.lenth < 1)return; for (var r = 0, i = e.length; r < i; r++)t[e[r].id] = !0 } else t[e] = !0; var l, c, h, p = {}; for (var d in t)if (s[d]) { h = s[d].zlevel, f[h] = !0; if (!p[h]) { c = o[h], l = []; for (var r = 0, i = c.length; r < i; r++)t[c[r].id] || l.push(c[r]); o[h] = l, p[h] = !0 } delete s[d] } } else s = {}, o = [], u = [], a = 0, f = {all: !0}; return n } function v(e, r, i) { var o = s[e]; return o && (f[o.zlevel] = !0, r && (i ? t.mergeFast(o, r, !0, !0) : t.merge(o, r, { overwrite: !0, recursive: !0 })), l(o), f[o.zlevel] = !0, a = Math.max(a, o.zlevel)), n } function m(t, i, o) { var u = s[t]; if (!u)return; u.__needTransform = !0; if (!u.ondrift || u.ondrift && !u.ondrift(u, i, o))if (r.catchBrushException)try { e.get(u.shape).drift(u, i, o) } catch (a) { r.log(a, "drift error of " + u.shape, u) } else e.get(u.shape).drift(u, i, o); return f[u.zlevel] = !0, n } function g(e) { return e.rotation && Math.abs(e.rotation[0]) > 1e-4 || e.position && (Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4) || e.scale && (Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4) ? e.__needTransform = !0 : e.__needTransform = !1, u.push(e), n } function y() { return u = [], n } function b() { return u.length > 0 } function w(e, t) { t || (t = {hover: !1, normal: "down"}); if (t.hover)for (var r = 0, i = u.length; r < i; r++)if (e(u[r]))return n; var a, f; if (typeof t.normal != "undefined")switch (t.normal) { case"down": for (var i = o.length - 1; i >= 0; i--) { a = o[i]; if (a) { f = a.length; while (f--)if (e(a[f]))return n } } break; case"up": for (var r = 0, i = o.length; r < i; r++) { a = o[r]; if (a) { f = a.length; for (var l = 0; l < f; l++)if (e(a[l]))return n } } break; default: for (var r in s)if (e(s[r]))return n } return n } function E() { return a } function S() { return f } function x() { return f = {}, n } function T(e) { return f[e] = !0, n } function N() { s = null, o = null, u = null, n = null; return } var n = this, i = 0, s = {}, o = [], u = [], a = 0, f = {}; n.newShapeId = c, n.add = h, n.get = p, n.del = d, n.addHover = g, n.delHover = y, n.hasHoverShape = b, n.mod = v, n.drift = m, n.iterShape = w, n.getMaxZlevel = E, n.getChangedZlevel = S, n.clearChangedZlevel = x, n.setChangedZlevle = T, n.dispose = N } function a(n, i, s) { function b() { var e = n.currentStyle || document.defaultView.getComputedStyle(n); return ((n.clientWidth || parseInt(e.width, 10)) - parseInt(e.paddingLeft, 10) - parseInt(e.paddingRight, 10)).toFixed(0) - 0 } function w() { var e = n.currentStyle || document.defaultView.getComputedStyle(n); return ((n.clientHeight || parseInt(e.height, 10)) - parseInt(e.paddingTop, 10) - parseInt(e.paddingBottom, 10)).toFixed(0) - 0 } function E() { v.innerHTML = "", n.innerHTML = "", m = b(), g = w(), v.style.position = "relative", v.style.overflow = "hidden", v.style.width = m + "px", v.style.height = g + "px", n.appendChild(v), a = {}, f = {}, l = {}, c = {}, p = i.getMaxZlevel(), a.bg = x("bg", "div"), v.appendChild(a.bg); for (var e = 0; e <= p; e++)a[e] = x(e, "canvas"), v.appendChild(a[e]), G_vmlCanvasManager && G_vmlCanvasManager.initElement(a[e]), f[e] = a[e].getContext("2d"), y != 1 && f[e].scale(y, y); a.hover = x("hover", "canvas"), a.hover.id = "_zrender_hover_", v.appendChild(a.hover), G_vmlCanvasManager && G_vmlCanvasManager.initElement(a.hover), f.hover = a.hover.getContext("2d"), y != 1 && f.hover.scale(y, y) } function S() { var e = i.getMaxZlevel(); if (p < e) { for (var t = p + 1; t <= e; t++)a[t] = x(t, "canvas"), v.insertBefore(a[t], a.hover), G_vmlCanvasManager && G_vmlCanvasManager.initElement(a[t]), f[t] = a[t].getContext("2d"), y != 1 && f[t].scale(y, y); p = e } } function x(e, t) { var n = document.createElement(t); return n.style.position = "absolute", n.style.left = 0, n.style.top = 0, n.style.width = m + "px", n.style.height = g + "px", n.setAttribute("width", m * y), n.setAttribute("height", g * y), n.setAttribute("data-id", e), n } function T(e) { return function (t) { if ((e.all || e[t.zlevel]) && !t.invisible) { var n = f[t.zlevel]; if (n) { if (!t.onbrush || t.onbrush && !t.onbrush(n, t, !1))if (r.catchBrushException)try { s.get(t.shape).brush(n, t, !1, L) } catch (i) { r.log(i, "brush error of " + t.shape, t) } else s.get(t.shape).brush(n, t, !1, L) } else r.log("can not find the specific zlevel canvas!") } } } function N(e) { var t = f.hover; if (!e.onbrush || e.onbrush && !e.onbrush(t, e, !0))if (r.catchBrushException)try { s.get(e.shape).brush(t, e, !0, L) } catch (n) { r.log(n, "hoverBrush error of " + e.shape, e) } else s.get(e.shape).brush(t, e, !0, L) } function C(e) { return B() && H(), S(), A(), i.iterShape(T({all: !0}), {normal: "up"}), i.clearChangedZlevel(), typeof e == "function" && e(), u } function k(e) { S(); var t = i.getChangedZlevel(); if (t.all) A(); else for (var n in t)f[n] && O(n); return i.iterShape(T(t), {normal: "up"}), i.clearChangedZlevel(), typeof e == "function" && e(), u } function L(e, t) { var n; for (var r = 0, s = e.length; r < s; r++)n = e[r], i.mod(n.id, n); return k(t), u } function A() { for (var e in f) { if (e == "hover")continue; O(e) } return u } function O(e) { if (h[e]) { var t = typeof h[e].clearColor != "undefined", n = h[e].motionBlur, r = h[e].lastFrameAlpha; typeof r == "undefined" && (r = .7); if (n) { if (typeof l[e] == "undefined") { var i = x("back-" + e, "canvas"); i.width = a[e].width, i.height = a[e].height, i.style.width = a[e].style.width, i.style.height = a[e].style.height, l[e] = i, c[e] = i.getContext("2d"), y != 1 && c[e].scale(y, y) } c[e].globalCompositeOperation = "copy", c[e].drawImage(a[e], 0, 0, a[e].width / y, a[e].height / y) } t ? (f[e].save(), f[e].fillStyle = h[e].clearColor, f[e].fillRect(0, 0, m * y, g * y), f[e].restore()) : f[e].clearRect(0, 0, m * y, g * y); if (n) { var i = l[e], s = f[e]; s.save(), s.globalAlpha = r, s.drawImage(i, 0, 0, i.width / y, i.height / y), s.restore() } } else f[e].clearRect(0, 0, m * y, g * y) } function M(e, n) { n && (typeof h[e] == "undefined" && (h[e] = {}), t.merge(h[e], n, {recursive: !0, overwrite: !0})) } function _() { return D(), i.iterShape(N, {hover: !0}), i.delHover(), u } function D() { return f && f.hover && f.hover.clearRect(0, 0, m * y, g * y), u } function P(t) { var n = e("./tool/loadingEffect"); return n.stop(d), t = t || {}, t.effect = t.effect || o.loadingEffect, t.canvasSize = { width: m, height: g }, d = n.start(t, i.addHover, _), u.loading = !0, u } function H() { var t = e("./tool/loadingEffect"); return t.stop(d), D(), u.loading = !1, u } function B() { return u.loading } function j() { return m } function F() { return g } function I() { var e, t, n; v.style.display = "none", e = b(), t = w(), v.style.display = ""; if (m != e || t != g) { m = e, g = t, v.style.width = m + "px", v.style.height = g + "px"; for (var r in a)n = a[r], n.setAttribute("width", m), n.setAttribute("height", g), n.style.width = m + "px", n.style.height = g + "px"; i.setChangedZlevle("all"), k() } return u } function q() { B() && H(), n.innerHTML = "", n = null, i = null, s = null, v = null, a = null, f = null, c = null, l = null, u = null; return } function R() { return a.hover } function U(e, t, n) { if (G_vmlCanvasManager)return null; var o = x("image", "canvas"); a.bg.appendChild(o); var u = o.getContext("2d"); y != 1 && u.scale(y, y), u.fillStyle = t || "#fff", u.rect(0, 0, m * y, g * y), u.fill(), i.iterShape(function (e) { if (!e.invisible)if (!e.onbrush || e.onbrush && !e.onbrush(u, e, !1))if (r.catchBrushException)try { s.get(e.shape).brush(u, e, !1, L) } catch (t) { r.log(t, "brush error of " + e.shape, e) } else s.get(e.shape).brush(u, e, !1, L) }, {normal: "up"}); var f = o.toDataURL(e, n); return u = null, a.bg.removeChild(o), f } var o = e("./config"), u = this, a = {}, f = {}, l = {}, c = {}, h = {}, p = 0, d, v = document.createElement("div"); v.onselectstart = function () { return !1 }; var m, g, y = window.devicePixelRatio || 1, z = function () { if (G_vmlCanvasManager)return function () { }; var e = document.createElement("canvas"), t = e.getContext("2d"), n = window.devicePixelRatio || 1; return function (r, i, o, u) { e.style.width = o + "px", e.style.height = u + "px", e.setAttribute("width", o * n), e.setAttribute("height", u * n), t.clearRect(0, 0, o * n, u * n); var a = s.get(i.shape), f = {position: i.position, rotation: i.rotation, scale: i.scale}; i.position = [0, 0, 0], i.rotation = 0, i.scale = [1, 1], a && a.brush(t, i, !1); var l = {shape: "image", id: r, style: {x: 0, y: 0, image: e.toDataURL()}}; return typeof f.position != "undefined" && (l.position = i.position = f.position), typeof f.rotation != "undefined" && (l.rotation = i.rotation = f.rotation), typeof f.scale != "undefined" && (l.scale = i.scale = f.scale), l } }(); u.render = C, u.refresh = k, u.update = L, u.clear = A, u.modLayer = M, u.refreshHover = _, u.clearHover = D, u.showLoading = P, u.hideLoading = H, u.isLoading = B, u.getWidth = j, u.getHeight = F, u.resize = I, u.dispose = q, u.getDomHover = R, u.toDataURL = U, u.shapeToImage = z, E() } function f(t, n, r, i) { function C() { window.addEventListener ? (window.addEventListener("resize", k), !o.os.tablet && !o.os.phone ? (t.addEventListener("click", L), t.addEventListener("mousewheel", A), t.addEventListener("mousemove", O), t.addEventListener("mousedown", P), t.addEventListener("mouseup", H)) : (t.addEventListener("touchstart", B), t.addEventListener("touchmove", j), t.addEventListener("touchend", F)), t.addEventListener("DOMMouseScroll", A), t.addEventListener("mouseout", M)) : (window.attachEvent("onresize", k), t.attachEvent("onclick", L), t.attachEvent("onmousewheel", A), t.attachEvent("onmousemove", O), t.attachEvent("onmouseout", M), t.attachEvent("onmousedown", P), t.attachEvent("onmouseup", H)) } function k(e) { c = e || window.event, p = null, m = !1, a.dispatch(s.EVENT.RESIZE, c) } function L(e) { c = J(e), p ? p && p.clickable && X(p, s.EVENT.CLICK) : X(p, s.EVENT.CLICK), O(c) } function A(e) { c = J(e), X(p, s.EVENT.MOUSEWHEEL), O(c) } function O(e) { if (r.isLoading())return; c = J(e), E = x, S = T, x = f(c), T = l(c), I(), h = !1, n.iterShape($, {normal: "down"}); if (!h) { if (!v || p && p.id != v.id) D(), U(); p = null, n.delHover(), r.clearHover() } v && (n.drift(v.id, x - E, T - S), n.addHover(v)), v || h && p.draggable ? t.style.cursor = "move" : h && p.clickable ? t.style.cursor = "pointer" : t.style.cursor = "default", X(p, s.EVENT.MOUSEMOVE), (v || h || n.hasHoverShape()) && r.refreshHover() } function M(e) { c = J(e); var n = c.toElement || c.relatedTarget; if (n != t)while (n && n.nodeType != 9) { if (n == t) { O(e); return } n = n.parentNode } c.zrenderX = E, c.zrenderY = S, t.style.cursor = "default", m = !1, D(), z(), W(), r.isLoading() || r.refreshHover(), a.dispatch(s.EVENT.GLOBALOUT, c) } function _() { X(p, s.EVENT.MOUSEOVER) } function D() { X(p, s.EVENT.MOUSEOUT) } function P(e) { if (w == 2) { w = e.button, d = null; return } y = new Date, c = J(e), m = !0, d = p, X(p, s.EVENT.MOUSEDOWN), w = e.button } function H(e) { c = J(e), t.style.cursor = "default", m = !1, d = null, X(p, s.EVENT.MOUSEUP), z(), W() } function B(e) { c = J(e, !0), b = new Date, V(), P(c) } function j(e) { c = J(e, !0), O(c), g && u.stop(e) } function F(e) { c = J(e, !0), H(c), new Date - b < s.EVENT.touchClickDelay && (V(), L(c)), r.clearHover() } function I() { if (m && p && p.draggable && !v && d == p) { if (p.dragEnableTime && new Date - y < p.dragEnableTime)return; v = p, g = !0, v.invisible = !0, n.mod(v.id, v), X(v, s.EVENT.DRAGSTART), r.refresh() } } function q() { v && X(p, s.EVENT.DRAGENTER, v) } function R() { v && X(p, s.EVENT.DRAGOVER, v) } function U() { v && X(p, s.EVENT.DRAGLEAVE, v) } function z() { v && (v.invisible = !1, n.mod(v.id, v), r.refresh(), X(p, s.EVENT.DROP, v)) } function W() { v && (X(v, s.EVENT.DRAGEND), p = null), g = !1, v = null } function X(e, t, n) { var r = "on" + t, i = {type: t, event: c, target: e}; n && (i.dragged = n), e ? (!e[r] || !e[r](i)) && a.dispatch(t, c, i) : n || a.dispatch(t, c) } function V() { p = null, x = c.zrenderX, T = c.zrenderY, n.iterShape($, {normal: "down"}), p || (x += 10, n.iterShape($, {normal: "down"})), p || (x -= 20, n.iterShape($, {normal: "down"})), p || (x += 10, T += 10, n.iterShape($, {normal: "down"})), p || (T -= 20, n.iterShape($, {normal: "down"})), p && (c.zrenderX = x, c.zrenderY = T) } function $(e) { if (v && v.id == e.id)return !1; if (e.__silent)return !1; var t = i.get(e.shape); return t.isCover(e, x, T) ? (e.hoverable && n.addHover(e), p != e && (D(), U(), p = e, q()), _(), R(), h = !0, !0) : !1 } function J(e, n) { if (!n) { c = e || window.event; var r = c.toElement || c.relatedTarget || c.srcElement || c.target; r && r != N && (c.zrenderX = (typeof c.offsetX != "undefined" ? c.offsetX : c.layerX) + r.offsetLeft, c.zrenderY = (typeof c.offsetY != "undefined" ? c.offsetY : c.layerY) + r.offsetTop) } else { c = e; var i = c.type != "touchend" ? c.targetTouches[0] : c.changedTouches[0]; i && (c.zrenderX = i.clientX - t.offsetLeft + document.body.scrollLeft, c.zrenderY = i.clientY - t.offsetTop + document.body.scrollTop) } return c } function K(e, t) { return a.bind(e, t), a } function Q(e, t) { return a.unbind(e, t), a } function G(e, t) { switch (e) { case s.EVENT.RESIZE: k(t); break; case s.EVENT.CLICK: L(t); break; case s.EVENT.MOUSEWHEEL: A(t); break; case s.EVENT.MOUSEMOVE: O(t); break; case s.EVENT.MOUSEDOWN: P(t); break; case s.EVENT.MOUSEUP: _mouseUpHandleru(t); break; case s.EVENT.MOUSEOUT: M(t) } } function Y() { window.removeEventListener ? (window.removeEventListener("resize", k), !o.os.tablet && !o.os.phone ? (t.removeEventListener("click", L), t.removeEventListener("mousewheel", A), t.removeEventListener("mousemove", O), t.removeEventListener("mousedown", P), t.removeEventListener("mouseup", H)) : (t.removeEventListener("touchstart", B), t.removeEventListener("touchmove", j), t.removeEventListener("touchend", F)), t.removeEventListener("DOMMouseScroll", A), t.removeEventListener("mouseout", M)) : (window.detachEvent("onresize", k), t.detachEvent("onclick", L), t.detachEvent("onmousewheel", A), t.detachEvent("onmousemove", O), t.detachEvent("onmouseout", M), t.detachEvent("onmousedown", P), t.detachEvent("onmouseup", H)), t = null, N = null, n = null, r = null, i = null, Q(), a = null; return } var s = e("./config"), o = e("./tool/env"), u = e("./tool/event"); u.Dispatcher.call(this); var a = this, f = u.getX, l = u.getY, c, h = !1, p = null, d = null, v = null, m = !1, g = !1, y, b, w, E = 0, S = 0, x = 0, T = 0, N = r.getDomHover(); a.on = K, a.un = Q, a.trigger = G, a.dispose = Y, C() } e("./lib/excanvas"); var t = e("./tool/util"), n = {}, r = n, i = 0, s = {}; return n.version = "1.1.2", n.init = function (e, t) { var n = new o(++i + "", e, t || {}); return s[i] = n, n }, n.dispose = function (e) { if (e) e.dispose(); else { for (var t in s)s[t].dispose(); s = {} } return n }, n.getInstance = function (e) { return s[e] }, n.delInstance = function (e) { return s[e] && (s[e] = null, delete s[e]), n }, n.catchBrushException = !1, n.debugMode = 0, n.log = function () { if (n.debugMode === 0)return; if (n.debugMode == 1)for (var e in arguments)throw new Error(arguments[e]); else if (n.debugMode > 1)for (var e in arguments)console.log(arguments[e]); return n }, n }), define("zrender", ["zrender/zrender"], function (e) { return e }), define("echarts/util/shape/icon", ["require", "zrender/tool/matrix", "zrender/shape", "zrender/shape", "zrender/shape", "zrender/shape", "zrender/shape/base", "zrender/shape"], function (e) { function n() { this.type = "icon", this._iconLibrary = { mark: r, markUndo: i, markClear: s, dataZoom: o, dataZoomReset: u, restore: a, lineChart: f, barChart: l, stackChart: c, tiledChart: h, dataView: p, saveAsImage: d, cross: v, circle: m, rectangle: g, triangle: y, diamond: b, arrow: w, star: E, heart: S, droplet: x, pin: T, image: N } } function r(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x, t.y + t.height), e.lineTo(t.x + 5 * n, t.y + 14 * r), e.lineTo(t.x + t.width, t.y + 3 * r), e.lineTo(t.x + 13 * n, t.y), e.lineTo(t.x + 2 * n, t.y + 11 * r), e.lineTo(t.x, t.y + t.height), e.moveTo(t.x + 6 * n, t.y + 10 * r), e.lineTo(t.x + 14 * n, t.y + 2 * r), e.moveTo(t.x + 10 * n, t.y + 13 * r), e.lineTo(t.x + t.width, t.y + 13 * r), e.moveTo(t.x + 13 * n, t.y + 10 * r), e.lineTo(t.x + 13 * n, t.y + t.height) } function i(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x, t.y + t.height), e.lineTo(t.x + 5 * n, t.y + 14 * r), e.lineTo(t.x + t.width, t.y + 3 * r), e.lineTo(t.x + 13 * n, t.y), e.lineTo(t.x + 2 * n, t.y + 11 * r), e.lineTo(t.x, t.y + t.height), e.moveTo(t.x + 6 * n, t.y + 10 * r), e.lineTo(t.x + 14 * n, t.y + 2 * r), e.moveTo(t.x + 10 * n, t.y + 13 * r), e.lineTo(t.x + t.width, t.y + 13 * r) } function s(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x + 4 * n, t.y + 15 * r), e.lineTo(t.x + 9 * n, t.y + 13 * r), e.lineTo(t.x + 14 * n, t.y + 8 * r), e.lineTo(t.x + 11 * n, t.y + 5 * r), e.lineTo(t.x + 6 * n, t.y + 10 * r), e.lineTo(t.x + 4 * n, t.y + 15 * r), e.moveTo(t.x + 5 * n, t.y), e.lineTo(t.x + 11 * n, t.y), e.moveTo(t.x + 5 * n, t.y + r), e.lineTo(t.x + 11 * n, t.y + r), e.moveTo(t.x, t.y + 2 * r), e.lineTo(t.x + t.width, t.y + 2 * r), e.moveTo(t.x, t.y + 5 * r), e.lineTo(t.x + 3 * n, t.y + t.height), e.lineTo(t.x + 13 * n, t.y + t.height), e.lineTo(t.x + t.width, t.y + 5 * r) } function o(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x, t.y + 3 * r), e.lineTo(t.x + 6 * n, t.y + 3 * r), e.moveTo(t.x + 3 * n, t.y), e.lineTo(t.x + 3 * n, t.y + 6 * r), e.moveTo(t.x + 3 * n, t.y + 8 * r), e.lineTo(t.x + 3 * n, t.y + t.height), e.lineTo(t.x + t.width, t.y + t.height), e.lineTo(t.x + t.width, t.y + 3 * r), e.lineTo(t.x + 8 * n, t.y + 3 * r), e.moveTo(t.x, t.y), e.lineTo(t.x, t.y) } function u(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x + 6 * n, t.y), e.lineTo(t.x + 2 * n, t.y + 3 * r), e.lineTo(t.x + 6 * n, t.y + 6 * r), e.moveTo(t.x + 2 * n, t.y + 3 * r), e.lineTo(t.x + 14 * n, t.y + 3 * r), e.lineTo(t.x + 14 * n, t.y + 11 * r), e.moveTo(t.x + 2 * n, t.y + 5 * r), e.lineTo(t.x + 2 * n, t.y + 13 * r), e.lineTo(t.x + 14 * n, t.y + 13 * r), e.moveTo(t.x + 10 * n, t.y + 10 * r), e.lineTo(t.x + 14 * n, t.y + 13 * r), e.lineTo(t.x + 10 * n, t.y + t.height), e.moveTo(t.x, t.y), e.lineTo(t.x, t.y) } function a(e, t) { var n = t.width / 16, r = t.height / 16, i = t.width / 2; e.lineWidth = 1.5, e.arc(t.x + i, t.y + i, i - n, 0, Math.PI * 2 / 3), e.moveTo(t.x + 3 * n, t.y + t.height), e.lineTo(t.x + 0 * n, t.y + 12 * r), e.lineTo(t.x + 5 * n, t.y + 11 * r), e.moveTo(t.x, t.y + 8 * r), e.arc(t.x + i, t.y + i, i - n, Math.PI, Math.PI * 5 / 3), e.moveTo(t.x + 13 * n, t.y), e.lineTo(t.x + t.width, t.y + 4 * r), e.lineTo(t.x + 11 * n, t.y + 5 * r), e.moveTo(t.x, t.y), e.lineTo(t.x, t.y) } function f(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x, t.y), e.lineTo(t.x, t.y + t.height), e.lineTo(t.x + t.width, t.y + t.height), e.moveTo(t.x + 2 * n, t.y + 14 * r), e.lineTo(t.x + 7 * n, t.y + 6 * r), e.lineTo(t.x + 11 * n, t.y + 11 * r), e.lineTo(t.x + 15 * n, t.y + 2 * r), e.moveTo(t.x, t.y), e.lineTo(t.x, t.y) } function l(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x, t.y), e.lineTo(t.x, t.y + t.height), e.lineTo(t.x + t.width, t.y + t.height), e.moveTo(t.x + 3 * n, t.y + 14 * r), e.lineTo(t.x + 3 * n, t.y + 6 * r), e.lineTo(t.x + 4 * n, t.y + 6 * r), e.lineTo(t.x + 4 * n, t.y + 14 * r), e.moveTo(t.x + 7 * n, t.y + 14 * r), e.lineTo(t.x + 7 * n, t.y + 2 * r), e.lineTo(t.x + 8 * n, t.y + 2 * r), e.lineTo(t.x + 8 * n, t.y + 14 * r), e.moveTo(t.x + 11 * n, t.y + 14 * r), e.lineTo(t.x + 11 * n, t.y + 9 * r), e.lineTo(t.x + 12 * n, t.y + 9 * r), e.lineTo(t.x + 12 * n, t.y + 14 * r) } function c(e, t) { var n = t.x, r = t.y, i = t.width, s = t.height, o = Math.round(s / 3), u = 3; while (u--)e.rect(n, r + o * u + 2, i, 2) } function h(e, t) { var n = t.x, r = t.y, i = t.width, s = t.height, o = Math.round(i / 3), u = 3; while (u--)e.rect(n + o * u, r, 2, s) } function p(e, t) { var n = t.width / 16; e.moveTo(t.x + n, t.y), e.lineTo(t.x + n, t.y + t.height), e.lineTo(t.x + 15 * n, t.y + t.height), e.lineTo(t.x + 15 * n, t.y), e.lineTo(t.x + n, t.y), e.moveTo(t.x + 3 * n, t.y + 3 * n), e.lineTo(t.x + 13 * n, t.y + 3 * n), e.moveTo(t.x + 3 * n, t.y + 6 * n), e.lineTo(t.x + 13 * n, t.y + 6 * n), e.moveTo(t.x + 3 * n, t.y + 9 * n), e.lineTo(t.x + 13 * n, t.y + 9 * n), e.moveTo(t.x + 3 * n, t.y + 12 * n), e.lineTo(t.x + 9 * n, t.y + 12 * n) } function d(e, t) { var n = t.width / 16, r = t.height / 16; e.moveTo(t.x, t.y), e.lineTo(t.x, t.y + t.height), e.lineTo(t.x + t.width, t.y + t.height), e.lineTo(t.x + t.width, t.y), e.lineTo(t.x, t.y), e.moveTo(t.x + 4 * n, t.y), e.lineTo(t.x + 4 * n, t.y + 8 * r), e.lineTo(t.x + 12 * n, t.y + 8 * r), e.lineTo(t.x + 12 * n, t.y), e.moveTo(t.x + 6 * n, t.y + 11 * r), e.lineTo(t.x + 6 * n, t.y + 13 * r), e.lineTo(t.x + 10 * n, t.y + 13 * r), e.lineTo(t.x + 10 * n, t.y + 11 * r), e.lineTo(t.x + 6 * n, t.y + 11 * r), e.moveTo(t.x, t.y), e.lineTo(t.x, t.y) } function v(e, t) { var n = t.x, r = t.y, i = t.width, s = t.height; e.moveTo(n, r + s / 2), e.lineTo(n + i, r + s / 2), e.moveTo(n + i / 2, r), e.lineTo(n + i / 2, r + s) } function m(e, t) { var n = t.width / 2, r = t.height / 2, i = Math.min(n, r); e.moveTo(t.x + n + i, t.y + r), e.arc(t.x + n, t.y + r, i, 0, Math.PI * 2) } function g(e, t) { e.rect(t.x, t.y, t.width, t.height) } function y(e, t) { var n = t.width / 2, r = t.height / 2, i = t.x + n, s = t.y + r, o = Math.min(n, r); e.moveTo(i, s - o), e.lineTo(i + o, s + o), e.lineTo(i - o, s + o), e.lineTo(i, s - o) } function b(e, t) { var n = t.width / 2, r = t.height / 2, i = t.x + n, s = t.y + r, o = Math.min(n, r); e.moveTo(i, s - o), e.lineTo(i + o, s), e.lineTo(i, s + o), e.lineTo(i - o, s), e.lineTo(i, s - o) } function w(e, t) { var n = t.x, r = t.y, i = t.width / 16; e.moveTo(n + 8 * i, r), e.lineTo(n + i, r + t.height), e.lineTo(n + 8 * i, r + t.height / 4 * 3), e.lineTo(n + 15 * i, r + t.height), e.lineTo(n + 8 * i, r) } function E(t, n) { var r = n.width / 2, i = n.height / 2, s = e("zrender/shape").get("star"); s.buildPath(t, {x: n.x + r, y: n.y + i, r: Math.min(r, i), n: n.n || 5}) } function S(t, n) { var r = e("zrender/shape").get("heart"); r.buildPath(t, {x: n.x + n.width / 2, y: n.y + n.height * .2, a: n.width / 2, b: n.height * .8}) } function x(t, n) { var r = e("zrender/shape").get("droplet"); r.buildPath(t, {x: n.x + n.width * .5, y: n.y + n.height * .5, a: n.width * .5, b: n.height * .8}) } function T(e, t) { var n = t.x, r = t.y - t.height / 2 * 1.5, i = t.width / 2, s = t.height / 2, o = Math.min(i, s); e.arc(n + i, r + s, o, Math.PI / 5 * 4, Math.PI / 5), e.lineTo(n + i, r + s + o * 1.5) } function N(t, n) { setTimeout(function () { e("zrender/shape").get("image").brush(t, {style: n}) }, 100) } var t = e("zrender/tool/matrix"); return n.prototype = { buildPath: function (e, t) { this._iconLibrary[t.iconType] ? this._iconLibrary[t.iconType](e, t) : (e.moveTo(t.x, t.y), e.lineTo(t.x + t.width, t.y), e.lineTo(t.x + t.width, t.y + t.height), e.lineTo(t.x, t.y + t.height), e.lineTo(t.x, t.y)); return }, getRect: function (e) { return { x: Math.round(e.x), y: Math.round(e.y - (e.iconType == "pin" ? e.height / 2 * 1.5 : 0)), width: e.width, height: e.height } }, isCover: function (e, n, r) { if (e.__needTransform && e._transform) { var i = []; t.invert(i, e._transform); var s = [n, r]; t.mulVector(s, i, [n, r, 1]), n == s[0] && r == s[1] && (Math.abs(e.rotation[0]) > 1e-4 || Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4 || Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4 ? e.__needTransform = !0 : e.__needTransform = !1), n = s[0], r = s[1] } var o; e.style.__rect ? o = e.style.__rect : (o = this.getRect(e.style), e.style.__rect = o); var u = o.height < 8 || o.width < 8 ? 4 : 0; return n >= o.x - u && n <= o.x + o.width + u && r >= o.y - u && r <= o.y + o.height + u ? !0 : !1 }, define: function (e, t) { this._iconLibrary[e] = t }, get: function (e) { return this._iconLibrary[e] } }, e("zrender/shape/base").derive(n), e("zrender/shape").define("icon", new n), n }), define("echarts/util/shape/markLine", ["require", "zrender/tool/matrix", "zrender/shape", "zrender/shape", "zrender/shape/base", "zrender/shape"], function (e) { function n() { this.type = "markLine" } var t = e("zrender/tool/matrix"); return n.prototype = { brush: function (e, t, n) { var r = t.style || {}; n && (r = this.getHighlightStyle(r, t.highlightStyle || {})), e.save(), this.setContext(e, r), t.__needTransform && e.transform.apply(e, this.updateTransform(t)), e.beginPath(), this.buildLinePath(e, r), e.stroke(), this.brushSymbol(t, e, r, 0), this.brushSymbol(t, e, r, 1), typeof r.text != "undefined" && this.drawText(e, r, t.style), e.restore(); return }, buildLinePath: function (e, t) { var n = t.pointList || this.getPointList(t); t.pointList = n, typeof t.pointListLength == "undefined" && (t.pointListLength = n.length); var r = Math.round(t.pointListLength); if (!t.lineType || t.lineType == "solid") { e.moveTo(n[0][0], n[0][1]); for (var i = 1; i < r; i++)e.lineTo(n[i][0], n[i][1]) } else if (t.lineType == "dashed" || t.lineType == "dotted")if (t.smooth !== "spline") { var s = (t.lineWidth || 1) * (t.lineType == "dashed" ? 5 : 1); e.moveTo(n[0][0], n[0][1]); for (var i = 1; i < r; i++)this.dashedLineTo(e, n[i - 1][0], n[i - 1][1], n[i][0], n[i][1], s) } else for (var i = 0; i < r - 1; i += 2)e.moveTo(n[i][0], n[i][1]), e.lineTo(n[i + 1][0], n[i + 1][1]) }, brushSymbol: function (n, r, i, s) { if (i.symbol[s] == "none")return; r.save(), r.beginPath(), r.lineWidth = i.symbolBorder, r.strokeStyle = i.symbolBorderColor, i.iconType = i.symbol[s].replace("empty", "").toLowerCase(), i.symbol[s].match("empty") && (r.fillStyle = "#fff"); var o = Math.round(i.pointListLength || i.pointList.length), u = s === 0 ? i.pointList[0][0] : i.pointList[o - 1][0], a = s === 0 ? i.pointList[0][1] : i.pointList[o - 1][1], f = typeof i.symbolRotate[s] != "undefined" ? i.symbolRotate[s] - 0 : 0, l; f !== 0 && (l = t.create(), t.identity(l), (u || a) && t.translate(l, l, [-u, -a]), t.rotate(l, l, f * Math.PI / 180), (u || a) && t.translate(l, l, [u, a]), r.transform.apply(r, l)); if (i.iconType == "arrow" && f === 0) this.buildArrawPath(r, i, s); else { var c = i.symbolSize[s]; i.x = u - c, i.y = a - c, i.width = c * 2, i.height = c * 2, e("zrender/shape").get("icon").buildPath(r, i) } r.closePath(), r.fill(), r.stroke(), r.restore() }, buildArrawPath: function (e, t, n) { var r = Math.round(t.pointListLength || t.pointList.length), i = t.symbolSize[n] * 2, s = t.pointList[0][0], o = t.pointList[r - 1][0], u = t.pointList[0][1], a = t.pointList[r - 1][1], f = 0; t.smooth === "spline" && (f = .2); var l = Math.atan(Math.abs((a - u) / (s - o))); n === 0 ? o > s ? a > u ? l = Math.PI * 2 - l + f : l += f : a > u ? l += Math.PI - f : l = Math.PI - l - f : s > o ? u > a ? l = Math.PI * 2 - l + f : l += f : u > a ? l += Math.PI - f : l = Math.PI - l - f; var c = Math.PI / 8, h = n === 0 ? s : o, p = n === 0 ? u : a, d = [[h + i * Math.cos(l - c), p - i * Math.sin(l - c)], [h + i * .6 * Math.cos(l), p - i * .6 * Math.sin(l)], [h + i * Math.cos(l + c), p - i * Math.sin(l + c)]]; e.moveTo(h, p); for (var v = 0, m = d.length; v < m; v++)e.lineTo(d[v][0], d[v][1]); e.lineTo(h, p) }, getPointList: function (e) { var t = [[e.xStart, e.yStart], [e.xEnd, e.yEnd]]; if (e.smooth === "spline") { var n = t[1][0], r = t[1][1]; t[3] = [n, r], t[1] = this.getOffetPoint(t[0], t[3]), t[2] = this.getOffetPoint(t[3], t[0]), t = this.smoothSpline(t, !1), t[t.length - 1] = [n, r] } return t }, getOffetPoint: function (e, t) { var n = Math.sqrt(Math.round((e[0] - t[0]) * (e[0] - t[0]) + (e[1] - t[1]) * (e[1] - t[1]))) / 3, r = [e[0], e[1]], i, s = .2; if (e[0] != t[0] && e[1] != t[1]) { var o = (t[1] - e[1]) / (t[0] - e[0]); i = Math.atan(o) } else e[0] == t[0] ? i = (e[1] <= t[1] ? 1 : -1) * Math.PI / 2 : i = 0; var u, a; return e[0] <= t[0] ? (i -= s, u = Math.round(Math.cos(i) * n), a = Math.round(Math.sin(i) * n), r[0] += u, r[1] += a) : (i += s, u = Math.round(Math.cos(i) * n), a = Math.round(Math.sin(i) * n), r[0] -= u, r[1] -= a), r }, getRect: function (e) { var t = e.lineWidth || 1; return { x: Math.min(e.xStart, e.xEnd) - t, y: Math.min(e.yStart, e.yEnd) - t, width: Math.abs(e.xStart - e.xEnd) + t, height: Math.abs(e.yStart - e.yEnd) + t } }, isCover: function (t, n, r) { return e("zrender/shape").get(t.style.smooth !== "spline" ? "line" : "brokenLine").isCover(t, n, r) } }, e("zrender/shape/base").derive(n), e("zrender/shape").define("markLine", new n), n }), define("echarts/chart", [], function () { var e = {}, t = {}; return e.define = function (n, r) { return t[n] = r, e }, e.get = function (e) { return t[e] }, e }), define("echarts/util/ecData", [], function () { function e(e, t, n, r, i, s, o, u) { var a; return typeof r != "undefined" && (typeof r.value != "undefined" ? a = r.value : a = r), e._echartsData = { _series: t, _seriesIndex: n, _data: r, _dataIndex: i, _name: s, _value: a, _special: o, _special2: u }, e._echartsData } function t(e, t) { var n = e._echartsData; if (!t)return n; switch (t) { case"series": return n && n._series; case"seriesIndex": return n && n._seriesIndex; case"data": return n && n._data; case"dataIndex": return n && n._dataIndex; case"name": return n && n._name; case"value": return n && n._value; case"special": return n && n._special; case"special2": return n && n._special2 } return null } function n(e, t, n) { e._echartsData = e._echartsData || {}; switch (t) { case"series": e._echartsData._series = n; break; case"seriesIndex": e._echartsData._seriesIndex = n; break; case"data": e._echartsData._data = n; break; case"dataIndex": e._echartsData._dataIndex = n; break; case"name": e._echartsData._name = n; break; case"value": e._echartsData._value = n; break; case"special": e._echartsData._special = n; break; case"special2": e._echartsData._special2 = n } } return {pack: e, set: n, get: t} }), define("echarts/util/ecQuery", ["zrender/tool/util"], function () { function t(e, t) { if (typeof e == "undefined")return undefined; if (!t)return e; t = t.split("."); var n = t.length, r = 0; while (r < n) { e = e[t[r]]; if (typeof e == "undefined")return undefined; r++ } return e } function n(e, n) { var r; for (var i = 0, s = e.length; i < s; i++) { r = t(e[i], n); if (typeof r != "undefined")return r } return undefined } function r(n, r) { var i, s, o = n.length; while (o--)s = t(n[o], r), typeof s != "undefined" && (typeof i == "undefined" ? i = e.clone(s) : e.merge(i, s, { overwrite: !0, recursive: !0 })); return i } var e = require("zrender/tool/util"); return {query: t, deepQuery: n, deepMerge: r} }), define("echarts/util/number", [], function () { function e(e) { return e.replace(/^\s\s*/, "").replace(/\s\s*$/, "") } function t(t, n) { return typeof t == "string" ? e(t).match(/%$/) ? parseFloat(t) / 100 * n : parseFloat(t) : t } function n(e, n) { return [t(n[0], e.getWidth()), t(n[1], e.getHeight())] } function r(e, n) { n instanceof Array || (n = [0, n]); var r = Math.min(e.getWidth(), e.getHeight()) / 2; return [t(n[0], r), t(n[1], r)] } function i(e) { return isNaN(e) ? "-" : (e = (e + "").split("."), e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g, "$1,") + (e.length > 1 ? "." + e[1] : "")) } return {parsePercent: t, parseCenter: n, parseRadius: r, addCommas: i} }), define("echarts/component/base", ["require", "../util/ecData", "../util/ecQuery", "../util/number", "zrender/tool/util", "zrender/tool/area", "zrender/tool/env"], function (e) { function t(t, n) { function h(e) { e = e || a.type + ""; switch (e) { case t.COMPONENT_TYPE_GRID: case t.COMPONENT_TYPE_AXIS_CATEGORY: case t.COMPONENT_TYPE_AXIS_VALUE: return 0; case t.CHART_TYPE_LINE: case t.CHART_TYPE_BAR: case t.CHART_TYPE_SCATTER: case t.CHART_TYPE_PIE: case t.CHART_TYPE_RADAR: case t.CHART_TYPE_MAP: case t.CHART_TYPE_K: case t.CHART_TYPE_CHORD: return 2; case t.COMPONENT_TYPE_LEGEND: case t.COMPONENT_TYPE_DATARANGE: case t.COMPONENT_TYPE_DATAZOOM: return 4; case t.CHART_TYPE_ISLAND: return 5; case t.COMPONENT_TYPE_TOOLBOX: case t.COMPONENT_TYPE_TITLE: return 6; case t.COMPONENT_TYPE_TOOLTIP: return 8; default: return 0 } } function p(e) { return o.merge(e || {}, o.clone(t[a.type] || {}), {overwrite: !1, recursive: !0}) } function d(e) { if (!(e instanceof Array))return [e, e, e, e]; switch (e.length + "") { case"4": return e; case"3": return [e[0], e[1], e[2], e[1]]; case"2": return [e[0], e[1], e[0], e[1]]; case"1": return [e[0], e[0], e[0], e[0]]; case"0": return [0, 0, 0, 0] } } function v(e) { var n = o.merge(o.clone(e) || {}, t.textStyle, {overwrite: !1}); return n.fontStyle + " " + n.fontWeight + " " + n.fontSize + "px " + n.fontFamily } function m(e, t, n, r, i) { var s = [n, t], o = a.deepMerge(s, "itemStyle.normal.label"), u = a.deepMerge(s, "itemStyle.emphasis.label"), f = o.textStyle || {}, l = u.textStyle || {}; return o.show && (e.style.text = g(t, n, r, "normal"), e.style.textPosition = typeof o.position == "undefined" ? i == "horizontal" ? "right" : "top" : o.position, e.style.textColor = f.color, e.style.textFont = a.getFont(f)), u.show && (e.highlightStyle.text = g(t, n, r, "emphasis"), e.highlightStyle.textPosition = o.show ? e.style.textPosition : typeof u.position == "undefined" ? i == "horizontal" ? "right" : "top" : u.position, e.highlightStyle.textColor = l.color, e.highlightStyle.textFont = a.getFont(l)), e } function g(e, t, n, r) { var i = a.deepQuery([t, e], "itemStyle." + r + ".label.formatter"); !i && r == "emphasis" && (i = a.deepQuery([t, e], "itemStyle.normal.label.formatter")); var s = typeof t != "undefined" ? typeof t.value != "undefined" ? t.value : t : "-"; if (!i)return s; if (typeof i == "function")return i(e.name, n, s); if (typeof i == "string")return i = i.replace("{a}", "{a0}").replace("{b}", "{b0}").replace("{c}", "{c0}"), i = i.replace("{a0}", e.name).replace("{b0}", n).replace("{c0}", s), i } function y(e, t, n, r, i) { a.selectedMap[e.name] && (e.markPoint && b(e, t, n, r, i), e.markLine && w(e, t, n, r, i)) } function b(e, n, r, i, s) { var f = a.getZlevelBase(), l, c, h = o.clone(e.markPoint); for (var p = 0, d = h.data.length; p < d; p++)l = h.data[p], c = a.getMarkCoord(e, n, l, i), h.data[p].x = typeof l.x != "undefined" ? l.x : c[0], h.data[p].y = typeof l.y != "undefined" ? l.y : c[1], l.type && (l.type == "max" || l.type == "min") && (h.data[p].value = c[3], h.data[p].name = l.name || l.type, h.data[p].symbolSize = h.data[p].symbolSize || u.getTextWidth(c[3], a.getFont()) / 2 + 5); var v = E(e, n, h, r); for (var p = 0, d = v.length; p < d; p++) { v[p].zlevel = f + 1; for (var m in s)v[p][m] = s[m]; a.shapeList.push(v[p]) } if (a.type == t.CHART_TYPE_FORCE || a.type == t.CHART_TYPE_CHORD)for (var p = 0, d = v.length; p < d; p++)v[p].id = a.zr.newShapeId(a.type), a.zr.addShape(v[p]) } function w(e, n, r, i, s) { var u = a.getZlevelBase(), f, l, c = o.clone(e.markLine); for (var h = 0, p = c.data.length; h < p; h++)f = c.data[h], !f.type || f.type != "max" && f.type != "min" && f.type != "average" ? l = [a.getMarkCoord(e, n, f[0], i), a.getMarkCoord(e, n, f[1], i)] : (l = a.getMarkCoord(e, n, f, i), c.data[h] = [o.clone(f), {}], c.data[h][0].name = f.name || f.type, c.data[h][0].value = l[3], l = l[2], f = [{}, {}]), c.data[h][0].x = typeof f[0].x != "undefined" ? f[0].x : l[0][0], c.data[h][0].y = typeof f[0].y != "undefined" ? f[0].y : l[0][1], c.data[h][1].x = typeof f[1].x != "undefined" ? f[1].x : l[1][0], c.data[h][1].y = typeof f[1].y != "undefined" ? f[1].y : l[1][1]; var d = S(e, n, c, r); for (var h = 0, p = d.length; h < p; h++) { d[h].zlevel = u + 1; for (var v in s)d[h][v] = s[v]; a.shapeList.push(d[h]) } if (a.type == t.CHART_TYPE_FORCE || a.type == t.CHART_TYPE_CHORD)for (var h = 0, p = d.length; h < p; h++)d[h].id = a.zr.newShapeId(a.type), a.zr.addShape(d[h]) } function E(e, n, i, s) { o.merge(i, t.markPoint, {overwrite: !1, recursive: !0}), i.name = e.name; var u = [], f = i.data, l, c = s.dataRange, h = s.legend, p, d, v, m, g, y, b = a.zr.getWidth(), w = a.zr.getHeight(); for (var E = 0, S = f.length; E < S; E++) { h && (p = h.getColor(e.name)); if (c) { d = typeof f[E] != "undefined" ? typeof f[E].value != "undefined" ? f[E].value : f[E] : "-", p = isNaN(d) ? p : c.getColor(d), v = [f[E], i], m = a.deepQuery(v, "itemStyle.normal.color") || p, g = a.deepQuery(v, "itemStyle.emphasis.color") || m; if (m == null && g == null)continue } f[E].tooltip = f[E].tooltip || {trigger: "item"}, f[E].name = typeof f[E].name != "undefined" ? f[E].name : "", f[E].value = typeof f[E].value != "undefined" ? f[E].value : "", l = T(i, n, f[E], E, f[E].name, a.parsePercent(f[E].x, b), a.parsePercent(f[E].y, w), "pin", p, "rgba(0,0,0,0)", "horizontal"), y = a.deepMerge([f[E], i], "effect"), y.show && (l.effect = y), r.pack(l, e, n, f[E], 0, f[E].name), u.push(l) } return u } function S(e, n, i, s) { o.merge(i, t.markLine, { overwrite: !1, recursive: !0 }), i.symbol = i.symbol instanceof Array ? i.symbol.length > 1 ? i.symbol : [i.symbol[0], i.symbol[0]] : [i.symbol, i.symbol], i.symbolSize = i.symbolSize instanceof Array ? i.symbolSize.length > 1 ? i.symbolSize : [i.symbolSize[0], i.symbolSize[0]] : [i.symbolSize, i.symbolSize], i.symbolRotate = i.symbolRotate instanceof Array ? i.symbolRotate.length > 1 ? i.symbolRotate : [i.symbolRotate[0], i.symbolRotate[0]] : [i.symbolRotate, i.symbolRotate], i.name = e.name; var u = [], f = i.data, l, c = s.dataRange, h = s.legend, p, d, v, m, g, y, b = a.zr.getWidth(), w = a.zr.getHeight(), E; for (var S = 0, x = f.length; S < x; S++) { h && (p = h.getColor(e.name)), E = a.deepMerge(f[S]); if (c) { d = typeof E != "undefined" ? typeof E.value != "undefined" ? E.value : E : "-", p = isNaN(d) ? p : c.getColor(d), v = [E, i], m = a.deepQuery(v, "itemStyle.normal.color") || p, g = a.deepQuery(v, "itemStyle.emphasis.color") || m; if (m == null && g == null)continue } f[S][0].tooltip = E.tooltip || {trigger: "item"}, f[S][0].name = typeof f[S][0].name != "undefined" ? f[S][0].name : "", f[S][1].name = typeof f[S][1].name != "undefined" ? f[S][1].name : "", f[S][0].value = typeof f[S][0].value != "undefined" ? f[S][0].value : "", l = N(i, n, f[S], S, a.parsePercent(f[S][0].x, b), a.parsePercent(f[S][0].y, w), a.parsePercent(f[S][1].x, b), a.parsePercent(f[S][1].y, w), p), y = a.deepMerge([E, i], "effect"), y.show && (l.effect = y), r.pack(l, e, n, f[S][0], 0, f[S][0].name + (f[S][1].name !== "" ? " > " + f[S][1].name : "")), u.push(l) } return u } function x() { return [0, 0] } function T(e, t, n, i, s, o, u, f, l, c, h) { var p = [n, e], d = typeof n != "undefined" ? typeof n.value != "undefined" ? n.value : n : "-"; f = a.deepQuery(p, "symbol") || f; var v = a.deepQuery(p, "symbolSize"); v = typeof v == "function" ? v(d) : v; var m = a.deepQuery(p, "symbolRotate"), g = a.deepMerge(p, "itemStyle.normal"), y = a.deepMerge(p, "itemStyle.emphasis"), b = typeof g.borderWidth != "undefined" ? g.borderWidth : g.lineStyle && g.lineStyle.width; typeof b == "undefined" && (b = 0); var w = typeof y.borderWidth != "undefined" ? y.borderWidth : y.lineStyle && y.lineStyle.width; typeof w == "undefined" && (w = b + 2); var E = { shape: "icon", style: { iconType: f.replace("empty", "").toLowerCase(), x: o - v, y: u - v, width: v * 2, height: v * 2, brushType: "both", color: f.match("empty") ? c : a.getItemStyleColor(g.color, t, i, n) || l, strokeColor: g.borderColor || a.getItemStyleColor(g.color, t, i, n) || l, lineWidth: b }, highlightStyle: { color: f.match("empty") ? c : a.getItemStyleColor(y.color, t, i, n), strokeColor: y.borderColor || g.borderColor || a.getItemStyleColor(g.color, t, i, n) || l, lineWidth: w }, clickable: !0 }; return f.match("image") && (E.style.image = f.replace(new RegExp("^image:\\/\\/"), ""), E.shape = "image"), typeof m != "undefined" && (E.rotation = [m * Math.PI / 180, o, u]), f.match("star") && (E.style.iconType = "star", E.style.n = f.replace("empty", "").replace("star", "") - 0 || 5), f == "none" && (E.invisible = !0, E.hoverable = !1), E = a.addLabel(E, e, n, s, h), f.match("empty") && (typeof E.style.textColor == "undefined" && (E.style.textColor = E.style.strokeColor), typeof E.highlightStyle.textColor == "undefined" && (E.highlightStyle.textColor = E.highlightStyle.strokeColor)), r.pack(E, e, t, n, i, s), E._mark = "point", E._x = o, E._y = u, E._dataIndex = i, E._seriesIndex = t, E } function N(e, t, n, r, i, s, o, u, f) { var l = typeof n[0] != "undefined" ? typeof n[0].value != "undefined" ? n[0].value : n[0] : "-", c = typeof n[1] != "undefined" ? typeof n[1].value != "undefined" ? n[1].value : n[1] : "-", h = [a.query(n[0], "symbol") || e.symbol[0], a.query(n[1], "symbol") || e.symbol[1]], p = [a.query(n[0], "symbolSize") || e.symbolSize[0], a.query(n[1], "symbolSize") || e.symbolSize[1]]; p[0] = typeof p[0] == "function" ? p[0](l) : p[0], p[1] = typeof p[1] == "function" ? p[1](c) : p[1]; var d = [a.query(n[0], "symbolRotate") || e.symbolRotate[0], a.query(n[1], "symbolRotate") || e.symbolRotate[1]], v = [n[0], e], m = a.deepMerge(v, "itemStyle.normal"); m.color = a.getItemStyleColor(m.color, t, r, n); var g = a.deepMerge(v, "itemStyle.emphasis"); g.color = a.getItemStyleColor(g.color, t, r, n); var y = m.lineStyle, b = g.lineStyle, w = y.width; typeof w == "undefined" && (w = m.borderWidth); var E = b.width; typeof E == "undefined" && (typeof g.borderWidth != "undefined" ? E = g.borderWidth : E = w + 2); var S = { shape: "markLine", style: { smooth: e.smooth ? "spline" : !1, symbol: h, symbolSize: p, symbolRotate: d, xStart: i, yStart: s, xEnd: o, yEnd: u, brushType: "both", lineType: y.type, shadowColor: y.shadowColor, shadowBlur: y.shadowBlur, shadowOffsetX: y.shadowOffsetX, shadowOffsetY: y.shadowOffsetY, color: m.color || f, strokeColor: y.color || m.borderColor || m.color || f, lineWidth: w, symbolBorderColor: m.borderColor || m.color || f, symbolBorder: m.borderWidth }, highlightStyle: { shadowColor: b.shadowColor, shadowBlur: b.shadowBlur, shadowOffsetX: b.shadowOffsetX, shadowOffsetY: b.shadowOffsetY, color: g.color || m.color || f, strokeColor: b.color || y.color || g.borderColor || m.borderColor || g.color || m.color || f, lineWidth: E, symbolBorderColor: g.borderColor || m.borderColor || g.color || m.color || f, symbolBorder: typeof g.borderWidth == "undefined" ? m.borderWidth + 2 : g.borderWidth }, clickable: !0 }; return S = a.addLabel(S, e, n[0], n[0].name + " : " + n[1].name), S._mark = "line", S._x = o, S._y = u, S } function C(e, t, n, r) { return typeof e == "function" ? e(t, n, r) : e } function k(e, t) { return t % 2 == 1 ? e = Math.floor(e) + .5 : e = Math.round(e), e } function L() { c[a.type] ? a.animationMark(t.animationDuration) : a.animationEffect() } function A(e, t) { var r, i; for (var s = 0, o = a.shapeList.length; s < o; s++) { if (!a.shapeList[s]._mark)continue; r = a.shapeList[s]._x || 0, i = a.shapeList[s]._y || 0, a.shapeList[s]._mark == "point" ? (n.modShape(a.shapeList[s].id, {scale: [0, 0, r, i]}, !0), n.animate(a.shapeList[s].id, "").when(e, {scale: [1, 1, r, i]}).start(t || "QuinticOut")) : a.shapeList[s]._mark == "line" && (a.shapeList[s].style.smooth ? (n.modShape(a.shapeList[s].id, {style: {pointListLength: 1}}, !0), n.animate(a.shapeList[s].id, "style").when(e, {pointListLength: a.shapeList[s].style.pointList.length}).start(t || "QuinticOut")) : (n.modShape(a.shapeList[s].id, {style: {pointList: [[a.shapeList[s].style.xStart, a.shapeList[s].style.yStart], [a.shapeList[s].style.xStart, a.shapeList[s].style.yStart]]}}, !0), n.animate(a.shapeList[s].id, "style").when(e, {pointList: [[a.shapeList[s].style.xStart, a.shapeList[s].style.yStart], [r, i]]}).start(t || "QuinticOut"))) } a.animationEffect() } function O() { _(); var e = f; l && n.modLayer(e, {motionBlur: !0, lastFrameAlpha: .95}); var t, r, i, s; for (var o = 0, u = a.shapeList.length; o < u; o++) { shape = a.shapeList[o]; if (!shape._mark || !shape.effect || !shape.effect.show)continue; s = shape.effect, t = s.color || shape.style.strokeColor || shape.style.color, r = s.shadowColor || t; var c, h; switch (shape._mark) { case"point": i = s.scaleSize, shadowBlur = typeof s.shadowBlur != "undefined" ? s.shadowBlur : i, c = { shape: shape.shape, id: n.newShapeId(), zlevel: e, style: { brushType: "stroke", iconType: shape.style.iconType != "pin" && shape.style.iconType != "droplet" ? shape.style.iconType : "circle", x: shadowBlur + 1, y: shadowBlur + 1, n: shape.style.n, width: shape.style.width * i, height: shape.style.height * i, lineWidth: 1, strokeColor: t, shadowColor: r, shadowBlur: shadowBlur }, draggable: !1, hoverable: !1 }, l && (c.style.image = n.shapeToImage(c, c.style.width + shadowBlur * 2 + 2, c.style.height + shadowBlur * 2 + 2).style.image, c.shape = "image"), h = (c.style.width - shape.style.width) / 2; break; case"line": i = shape.style.lineWidth * s.scaleSize, shadowBlur = typeof s.shadowBlur != "undefined" ? s.shadowBlur : i, c = { shape: "circle", id: n.newShapeId(), zlevel: e, style: { x: shadowBlur, y: shadowBlur, r: i, color: t, shadowColor: r, shadowBlur: shadowBlur }, draggable: !1, hoverable: !1 }, l ? (c.style.image = n.shapeToImage(c, (i + shadowBlur) * 2, (i + shadowBlur) * 2).style.image, c.shape = "image", h = shadowBlur) : h = 0 } var p; c.position = shape.position; if (shape._mark === "point") c.style.x = shape.style.x - h, c.style.y = shape.style.y - h, p = (s.period + Math.random() * 10) * 100; else if (shape._mark === "line") { c.style.x = shape.style.xStart - h, c.style.y = shape.style.yStart - h; var d = (shape.style.xStart - shape._x) * (shape.style.xStart - shape._x) + (shape.style.yStart - shape._y) * (shape.style.yStart - shape._y); p = Math.round(Math.sqrt(Math.round(d * s.period * s.period))) } a.effectList.push(c), n.addShape(c); if (shape._mark === "point") { n.modShape(shape.id, {invisible: !0}, !0); var v = c.style.x + c.style.width / 2, m = c.style.y + c.style.height / 2; n.modShape(c.id, {scale: [.1, .1, v, m]}, !0), n.animate(c.id, "", !0).when(p, {scale: [1, 1, v, m]}).start() } else if (shape._mark === "line")if (!shape.style.smooth) n.animate(c.id, "style", !0).when(p, { x: shape._x - h, y: shape._y - h }).start(); else { var g = shape.style.pointList, y = g.length; p = Math.round(p / y); var b = n.animate(c.id, "style", !0); for (var w = 0; w < y; w++)b.when(p * (w + 1), {x: g[w][0] - h, y: g[w][1] - h}); b.start() } } } function M() { a.refresh && a.refresh() } function _() { a.zr && a.effectList.length > 0 && (a.zr.modLayer(f, {motionBlur: !1}), a.zr.delShape(a.effectList)), a.effectList = [] } function D() { _(), a.zr && a.zr.delShape(a.shapeList), a.shapeList = [] } function P() { a.clear(), a.shapeList = null, a.effectList = null, a = null } var r = e("../util/ecData"), i = e("../util/ecQuery"), s = e("../util/number"), o = e("zrender/tool/util"), u = e("zrender/tool/area"), a = this; a.zr = n, a.shapeList = [], a.effectList = []; var f = 7, l = e("zrender/tool/env").canvasSupported, c = {}; c[t.CHART_TYPE_LINE] = !0, c[t.CHART_TYPE_BAR] = !0, c[t.CHART_TYPE_SCATTER] = !0, c[t.CHART_TYPE_PIE] = !0, c[t.CHART_TYPE_RADAR] = !0, c[t.CHART_TYPE_MAP] = !0, c[t.CHART_TYPE_K] = !0, c[t.CHART_TYPE_CHORD] = !0, a.getZlevelBase = h, a.reformOption = p, a.reformCssArray = d, a.query = i.query, a.deepQuery = i.deepQuery, a.deepMerge = i.deepMerge, a.getFont = v, a.addLabel = m, a.buildMark = y, a.getMarkCoord = x, a.getSymbolShape = T, a.parsePercent = s.parsePercent, a.parseCenter = s.parseCenter, a.parseRadius = s.parseRadius, a.numAddCommas = s.addCommas, a.getItemStyleColor = C, a.subPixelOptimize = k, a.animation = L, a.animationMark = A, a.animationEffect = O, a.resize = M, a.clearAnimationShape = _, a.clear = D, a.dispose = P } return t }), define("echarts/util/accMath", [], function () { function e(e, n) { return t(e, 1 / n) } function t(e, t) { var n = 0, r = e.toString(), i = t.toString(); try { n += r.split(".")[1].length } catch (s) { } try { n += i.split(".")[1].length } catch (s) { } return Number(r.replace(".", "")) * Number(i.replace(".", "")) / Math.pow(10, n) } function n(e, t) { var n, r, i; try { n = e.toString().split(".")[1].length } catch (s) { n = 0 } try { r = t.toString().split(".")[1].length } catch (s) { r = 0 } return i = Math.pow(10, Math.max(n, r)), (Math.round(e * i) + Math.round(t * i)) / i } function r(e, t) { return n(e, -t) } return {accDiv: e, accMul: t, accAdd: n, accSub: r} }), define("echarts/chart/calculableBase", ["require", "../util/ecData", "../util/accMath", "zrender/tool/util"], function (e) { function t(t, n) { function u(e) { return e.dragEnableTime = n.DRAG_ENABLE_TIME, e.ondragover = o.shapeHandler.ondragover, e.ondragend = o.shapeHandler.ondragend, e.ondrop = o.shapeHandler.ondrop, e } function a(e, t) { if (!o.isDrop || !e.target)return; var s = e.target, u = e.dragged, a = r.get(s, "seriesIndex"), f = r.get(s, "dataIndex"), l = n.series[a].data[f] || "-"; l.value ? l.value != "-" ? n.series[a].data[f].value = i.accAdd(n.series[a].data[f].value, r.get(u, "value")) : n.series[a].data[f].value = r.get(u, "value") : l != "-" ? n.series[a].data[f] = i.accAdd(n.series[a].data[f], r.get(u, "value")) : n.series[a].data[f] = r.get(u, "value"), t.dragIn = t.dragIn || !0, o.isDrop = !1; return } function f(e, t) { if (!o.isDragend || !e.target)return; var i = e.target, s = r.get(i, "seriesIndex"), u = r.get(i, "dataIndex"); n.series[s].data[u] = "-", t.dragOut = !0, t.needRefresh = !0, o.isDragend = !1; return } function l(e, t) { var n = e.selected; for (var r in o.selectedMap)o.selectedMap[r] != n[r] && (t.needRefresh = !0), o.selectedMap[r] = n[r]; return } var r = e("../util/ecData"), i = e("../util/accMath"), s = e("zrender/tool/util"), o = this; o.selectedMap = {}, o.shapeHandler = { onclick: function () { o.isClick = !0 }, ondragover: function (e) { var t = s.clone(e.target); t.highlightStyle = { text: "", r: t.style.r + 5, brushType: "stroke", strokeColor: n.calculableColor, lineWidth: (t.style.lineWidth || 1) + 12 }, o.zr.addHoverShape(t) }, ondrop: function (e) { typeof r.get(e.dragged, "data") != "undefined" && (o.isDrop = !0) }, ondragend: function () { o.isDragend = !0 } }, o.setCalculable = u, o.ondrop = a, o.ondragend = f, o.onlegendSelected = l } return t }), define("echarts/chart/island", ["require", "../component/base", "./calculableBase", "../util/ecData", "zrender/tool/event", "zrender/tool/color", "../util/accMath", "../chart"], function (e) { function t(t, n, r) { function v(t, n) { var r = e("zrender/tool/color"), i = e("../util/accMath"), s = i.accAdd(o.get(t, "value"), o.get(n, "value")), u = o.get(t, "name") + c + o.get(n, "name"); t.style.text = u + h + s, o.set(t, "value", s), o.set(t, "name", u), t.style.r = f.island.r, t.style.color = r.mix(t.style.color, n.style.color) } function m(e) { e && (e.island = a.reformOption(e.island), f = e, c = f.nameConnector, h = f.valueConnector) } function g(e) { m(e); for (var t = 0, n = a.shapeList.length; t < n; t++)r.addShape(a.shapeList[t]) } function y() { return f } function b() { var e = r.getWidth(), t = r.getHeight(), n = e / (d || e), i = t / (p || t); if (n == 1 && i == 1)return; d = e, p = t; for (var s = 0, o = a.shapeList.length; s < o; s++)r.modShape(a.shapeList[s].id, { style: { x: Math.round(a.shapeList[s].style.x * n), y: Math.round(a.shapeList[s].style.y * i) } }, !0) } function w(e) { var t = o.get(e, "name"), n = o.get(e, "value"), i = typeof o.get(e, "series") != "undefined" ? o.get(e, "series").name : "", s = a.getFont(f.island.textStyle), u = { shape: "circle", id: r.newShapeId(a.type), zlevel: l, style: { x: e.style.x, y: e.style.y, r: f.island.r, color: e.style.color || e.style.strokeColor, text: t + h + n, textFont: s }, draggable: !0, hoverable: !0, onmousewheel: a.shapeHandler.onmousewheel, _type: "island" }; u.style.color == "#fff" && (u.style.color = e.style.strokeColor), a.setCalculable(u), u.dragEnableTime = 0, o.pack(u, {name: i}, -1, n, -1, t), a.shapeList.push(u), r.addShape(u) } function E(e) { r.delShape(e.id); var t = []; for (var n = 0, i = a.shapeList.length; n < i; n++)a.shapeList[n].id != e.id && t.push(a.shapeList[n]); a.shapeList = t } function S(e, t) { if (!a.isDrop || !e.target)return; var n = e.target, i = e.dragged; v(n, i), r.modShape(n.id, n), t.dragIn = !0, a.isDrop = !1; return } function x(e, t) { var n = e.target; a.isDragend ? t.dragIn && (E(n), t.needRefresh = !0) : t.dragIn || (n.style.x = u.getX(e.event), n.style.y = u.getY(e.event), w(n), t.needRefresh = !0), a.isDragend = !1; return } var i = e("../component/base"); i.call(this, t, r); var s = e("./calculableBase"); s.call(this, r, t); var o = e("../util/ecData"), u = e("zrender/tool/event"), a = this; a.type = t.CHART_TYPE_ISLAND; var f, l = a.getZlevelBase(), c, h, p = r.getHeight(), d = r.getWidth(); a.shapeHandler.onmousewheel = function (e) { var t = e.target, n = e.event, i = u.getDelta(n); i = i > 0 ? -1 : 1, t.style.r -= i, t.style.r = t.style.r < 5 ? 5 : t.style.r; var s = o.get(t, "value"), a = s * f.island.calculateStep; a > 1 ? s = Math.round(s - a * i) : s = (s - a * i).toFixed(2) - 0; var l = o.get(t, "name"); t.style.text = l + ":" + s, o.set(t, "value", s), o.set(t, "name", l), r.modShape(t.id, t), r.refresh(), u.stop(n) }, a.refresh = m, a.render = g, a.resize = b, a.getOption = y, a.add = w, a.del = E, a.ondrop = S, a.ondragend = x } return e("../chart").define("island", t), t }), define("echarts/component", [], function () { var e = {}, t = {}; return e.define = function (n, r) { return t[n] = r, e }, e.get = function (e) { return t[e] }, e }), define("echarts/component/title", ["require", "./base", "zrender/tool/area", "zrender/tool/util", "../component"], function (e) { function t(t, n, r, i) { function h() { c = v(), d(), p(); for (var e = 0, t = a.shapeList.length; e < t; e++)a.shapeList[e].id = r.newShapeId(a.type), r.addShape(a.shapeList[e]) } function p() { var e = f.text, t = f.link, n = f.subtext, r = f.sublink, i = a.getFont(f.textStyle), s = a.getFont(f.subtextStyle), o = c.x, u = c.y, h = c.width, p = c.height, d = { shape: "text", zlevel: l, style: {y: u, color: f.textStyle.color, text: e, textFont: i, textBaseline: "top"}, highlightStyle: {brushType: "fill"}, hoverable: !1 }; t && (d.hoverable = !0, d.clickable = !0, d.onclick = function () { window.open(t) }); var v = { shape: "text", zlevel: l, style: {y: u + p, color: f.subtextStyle.color, text: n, textFont: s, textBaseline: "bottom"}, highlightStyle: {brushType: "fill"}, hoverable: !1 }; r && (v.hoverable = !0, v.clickable = !0, v.onclick = function () { window.open(r) }); switch (f.x) { case"center": d.style.x = v.style.x = o + h / 2, d.style.textAlign = v.style.textAlign = "center"; break; case"left": d.style.x = v.style.x = o, d.style.textAlign = v.style.textAlign = "left"; break; case"right": d.style.x = v.style.x = o + h, d.style.textAlign = v.style.textAlign = "right"; break; default: o = f.x - 0, o = isNaN(o) ? 0 : o, d.style.x = v.style.x = o } f.textAlign && (d.style.textAlign = v.style.textAlign = f.textAlign), a.shapeList.push(d), n !== "" && a.shapeList.push(v) } function d() { var e = f.padding[0], t = f.padding[1], n = f.padding[2], r = f.padding[3]; a.shapeList.push({ shape: "rectangle", zlevel: l, hoverable: !1, style: { x: c.x - r, y: c.y - e, width: c.width + r + t, height: c.height + e + n, brushType: f.borderWidth === 0 ? "fill" : "both", color: f.backgroundColor, strokeColor: f.borderColor, lineWidth: f.borderWidth } }) } function v() { var e = f.text, t = f.subtext, n = a.getFont(f.textStyle), i = a.getFont(f.subtextStyle), s = Math.max(o.getTextWidth(e, n), o.getTextWidth(t, i)), u = o.getTextHeight(e, n) + (t === "" ? 0 : f.itemGap + o.getTextHeight(t, i)), l, c = r.getWidth(); switch (f.x) { case"center": l = Math.floor((c - s) / 2); break; case"left": l = f.padding[3] + f.borderWidth; break; case"right": l = c - s - f.padding[1] - f.borderWidth; break; default: l = f.x - 0, l = isNaN(l) ? 0 : l } var h, p = r.getHeight(); switch (f.y) { case"top": h = f.padding[0] + f.borderWidth; break; case"bottom": h = p - u - f.padding[2] - f.borderWidth; break; case"center": h = Math.floor((p - u) / 2); break; default: h = f.y - 0, h = isNaN(h) ? 0 : h } return {x: l, y: h, width: s, height: u} } function m(e) { g(e) } function g(e) { e && (i = e, i.title = a.reformOption(i.title), i.title.padding = a.reformCssArray(i.title.padding), f = i.title, f.textStyle = u.merge(f.textStyle, t.textStyle, { overwrite: !1, recursive: !1 }), f.subtextStyle = u.merge(f.subtextStyle, t.textStyle, {overwrite: !1, recursive: !1}), a.clear(), h()) } function y() { a.clear(), h() } var s = e("./base"); s.call(this, t, r); var o = e("zrender/tool/area"), u = e("zrender/tool/util"), a = this; a.type = t.COMPONENT_TYPE_TITLE; var f, l = a.getZlevelBase(), c = {}; a.init = m, a.refresh = g, a.resize = y, m(i) } return e("../component").define("title", t), t }), define("echarts/component/categoryAxis", ["require", "./base", "zrender/tool/util", "zrender/tool/area", "../component"], function (e) { function t(t, n, r, i, s) { function d() { var e = u.clone(i.data), t = i.axisLabel.formatter, n; for (var r = 0, s = e.length; r < s; r++)n = e[r].formatter || t, n && (typeof n == "function" ? typeof e[r].value != "undefined" ? e[r].value = n(e[r].value) : e[r] = n(e[r]) : typeof n == "string" && (typeof e[r].value != "undefined" ? e[r].value = n.replace("{value}", e[r].value) : e[r] = n.replace("{value}", e[r]))); return e } function v() { var e = i.axisLabel.interval; if (e == "auto") { var t = i.axisLabel.textStyle.fontSize, n = f.getFont(i.axisLabel.textStyle), r = i.data, s = i.data.length; if (i.position == "bottom" || i.position == "top")if (s > 3) { var o = T(), l = !1, c, h; e = 0; while (!l && e < s) { e++, l = !0, c = o * e - 10; for (var d = 0; d < s; d += e) { i.axisLabel.rotate !== 0 ? h = t : r[d].textStyle ? h = a.getTextWidth(p[d].value || p[d], f.getFont(u.merge(r[d].textStyle, i.axisLabel.textStyle, { overwrite: !1, recursive: !0 }))) : h = a.getTextWidth(p[d].value || p[d], n); if (c < h) { l = !1; break } } } } else e = 1; else if (s > 3) { var o = T(); e = 1; while (o * e - 6 < t && e < s)e++ } else e = 1 } else e += 1; return e } function m() { p = d(), h = v(), i.splitArea.show && E(), i.splitLine.show && w(), i.axisLine.show && g(), i.axisTick.show && y(), i.axisLabel.show && b(); for (var e = 0, t = f.shapeList.length; e < t; e++)f.shapeList[e].id = r.newShapeId(f.type), r.addShape(f.shapeList[e]) } function g() { var e = i.axisLine.lineStyle.width, t = e / 2, n = {shape: "line", zlevel: c + 1, hoverable: !1}; switch (i.position) { case"left": n.style = {xStart: l.getX() - t, yStart: l.getYend() + t, xEnd: l.getX() - t, yEnd: l.getY() - t}; break; case"right": n.style = { xStart: l.getXend() + t, yStart: l.getYend() + t, xEnd: l.getXend() + t, yEnd: l.getY() - t }; break; case"bottom": n.style = { xStart: l.getX() - t, yStart: l.getYend() + t, xEnd: l.getXend() + t, yEnd: l.getYend() + t }; break; case"top": n.style = {xStart: l.getX() - t, yStart: l.getY() - t, xEnd: l.getXend() + t, yEnd: l.getY() - t} } i.name !== "" && (n.style.text = i.name, n.style.textPosition = i.nameLocation, n.style.textFont = f.getFont(i.nameTextStyle), i.nameTextStyle.align && (n.style.textAlign = i.nameTextStyle.align), i.nameTextStyle.baseline && (n.style.textBaseline = i.nameTextStyle.baseline), i.nameTextStyle.color && (n.style.textColor = i.nameTextStyle.color)), n.style.strokeColor = i.axisLine.lineStyle.color, n.style.lineWidth = e, i.position == "left" || i.position == "right" ? n.style.xStart = n.style.xEnd = f.subPixelOptimize(n.style.xEnd, e) : n.style.yStart = n.style.yEnd = f.subPixelOptimize(n.style.yEnd, e), n.style.lineType = i.axisLine.lineStyle.type, f.shapeList.push(n) } function y() { var e, t = i.data.length, n = i.axisTick, r = n.length, s = n.lineStyle.color, o = n.lineStyle.width, u = n.interval == "auto" ? h : n.interval - 0 + 1, a = n.onGap, p = a ? T() / 2 : typeof a == "undefined" ? i.boundaryGap ? T() / 2 : 0 : 0, d = p > 0 ? -u : 0; if (i.position == "bottom" || i.position == "top") { var v = i.position == "bottom" ? n.inside ? l.getYend() - r : l.getYend() : n.inside ? l.getY() : l.getY() - r, m; for (var g = d; g < t; g += u)m = f.subPixelOptimize(C(g) + (g >= 0 ? p : 0), o), e = { shape: "line", zlevel: c, hoverable: !1, style: {xStart: m, yStart: v, xEnd: m, yEnd: v + r, strokeColor: s, lineWidth: o} }, f.shapeList.push(e) } else { var y = i.position == "left" ? n.inside ? l.getX() : l.getX() - r : n.inside ? l.getXend() - r : l.getXend(), b; for (var g = d; g < t; g += u)b = f.subPixelOptimize(C(g) - (g >= 0 ? p : 0), o), e = { shape: "line", zlevel: c, hoverable: !1, style: {xStart: y, yStart: b, xEnd: y + r, yEnd: b, strokeColor: s, lineWidth: o} }, f.shapeList.push(e) } } function b() { var e, t = i.data, n = i.data.length, r = i.axisLabel.rotate, s = i.axisLabel.margin, o = i.axisLabel.textStyle, a; if (i.position == "bottom" || i.position == "top") { var d, v; i.position == "bottom" ? (d = l.getYend() + s, v = "top") : (d = l.getY() - s, v = "bottom"); for (var m = 0; m < n; m += h) { if ((p[m].value || p[m]) === "")continue; a = u.merge(t[m].textStyle || {}, o, {overwrite: !1}), e = { shape: "text", zlevel: c, hoverable: !1, style: { x: C(m), y: d, color: a.color, text: p[m].value || p[m], textFont: f.getFont(a), textAlign: "center", textBaseline: v } }, r && (e.style.textAlign = r > 0 ? i.position == "bottom" ? "right" : "left" : i.position == "bottom" ? "left" : "right", e.rotation = [r * Math.PI / 180, e.style.x, e.style.y]), f.shapeList.push(e) } } else { var g, y; i.position == "left" ? (g = l.getX() - s, y = "right") : (g = l.getXend() + s, y = "left"); for (var m = 0; m < n; m += h) { if ((p[m].value || p[m]) === "")continue; a = u.merge(t[m].textStyle || {}, o, {overwrite: !1}), e = { shape: "text", zlevel: c, hoverable: !1, style: { x: g, y: C(m), color: a.color, text: p[m].value || p[m], textFont: f.getFont(a), textAlign: y, textBaseline: m === 0 && i.name !== "" ? "bottom" : m == n - 1 && i.name !== "" ? "top" : "middle" } }, r && (e.rotation = [r * Math.PI / 180, e.style.x, e.style.y]), f.shapeList.push(e) } } } function w() { var e, t = i.data.length, n = i.splitLine, r = n.lineStyle.type, s = n.lineStyle.width, o = n.lineStyle.color; o = o instanceof Array ? o : [o]; var u = o.length, a = n.onGap, p = a ? T() / 2 : typeof a == "undefined" ? i.boundaryGap ? T() / 2 : 0 : 0; t -= a || typeof a == "undefined" && i.boundaryGap ? 1 : 0; if (i.position == "bottom" || i.position == "top") { var d = l.getY(), v = l.getYend(), m; for (var g = 0; g < t; g += h)m = f.subPixelOptimize(C(g) + p, s), e = { shape: "line", zlevel: c, hoverable: !1, style: { xStart: m, yStart: d, xEnd: m, yEnd: v, strokeColor: o[g / h % u], lineType: r, lineWidth: s } }, f.shapeList.push(e) } else { var y = l.getX(), b = l.getXend(), w; for (var g = 0; g < t; g += h)w = f.subPixelOptimize(C(g) - p, s), e = { shape: "line", zlevel: c, hoverable: !1, style: { xStart: y, yStart: w, xEnd: b, yEnd: w, strokeColor: o[g / h % u], linetype: r, lineWidth: s } }, f.shapeList.push(e) } } function E() { var e, t = i.splitArea, n = t.areaStyle.color; if (n instanceof Array) { var r = n.length, s = i.data.length, o = t.onGap, u = o ? T() / 2 : typeof o == "undefined" ? i.boundaryGap ? T() / 2 : 0 : 0; if (i.position == "bottom" || i.position == "top") { var a = l.getY(), p = l.getHeight(), d = l.getX(), v; for (var m = 0; m <= s; m += h)v = m < s ? C(m) + u : l.getXend(), e = { shape: "rectangle", zlevel: c, hoverable: !1, style: {x: d, y: a, width: v - d, height: p, color: n[m / h % r]} }, f.shapeList.push(e), d = v } else { var g = l.getX(), y = l.getWidth(), b = l.getYend(), w; for (var m = 0; m <= s; m += h)w = m < s ? C(m) - u : l.getY(), e = { shape: "rectangle", zlevel: c, hoverable: !1, style: {x: g, y: w, width: y, height: b - w, color: n[m / h % r]} }, f.shapeList.push(e), b = w } } else e = { shape: "rectangle", zlevel: c, hoverable: !1, style: {x: l.getX(), y: l.getY(), width: l.getWidth(), height: l.getHeight(), color: n} }, f.shapeList.push(e) } function S(e, t) { if (e.data.length < 1)return; l = t, x(e) } function x(e) { e && (i = f.reformOption(e), i.axisLabel.textStyle = u.merge(i.axisLabel.textStyle || {}, t.textStyle, { overwrite: !1, recursive: !0 }), i.axisLabel.textStyle = u.merge(i.axisLabel.textStyle || {}, t.textStyle, { overwrite: !1, recursive: !0 })), f.clear(), m() } function T() { var e = i.data.length, t = i.position == "bottom" || i.position == "top" ? l.getWidth() : l.getHeight(); return i.boundaryGap ? t / e : t / (e > 1 ? e - 1 : 1) } function N(e) { var t = i.data, n = t.length, r = T(), s = i.boundaryGap ? r / 2 : 0; for (var o = 0; o < n; o++) { if (t[o] == e || typeof t[o].value != "undefined" && t[o].value == e)return i.position == "bottom" || i.position == "top" ? s = l.getX() + s : s = l.getYend() - s, s; s += r } } function C(e) { if (e < 0)return i.position == "bottom" || i.position == "top" ? l.getX() : l.getYend(); if (e > i.data.length - 1)return i.position == "bottom" || i.position == "top" ? l.getXend() : l.getY(); var t = T(), n = i.boundaryGap ? t / 2 : 0; return n += e * t, i.position == "bottom" || i.position == "top" ? n = l.getX() + n : n = l.getYend() - n, n } function k(e) { var t = i.data[e]; return typeof t != "undefined" && typeof t.value != "undefined" ? t.value : t } function L(e) { var t = i.data, n = t.length; for (var r = 0; r < n; r++)if (t[r] == e || typeof t[r].value != "undefined" && t[r].value == e)return r } function A(e) { return e % h === 0 } function O() { return i.position } var o = e("./base"); o.call(this, t, r); var u = e("zrender/tool/util"), a = e("zrender/tool/area"), f = this; f.type = t.COMPONENT_TYPE_AXIS_CATEGORY; var l = s.grid, c = f.getZlevelBase(), h, p; f.init = S, f.refresh = x, f.getGap = T, f.getCoord = N, f.getCoordByIndex = C, f.getNameByIndex = k, f.getIndexByName = L, f.isMainAxis = A, f.getPosition = O, S(i, l) } return e("../component").define("categoryAxis", t), t }), define("echarts/component/valueAxis", ["require", "./base", "zrender/tool/util", "../component"], function (e) { function t(t, n, r, i, s, o) { function g() { d = !1, x(); if (!d)return; i.splitArea.show && S(), i.splitLine.show && E(), i.axisLine.show && y(), i.axisTick.show && b(), i.axisLabel.show && w(); for (var e = 0, t = f.shapeList.length; e < t; e++)f.shapeList[e].id = r.newShapeId(f.type), r.addShape(f.shapeList[e]) } function y() { var e = i.axisLine.lineStyle.width, t = e / 2, n = {shape: "line", zlevel: c + 1, hoverable: !1}; switch (i.position) { case"left": n.style = {xStart: l.getX() - t, yStart: l.getYend() + t, xEnd: l.getX() - t, yEnd: l.getY() - t}; break; case"right": n.style = { xStart: l.getXend() + t, yStart: l.getYend() + t, xEnd: l.getXend() + t, yEnd: l.getY() - t }; break; case"bottom": n.style = { xStart: l.getX() - t, yStart: l.getYend() + t, xEnd: l.getXend() + t, yEnd: l.getYend() + t }; break; case"top": n.style = {xStart: l.getX() - t, yStart: l.getY() - t, xEnd: l.getXend() + t, yEnd: l.getY() - t} } i.name !== "" && (n.style.text = i.name, n.style.textPosition = i.nameLocation, n.style.textFont = f.getFont(i.nameTextStyle), i.nameTextStyle.align && (n.style.textAlign = i.nameTextStyle.align), i.nameTextStyle.baseline && (n.style.textBaseline = i.nameTextStyle.baseline), i.nameTextStyle.color && (n.style.textColor = i.nameTextStyle.color)), n.style.strokeColor = i.axisLine.lineStyle.color; var e = i.axisLine.lineStyle.width; n.style.lineWidth = e, i.position == "left" || i.position == "right" ? n.style.xStart = n.style.xEnd = f.subPixelOptimize(n.style.xEnd, e) : n.style.yStart = n.style.yEnd = f.subPixelOptimize(n.style.yEnd, e), n.style.lineType = i.axisLine.lineStyle.type, f.shapeList.push(n) } function b() { var e, t = v, n = v.length, r = i.axisTick, s = r.length, o = r.lineStyle.color, u = r.lineStyle.width; if (i.position == "bottom" || i.position == "top") { var a = i.position == "bottom" ? r.inside ? l.getYend() - s : l.getYend() : r.inside ? l.getY() : l.getY() - s, h; for (var p = 0; p < n; p++)h = f.subPixelOptimize(O(t[p]), u), e = { shape: "line", zlevel: c, hoverable: !1, style: {xStart: h, yStart: a, xEnd: h, yEnd: a + s, strokeColor: o, lineWidth: u} }, f.shapeList.push(e) } else { var d = i.position == "left" ? r.inside ? l.getX() : l.getX() - s : r.inside ? l.getXend() - s : l.getXend(), m; for (var p = 0; p < n; p++)m = f.subPixelOptimize(O(t[p]), u), e = { shape: "line", zlevel: c, hoverable: !1, style: {xStart: d, yStart: m, xEnd: d + s, yEnd: m, strokeColor: o, lineWidth: u} }, f.shapeList.push(e) } } function w() { var e, t = v, n = v.length, r = i.axisLabel.rotate, s = i.axisLabel.margin, o = i.axisLabel.textStyle; if (i.position == "bottom" || i.position == "top") { var u, a; i.position == "bottom" ? (u = l.getYend() + s, a = "top") : (u = l.getY() - s, a = "bottom"); for (var h = 0; h < n; h++)e = { shape: "text", zlevel: c, hoverable: !1, style: { x: O(t[h]), y: u, color: typeof o.color == "function" ? o.color(t[h]) : o.color, text: m[h], textFont: f.getFont(o), textAlign: "center", textBaseline: a } }, r && (e.style.textAlign = r > 0 ? i.position == "bottom" ? "right" : "left" : i.position == "bottom" ? "left" : "right", e.rotation = [r * Math.PI / 180, e.style.x, e.style.y]), f.shapeList.push(e) } else { var p, d; i.position == "left" ? (p = l.getX() - s, d = "right") : (p = l.getXend() + s, d = "left"); for (var h = 0; h < n; h++)e = { shape: "text", zlevel: c, hoverable: !1, style: { x: p, y: O(t[h]), color: typeof o.color == "function" ? o.color(t[h]) : o.color, text: m[h], textFont: f.getFont(o), textAlign: d, textBaseline: h === 0 && i.name !== "" ? "bottom" : h == n - 1 && i.name !== "" ? "top" : "middle" } }, r && (e.rotation = [r * Math.PI / 180, e.style.x, e.style.y]), f.shapeList.push(e) } } function E() { var e, t = v, n = v.length, r = i.splitLine, s = r.lineStyle.type, o = r.lineStyle.width, u = r.lineStyle.color; u = u instanceof Array ? u : [u]; var a = u.length; if (i.position == "bottom" || i.position == "top") { var h = l.getY(), p = l.getYend(), d; for (var m = 1; m < n - 1; m++)d = f.subPixelOptimize(O(t[m]), o), e = { shape: "line", zlevel: c, hoverable: !1, style: {xStart: d, yStart: h, xEnd: d, yEnd: p, strokeColor: u[m % a], lineType: s, lineWidth: o} }, f.shapeList.push(e) } else { var g = l.getX(), y = l.getXend(), b; for (var m = 1; m < n - 1; m++)b = f.subPixelOptimize(O(t[m]), o), e = { shape: "line", zlevel: c, hoverable: !1, style: {xStart: g, yStart: b, xEnd: y, yEnd: b, strokeColor: u[m % a], lineType: s, lineWidth: o} }, f.shapeList.push(e) } } function S() { var e, t = i.splitArea.areaStyle.color; if (t instanceof Array) { var n = t.length, r = v, s = v.length; if (i.position == "bottom" || i.position == "top") { var o = l.getY(), u = l.getHeight(), a = l.getX(), h; for (var p = 0; p <= s; p++)h = p < s ? O(r[p]) : l.getXend(), e = { shape: "rectangle", zlevel: c, hoverable: !1, style: {x: a, y: o, width: h - a, height: u, color: t[p % n]} }, f.shapeList.push(e), a = h } else { var d = l.getX(), m = l.getWidth(), g = l.getYend(), y; for (var p = 0; p <= s; p++)y = p < s ? O(r[p]) : l.getY(), e = { shape: "rectangle", zlevel: c, hoverable: !1, style: {x: d, y: y, width: m, height: g - y, color: t[p % n]} }, f.shapeList.push(e), g = y } } else e = { shape: "rectangle", zlevel: c, hoverable: !1, style: {x: l.getX(), y: l.getY(), width: l.getWidth(), height: l.getHeight(), color: t} }, f.shapeList.push(e) } function x() { if (isNaN(i.min - 0) || isNaN(i.max - 0)) { var e, n = {}, r, u, a, f = s.legend; for (var l = 0, c = o.length; l < c; l++) { if (o[l].type != t.CHART_TYPE_LINE && o[l].type != t.CHART_TYPE_BAR && o[l].type != t.CHART_TYPE_SCATTER && o[l].type != t.CHART_TYPE_K)continue; if (f && !f.isSelected(o[l].name))continue; u = o[l].xAxisIndex || 0, a = o[l].yAxisIndex || 0; if (i.xAxisIndex != u && i.yAxisIndex != a)continue; var v = o[l].name || "kener"; if (!o[l].stack) { n[v] = n[v] || [], e = o[l].data; for (var m = 0, g = e.length; m < g; m++)r = typeof e[m].value != "undefined" ? e[m].value : e[m], o[l].type == t.CHART_TYPE_SCATTER ? (i.xAxisIndex != -1 && n[v].push(r[0]), i.yAxisIndex != -1 && n[v].push(r[1])) : o[l].type == t.CHART_TYPE_K ? (n[v].push(r[0]), n[v].push(r[1]), n[v].push(r[2]), n[v].push(r[3])) : n[v].push(r) } else { var y = "__Magic_Key_Positive__" + o[l].stack, b = "__Magic_Key_Negative__" + o[l].stack; n[y] = n[y] || [], n[b] = n[b] || [], n[v] = n[v] || [], e = o[l].data; for (var m = 0, g = e.length; m < g; m++) { r = typeof e[m].value != "undefined" ? e[m].value : e[m]; if (r == "-")continue; r -= 0, r >= 0 ? typeof n[y][m] != "undefined" ? n[y][m] += r : n[y][m] = r : typeof n[b][m] != "undefined" ? n[b][m] += r : n[b][m] = r, i.scale && n[v].push(r) } } } for (var l in n) { e = n[l]; for (var m = 0, g = e.length; m < g; m++)if (!isNaN(e[m])) { d = !0, h = e[m], p = e[m]; break } if (d)break } for (var l in n) { e = n[l]; for (var m = 0, g = e.length; m < g; m++)isNaN(e[m]) || (h = Math.min(h, e[m]), p = Math.max(p, e[m])) } h = isNaN(i.min - 0) ? h - Math.abs(h * i.boundaryGap[0]) : i.min - 0, p = isNaN(i.max - 0) ? p + Math.abs(p * i.boundaryGap[1]) : i.max - 0, h == p && (p === 0 ? p = i.power > 0 ? i.power : 1 : p > 0 ? h = p / i.splitNumber : p /= i.splitNumber), T(i.scale) } else d = !0, h = i.min - 0, p = i.max - 0, customerDefine = !0, N() } function T(e) { var t = i.splitNumber, n = i.precision, r, s; n === 0 ? s = i.power > 1 ? i.power : 1 : (s = Math.pow(10, n), h *= s, p *= s, s = i.power); var o; if (h >= 0 && p >= 0) { if (!e) { while (p / s < t && s != 1)s /= 10; h = 0 } else { while (h < s && s != 1)s /= 10; n === 0 && (h = Math.floor(h / s) * s, p = Math.ceil(p / s) * s) } s = s > 1 ? s / 10 : 1, o = p - h, r = Math.ceil(o / t / s) * s, p = h + r * t } else if (h <= 0 && p <= 0) { s = -s; if (!e) { while (h / s < t && s != -1)s /= 10; p = 0 } else { while (p > s && s != -1)s /= 10; n === 0 && (h = Math.ceil(h / s) * s, p = Math.floor(p / s) * s) } s = s < -1 ? s / 10 : -1, o = h - p, r = -Math.ceil(o / t / s) * s, h = -r * t + p } else { o = p - h; while (o / s < t && s != 1)s /= 10; var u = Math.round(p / o * t); u -= u == t ? 1 : 0, u += u === 0 ? 1 : 0, r = Math.ceil(Math.max(p / u, h / (u - t)) / s) * s, p = r * u, h = r * (u - t) } v = []; for (var a = 0; a <= t; a++)v.push(h + r * a); if (n !== 0) { s = Math.pow(10, n), h = (h / s).toFixed(n) - 0, p = (p / s).toFixed(n) - 0; for (var a = 0; a <= t; a++)v[a] = (v[a] / s).toFixed(n) - 0 } C() } function N() { var e = i.splitNumber, t = i.precision, n = (p - h) / e; v = []; for (var r = 0; r <= e; r++)v.push((h + n * r).toFixed(t) - 0); C() } function C() { m = []; var e = i.axisLabel.formatter; if (e)for (var t = 0, n = v.length; t < n; t++)typeof e == "function" ? m.push(e(v[t])) : typeof e == "string" && m.push(e.replace("{value}", v[t])); else for (var t = 0, n = v.length; t < n; t++)m.push(f.numAddCommas(v[t])) } function k() { return x(), {min: h, max: p} } function L(e, t, n) { if (!n || n.length === 0)return; l = t, A(e, n) } function A(e, n) { e && (i = f.reformOption(e), i.axisLabel.textStyle = a.merge(i.axisLabel.textStyle || {}, t.textStyle, { overwrite: !1, recursive: !0 }), i.axisLabel.textStyle = a.merge(i.axisLabel.textStyle || {}, t.textStyle, { overwrite: !1, recursive: !0 }), o = n), r && (f.clear(), g()) } function O(e) { e = e < h ? h : e, e = e > p ? p : e; var t = p - h, n, r; return i.position == "left" || i.position == "right" ? (n = l.getHeight(), r = l.getYend() - (e - h) / t * n) : (n = l.getWidth(), r = (e - h) / t * n + l.getX()), r } function M(e) { return i.position == "left" || i.position == "right" ? Math.abs(e / (p - h) * l.getHeight()) : Math.abs(e / (p - h) * l.getWidth()) } function _() { return i.position } var u = e("./base"); u.call(this, t, r); var a = e("zrender/tool/util"), f = this; f.type = t.COMPONENT_TYPE_AXIS_VALUE; var l = s.grid, c = f.getZlevelBase(), h, p, d, v, m; f.init = L, f.refresh = A, f.getExtremum = k, f.getCoord = O, f.getCoordSize = M, f.getPosition = _, L(i, l, o) } return e("../component").define("valueAxis", t), t }), define("echarts/component/axis", ["require", "./base", "./categoryAxis", "./valueAxis", "../component"], function (e) { function t(t, n, r, i, s, o) { function l(e) { !e || e instanceof Array && e.length === 0 ? e = [{type: t.COMPONENT_TYPE_AXIS_VALUE}] : e instanceof Array || (e = [e]), e.length > 2 && (e = [e[0], e[1]]); if (o == "xAxis") { if (!e[0].position || e[0].position != "bottom" && e[0].position != "top") e[0].position = "bottom"; e.length > 1 && (e[1].position = e[0].position == "bottom" ? "top" : "bottom"); for (var n = 0, r = e.length; n < r; n++)e[n].type = e[n].type || "category", e[n].xAxisIndex = n, e[n].yAxisIndex = -1 } else { if (!e[0].position || e[0].position != "left" && e[0].position != "right") e[0].position = "left"; e.length > 1 && (e[1].position = e[0].position == "left" ? "right" : "left"); for (var n = 0, r = e.length; n < r; n++)e[n].type = e[n].type || "value", e[n].xAxisIndex = -1, e[n].yAxisIndex = n } return e } function c(u, l, c) { s = l, o = c, a.clear(); var h; o == "xAxis" ? (i.xAxis = a.reformOption(u.xAxis), h = i.xAxis) : (i.yAxis = a.reformOption(u.yAxis), h = i.yAxis); var p = e("./categoryAxis"), d = e("./valueAxis"); for (var v = 0, m = h.length; v < m; v++)f.push(h[v].type == "category" ? new p(t, n, r, h[v], s) : new d(t, n, r, h[v], s, i.series)) } function h(e) { var t, n; e && (o == "xAxis" ? (i.xAxis = a.reformOption(e.xAxis), t = i.xAxis) : (i.yAxis = l(e.yAxis), t = i.yAxis), n = e.series); for (var r = 0, s = f.length; r < s; r++)f[r].refresh && f[r].refresh(t ? t[r] : !1, n) } function p(e) { return f[e] } function d() { for (var e = 0, t = f.length; e < t; e++)f[e].dispose && f[e].dispose(); f = [] } var u = e("./base"); u.call(this, t, r); var a = this; a.type = t.COMPONENT_TYPE_AXIS; var f = []; a.clear = d, a.reformOption = l, a.init = c, a.refresh = h, a.getAxis = p, c(i, s, o) } return e("../component").define("axis", t), t }), define("echarts/component/grid", ["require", "./base", "../component"], function (e) { function t(t, n, r, i) { function d(e) { i = e, i.grid = o.reformOption(i.grid); var t = i.grid; h = r.getWidth(), p = r.getHeight(), a = o.parsePercent(t.x, h), f = o.parsePercent(t.y, p); var n = o.parsePercent(t.x2, h), s = o.parsePercent(t.y2, p); typeof t.width == "undefined" ? l = h - a - n : l = o.parsePercent(t.width, h), typeof t.height == "undefined" ? c = p - f - s : c = o.parsePercent(t.height, p), a = o.subPixelOptimize(a, t.borderWidth), f = o.subPixelOptimize(f, t.borderWidth), o.shapeList.push({ shape: "rectangle", id: r.newShapeId("grid"), zlevel: u, hoverable: !1, style: { x: a, y: f, width: l, height: c, brushType: t.borderWidth > 0 ? "both" : "fill", color: t.backgroundColor, strokeColor: t.borderColor, lineWidth: t.borderWidth } }), r.addShape(o.shapeList[0]) } function v() { return a } function m() { return f } function g() { return l } function y() { return c } function b() { return a + l } function w() { return f + c } function E() { return {x: a, y: f, width: l, height: c} } function S(e) { if (h != r.getWidth() || p != r.getHeight() || e) o.clear(), d(e || i) } var s = e("./base"); s.call(this, t, r); var o = this; o.type = t.COMPONENT_TYPE_GRID; var u = o.getZlevelBase(), a, f, l, c, h, p; o.init = d, o.getX = v, o.getY = m, o.getWidth = g, o.getHeight = y, o.getXend = b, o.getYend = w, o.getArea = E, o.refresh = S, d(i) } return e("../component").define("grid", t), t }), define("echarts/component/dataZoom", ["require", "./base", "../component", "zrender/tool/util", "zrender/tool/util", "zrender/tool/util", "../component"], function (e) { function t(t, n, r, i, s) { function S() { k(), L(), A(), O(); for (var e = 0, t = u.shapeList.length; e < t; e++)u.shapeList[e].id = r.newShapeId(u.type), r.addShape(u.shapeList[e]); P() } function x() { var e, t, n, i, o = s.grid; return f.orient == "horizontal" ? (n = f.width || o.getWidth(), i = f.height || l, e = typeof f.x != "undefined" ? f.x : o.getX(), t = typeof f.y != "undefined" ? f.y : r.getHeight() - i - 2) : (n = f.width || l, i = f.height || o.getHeight(), e = typeof f.x != "undefined" ? f.x : 2, t = typeof f.y != "undefined" ? f.y : o.getY()), { x: e, y: t, width: n, height: i } } function T() { var e = i.series, n = i.xAxis; n && !(n instanceof Array) && (n = [n], i.xAxis = n); var r = i.yAxis; r && !(r instanceof Array) && (r = [r], i.yAxis = r); var s = [], o, u, a = f.xAxisIndex; if (n && typeof a == "undefined") { o = []; for (var l = 0, c = n.length; l < c; l++)(n[l].type == "category" || typeof n[l].type == "undefined") && o.push(l) } else a instanceof Array ? o = a : typeof a != "undefined" ? o = [a] : o = []; a = f.yAxisIndex; if (r && typeof a == "undefined") { u = []; for (var l = 0, c = r.length; l < c; l++)r[l].type == "category" && u.push(l) } else a instanceof Array ? u = a : typeof a != "undefined" ? u = [a] : u = []; for (var l = 0, c = e.length; l < c; l++) { if (e[l].type != t.CHART_TYPE_LINE && e[l].type != t.CHART_TYPE_BAR && e[l].type != t.CHART_TYPE_SCATTER && e[l].type != t.CHART_TYPE_K)continue; for (var p = 0, d = o.length; p < d; p++)if (o[p] == (e[l].xAxisIndex || 0)) { s.push(l); break } for (var p = 0, d = u.length; p < d; p++)if (u[p] == (e[l].yAxisIndex || 0)) { s.push(l); break } e[l].type == t.CHART_TYPE_SCATTER && typeof f.xAxisIndex == "undefined" && typeof f.yAxisIndex == "undefined" && s.push(l) } var v = typeof f.start != "undefined" && f.start >= 0 && f.start <= 100 ? f.start : 0, m = typeof f.end != "undefined" && f.end >= 0 && f.end <= 100 ? f.end : 100; v > m && (v += m, m = v - m, v -= m); var g = Math.round((m - v) / 100 * (f.orient == "horizontal" ? h.width : h.height)); return {start: v, end: m, start2: 0, end2: 100, size: g, xAxisIndex: o, yAxisIndex: u, seriesIndex: s} } function N() { E = {xAxis: {}, yAxis: {}, series: {}}; var e = i.xAxis, n = p.xAxisIndex; for (var r = 0, s = n.length; r < s; r++)E.xAxis[n[r]] = e[n[r]].data; var o = i.yAxis, u = p.yAxisIndex; for (var r = 0, s = u.length; r < s; r++)E.yAxis[u[r]] = o[u[r]].data; var a = i.series, f = p.seriesIndex, l; for (var r = 0, s = f.length; r < s; r++)l = a[f[r]], E.series[f[r]] = l.data, l.type == t.CHART_TYPE_SCATTER && C(f[r]) } function C(n) { p.scatterMap = p.scatterMap || {}, p.scatterMap[n] = p.scatterMap[n] || {}; var r = e("../component"), o = e("zrender/tool/util"), u = r.get("axis"), a = o.clone(i.xAxis); a instanceof Array ? (a[0].type = "value", a[1] && (a[1].type = "value")) : a.type = "value"; var f = new u(t, null, !1, {xAxis: a, series: i.series}, s, "xAxis"), l = i.series[n].xAxisIndex || 0; p.scatterMap[n].x = f.getAxis(l).getExtremum(), f.dispose(), a = o.clone(i.yAxis), a instanceof Array ? (a[0].type = "value", a[1] && (a[1].type = "value")) : a.type = "value", f = new u(t, null, !1, { yAxis: a, series: i.series }, s, "yAxis"), l = i.series[n].yAxisIndex || 0, p.scatterMap[n].y = f.getAxis(l).getExtremum(), f.dispose() } function k() { u.shapeList.push({ shape: "rectangle", zlevel: a, hoverable: !1, style: {x: h.x, y: h.y, width: h.width, height: h.height, color: f.backgroundColor} }); var e = 0, n = E.xAxis, r = p.xAxisIndex; for (var s = 0, o = r.length; s < o; s++)e = Math.max(e, n[r[s]].length); var l = E.yAxis, c = p.yAxisIndex; for (var s = 0, o = c.length; s < o; s++)e = Math.max(e, l[c[s]].length); var d = p.seriesIndex[0], v = E.series[d], m = Number.MIN_VALUE, g = Number.MAX_VALUE, y; for (var s = 0, o = v.length; s < o; s++)y = typeof v[s] != "undefined" ? typeof v[s].value != "undefined" ? v[s].value : v[s] : 0, i.series[d].type == t.CHART_TYPE_K && (y = y[1]), isNaN(y) && (y = 0), m = Math.max(m, y), g = Math.min(g, y); var b = [], w = h.width / (e - (e > 1 ? 1 : 0)), S = h.height / (e - (e > 1 ? 1 : 0)); for (var s = 0, o = e; s < o; s++)y = typeof v[s] != "undefined" ? typeof v[s].value != "undefined" ? v[s].value : v[s] : 0, i.series[d].type == t.CHART_TYPE_K && (y = y[1]), isNaN(y) && (y = 0), f.orient == "horizontal" ? b.push([h.x + w * s, h.y + h.height - 5 - Math.round((y - g) / (m - g) * (h.height - 10))]) : b.push([h.x + 5 + Math.round((y - g) / (m - g) * (h.width - 10)), h.y + S * s]); f.orient == "horizontal" ? (b.push([h.x + h.width, h.y + h.height]), b.push([h.x, h.y + h.height])) : (b.push([h.x, h.y + h.height]), b.push([h.x, h.y])), u.shapeList.push({ shape: "polygon", zlevel: a, style: {pointList: b, color: f.dataBackgroundColor}, hoverable: !1 }) } function L() { d = { shape: "rectangle", zlevel: a, draggable: !0, ondrift: M, ondragend: F, _type: "filler" }, f.orient == "horizontal" ? d.style = { x: h.x + Math.round(p.start / 100 * h.width) + c, y: h.y, width: p.size - c * 2, height: h.height, color: f.fillerColor, text: ":::", textPosition: "inside" } : d.style = { x: h.x, y: h.y + Math.round(p.start / 100 * h.height) + c, width: h.width, height: p.size - c * 2, color: f.fillerColor, text: "::", textPosition: "inside" }, d.highlightStyle = {brushType: "fill", color: "rgba(0,0,0,0)"}, u.shapeList.push(d) } function A() { var t = e("zrender/tool/util"); v = { shape: "icon", zlevel: a, draggable: !0, style: { iconType: "rectangle", x: h.x, y: h.y, width: c, height: c, color: f.handleColor, text: "=", textPosition: "inside" }, highlightStyle: {brushType: "fill"}, ondrift: M, ondragend: F }, f.orient == "horizontal" ? (v.style.height = h.height, m = t.clone(v), v.style.x = d.style.x - c, m.style.x = d.style.x + d.style.width) : (v.style.width = h.width, m = t.clone(v), v.style.y = d.style.y - c, m.style.y = d.style.y + d.style.height), u.shapeList.push(v), u.shapeList.push(m) } function O() { var t = e("zrender/tool/util"), n = u.subPixelOptimize(h.x, 1), r = u.subPixelOptimize(h.y, 1); g = { shape: "rectangle", zlevel: a, hoverable: !1, style: { x: n, y: r, width: h.width - (n > h.x ? 1 : 0), height: h.height - (r > h.y ? 1 : 0), lineWidth: 1, brushType: "stroke", strokeColor: f.handleColor } }, y = t.clone(g), u.shapeList.push(g), u.shapeList.push(y); return } function M(e, t, n) { f.zoomLock && (e = d); var r = e._type == "filler" ? c : 0; return f.orient == "horizontal" ? e.style.x + t - r <= h.x ? e.style.x = h.x + r : e.style.x + t + e.style.width + r >= h.x + h.width ? e.style.x = h.x + h.width - e.style.width - r : e.style.x += t : e.style.y + n - r <= h.y ? e.style.y = h.y + r : e.style.y + n + e.style.height + r >= h.y + h.height ? e.style.y = h.y + h.height - e.style.height - r : e.style.y += n, e._type == "filler" ? _() : D(), f.realtime ? B() : (clearTimeout(b), b = setTimeout(B, 200)), !0 } function _() { f.orient == "horizontal" ? (v.style.x = d.style.x - c, m.style.x = d.style.x + d.style.width, p.start = Math.floor((v.style.x - h.x) / h.width * 100), p.end = Math.ceil((m.style.x + c - h.x) / h.width * 100)) : (v.style.y = d.style.y - c, m.style.y = d.style.y + d.style.height, p.start = Math.floor((v.style.y - h.y) / h.height * 100), p.end = Math.ceil((m.style.y + c - h.y) / h.height * 100)), r.modShape(v.id, v), r.modShape(m.id, m), P(), r.refresh() } function D() { var e, t; f.orient == "horizontal" ? (e = v.style.x, t = m.style.x, d.style.x = Math.min(e, t) + c, d.style.width = Math.abs(e - t) - c, p.start = Math.floor((Math.min(e, t) - h.x) / h.width * 100), p.end = Math.ceil((Math.max(e, t) + c - h.x) / h.width * 100)) : (e = v.style.y, t = m.style.y, d.style.y = Math.min(e, t) + c, d.style.height = Math.abs(e - t) - c, p.start = Math.floor((Math.min(e, t) - h.y) / h.height * 100), p.end = Math.ceil((Math.max(e, t) + c - h.y) / h.height * 100)), r.modShape(d.id, d), P(), r.refresh() } function P() { f.orient == "horizontal" ? (g.style.width = d.style.x - h.x, y.style.x = d.style.x + d.style.width, y.style.width = h.x + h.width - y.style.x) : (g.style.height = d.style.y - h.y, y.style.y = d.style.y + d.style.height, y.style.height = h.y + h.height - y.style.y), r.modShape(g.id, g), r.modShape(y.id, y) } function H() { if (!f.show)return; f.orient == "horizontal" ? (v.style.x = h.x + p.start / 100 * h.width, m.style.x = h.x + p.end / 100 * h.width - c, d.style.x = v.style.x + c, d.style.width = m.style.x - v.style.x - c) : (v.style.y = h.y + p.start / 100 * h.height, m.style.y = h.y + p.end / 100 * h.height - c, d.style.y = v.style.y + c, d.style.height = m.style.y - v.style.y - c), r.modShape(v.id, v), r.modShape(m.id, m), r.modShape(d.id, d), P(), r.refresh() } function B(e) { var r, s, o, u, a; for (var l in E) { r = E[l]; for (var c in r)a = r[c], u = a.length, s = Math.floor(p.start / 100 * u), o = Math.ceil(p.end / 100 * u), i[l][c].type != t.CHART_TYPE_SCATTER ? i[l][c].data = a.slice(s, o) : i[l][c].data = j(c, a) } !w && (f.realtime || e) && n.dispatch(t.EVENT.DATA_ZOOM, null, {zoom: p}), f.start = p.start, f.end = p.end } function j(e, t) { var n = [], r = p.scatterMap[e], i, s, o, u, a; f.orient == "horizontal" ? (i = r.x.max - r.x.min, s = p.start / 100 * i + r.x.min, o = p.end / 100 * i + r.x.min, i = r.y.max - r.y.min, u = p.start2 / 100 * i + r.y.min, a = p.end2 / 100 * i + r.y.min) : (i = r.x.max - r.x.min, s = p.start2 / 100 * i + r.x.min, o = p.end2 / 100 * i + r.x.min, i = r.y.max - r.y.min, u = p.start / 100 * i + r.y.min, a = p.end / 100 * i + r.y.min); var l; for (var c = 0, h = t.length; c < h; c++)l = t[c].value || t[c], l[0] >= s && l[0] <= o && l[1] >= u && l[1] <= a && n.push(t[c]); return n } function F() { u.isDragend = !0 } function I(e, r) { if (!u.isDragend || !e.target)return; B(), r.dragOut = !0, r.dragIn = !0, !w && !f.realtime && n.dispatch(t.EVENT.DATA_ZOOM, null, {zoom: p}), r.needRefresh = !1, u.isDragend = !1; return } function q(e, t) { t.needRefresh = !0; return } function R(e) { f.start = p.start = e.start, f.end = p.end = e.end, f.start2 = p.start2 = e.start2, f.end2 = p.end2 = e.end2, H(), B(!0); return } function U(e) { if (!e)return f.start = f.start2 = p.start = p.start2 = 0, f.end = f.end2 = p.end = p.end2 = 100, H(), B(!0), p; var t = s.grid.getArea(), n = {x: e.x, y: e.y, width: e.width, height: e.height}; n.width < 0 && (n.x += n.width, n.width = -n.width), n.height < 0 && (n.y += n.height, n.height = -n.height); if (n.x > t.x + t.width || n.y > t.y + t.height)return !1; n.x < t.x && (n.x = t.x), n.x + n.width > t.x + t.width && (n.width = t.x + t.width - n.x), n.y + n.height > t.y + t.height && (n.height = t.y + t.height - n.y); var r, i = (n.x - t.x) / t.width, o = 1 - (n.x + n.width - t.x) / t.width, u = 1 - (n.y + n.height - t.y) / t.height, a = (n.y - t.y) / t.height; return f.orient == "horizontal" ? (r = p.end - p.start, p.start += r * i, p.end -= r * o, r = p.end2 - p.start2, p.start2 += r * u, p.end2 -= r * a) : (r = p.end - p.start, p.start += r * u, p.end -= r * a, r = p.end2 - p.start2, p.start2 += r * i, p.end2 -= r * o), f.start = p.start, f.end = p.end, f.start2 = p.start2, f.end2 = p.end2, H(), B(!0), p } function z(e, t) { var n, r = E.series, i = e.series, s; for (var o = 0, u = i.length; o < u; o++) { s = i[o].data, r[o] ? n = Math.floor(p.start / 100 * r[o].length) : n = 0; for (var a = 0, f = s.length; a < f; a++)t.series[o].data[a + n] = s[a], r[o] && (r[o][a + n] = s[a]) } } function W(e) { w = e } function X(e, t) { if (!E)return t; var n = E.series; return n[e] ? Math.floor(p.start / 100 * n[e].length) + t : -1 } function V(e) { i = e, i.dataZoom = u.reformOption(i.dataZoom), f = i.dataZoom, u.clear(); if (i.dataZoom.show || u.query(i, "toolbox.show") && u.query(i, "toolbox.feature.dataZoom.show")) h = x(), p = T(), N(); i.dataZoom.show && (S(), B()) } function $() { u.clear(); if (i.dataZoom.show || u.query(i, "toolbox.show") && u.query(i, "toolbox.feature.dataZoom.show")) h = x(), p = T(); i.dataZoom.show && S() } var o = e("./base"); o.call(this, t, r); var u = this; u.type = t.COMPONENT_TYPE_DATAZOOM; var a = u.getZlevelBase(), f, l = 28, c = 8, h, p, d, v, m, g, y, b, w = !1, E; u.init = V, u.resize = $, u.syncBackupData = z, u.absoluteZoom = R, u.rectZoom = U, u.ondragend = I, u.ondataZoom = q, u.silence = W, u.getRealDataIndex = X, V(i) } return e("../component").define("dataZoom", t), t }), define("echarts/component/legend", ["require", "./base", "zrender/tool/util", "zrender/tool/area", "zrender/tool/color", "zrender/shape", "zrender/shape", "zrender/shape", "zrender/shape", "zrender/shape", "../component"], function (e) { function t(t, r, i, s, o) { function w() { d = T(), x(), E(); for (var e = 0, t = c.shapeList.length; e < t; e++)c.shapeList[e].id = i.newShapeId(c.type), i.addShape(c.shapeList[e]) } function E() { var e = h.data, t = e.length, n, r, s, o, u = h.textStyle, l, v, m = i.getWidth(), y = i.getHeight(), b = d.x, w = d.y, E = h.itemWidth, x = h.itemHeight, T = h.itemGap, L; h.orient == "vertical" && h.x == "right" && (b = d.x + d.width - E); for (var A = 0; A < t; A++) { l = a.merge(e[A].textStyle || {}, u, {overwrite: !1}), v = c.getFont(l), n = e[A].name || e[A]; if (n === "") { h.orient == "horizontal" ? (b = d.x, w += x + T) : (h.x == "right" ? b -= d.maxWidth + T : b += d.maxWidth + T, w = d.y); continue } r = N(n).type, L = M(n), h.orient == "horizontal" ? m - b < 200 && E + 5 + f.getTextWidth(n, v) + (A == t - 1 || e[A + 1] === "" ? 0 : T) >= m - b && (b = d.x, w += x + T) : y - w < 200 && x + (A == t - 1 || e[A + 1] === "" ? 0 : T) >= y - w && (h.x == "right" ? b -= d.maxWidth + T : b += d.maxWidth + T, w = d.y), s = C(b, w, E, x, g[n] ? L : "#ccc", r, L), s._name = n, h.selectedMode && (s.onclick = k), c.shapeList.push(s), o = { shape: "text", zlevel: p, style: { x: b + E + 5, y: w, color: g[n] ? l.color === "auto" ? L : l.color : "#ccc", text: n, textFont: v, textBaseline: "top" }, highlightStyle: {color: L, brushType: "fill"}, hoverable: !!h.selectedMode, clickable: !!h.selectedMode }, h.orient == "vertical" && h.x == "right" && (o.style.x -= E + 10, o.style.textAlign = "right"), o._name = n, h.selectedMode && (o.onclick = k), c.shapeList.push(o), h.orient == "horizontal" ? b += E + 5 + f.getTextWidth(n, v) + T : w += x + T } h.orient == "horizontal" && h.x == "center" && w != d.y && S() } function S() { var e = [], t = d.x; for (var n = 2, r = c.shapeList.length; n < r; n++)c.shapeList[n].style.x == t ? e.push((d.width - (c.shapeList[n - 1].style.x + f.getTextWidth(c.shapeList[n - 1].style.text, c.shapeList[n - 1].style.textFont) - t)) / 2) : n == r - 1 && e.push((d.width - (c.shapeList[n].style.x + f.getTextWidth(c.shapeList[n].style.text, c.shapeList[n].style.textFont) - t)) / 2); var i = -1; for (var n = 1, r = c.shapeList.length; n < r; n++) { c.shapeList[n].style.x == t && i++; if (e[i] === 0)continue; c.shapeList[n].style.x += e[i] } } function x() { var e = h.padding[0], t = h.padding[1], n = h.padding[2], r = h.padding[3]; c.shapeList.push({ shape: "rectangle", zlevel: p, hoverable: !1, style: { x: d.x - r, y: d.y - e, width: d.width + r + t, height: d.height + e + n, brushType: h.borderWidth === 0 ? "fill" : "both", color: h.backgroundColor, strokeColor: h.borderColor, lineWidth: h.borderWidth } }) } function T() { var e = h.data, t = e.length, n = h.itemGap, r = h.itemWidth + 5, s = h.itemHeight, o = h.textStyle, u = c.getFont(o), l = 0, p = 0, d = h.padding, v = i.getWidth() - d[1] - d[3], m = i.getHeight() - d[0] - d[2], g = 0, y = 0; if (h.orient == "horizontal") { p = s; for (var b = 0; b < t; b++) { if (e[b] === "") { g -= n, g > v ? (l = v, p += s + n) : l = Math.max(l, g), p += s + n, g = 0; continue } dataTextStyle = a.merge(e[b].textStyle || {}, o, {overwrite: !1}), g += r + f.getTextWidth(e[b].name || e[b], e[b].textStyle ? c.getFont(a.merge(e[b].textStyle || {}, o, {overwrite: !1})) : u) + n } p = Math.max(p, s), g -= n, g > v ? (l = v, p += s + n) : l = Math.max(l, g) } else { for (var b = 0; b < t; b++)y = Math.max(y, f.getTextWidth(e[b].name || e[b], e[b].textStyle ? c.getFont(a.merge(e[b].textStyle || {}, o, {overwrite: !1})) : u)); y += r, l = y; for (var b = 0; b < t; b++) { if (e[b] === "") { g -= n, g > m ? (p = m, l += y + n) : p = Math.max(p, g), l += y + n, g = 0; continue } g += s + n } l = Math.max(l, y), g -= n, g > m ? (p = m, l += y + n) : p = Math.max(p, g) } v = i.getWidth(), m = i.getHeight(); var w; switch (h.x) { case"center": w = Math.floor((v - l) / 2); break; case"left": w = h.padding[3] + h.borderWidth; break; case"right": w = v - l - h.padding[1] - h.padding[3] - h.borderWidth * 2; break; default: w = h.x - 0, w = isNaN(w) ? 0 : w } var E; switch (h.y) { case"top": E = h.padding[0] + h.borderWidth; break; case"bottom": E = m - p - h.padding[0] - h.padding[2] - h.borderWidth * 2; break; case"center": E = Math.floor((m - p) / 2); break; default: E = h.y - 0, E = isNaN(E) ? 0 : E } return {x: w, y: E, width: l, height: p, maxWidth: y} } function N(e) { var n = s.series, r; for (var i = 0, o = n.length; i < o; i++) { if (n[i].name == e)return {type: n[i].type, series: n[i], seriesIndex: i, data: null, dataIndex: -1}; if (n[i].type == t.CHART_TYPE_PIE || n[i].type == t.CHART_TYPE_RADAR || n[i].type == t.CHART_TYPE_CHORD || n[i].type == t.CHART_TYPE_FORCE) { r = n[i].type != t.CHART_TYPE_FORCE ? n[i].data : n[i].categories; for (var u = 0, a = r.length; u < a; u++)if (r[u].name == e)return { type: n[i].type, series: n[i], seriesIndex: i, data: r[u], dataIndex: u } } } return {type: "bar", series: null, seriesIndex: -1, data: null, dataIndex: -1} } function C(e, n, r, i, s, o, u) { var a = s === "#ccc" ? u : typeof s == "string" && s != "#ccc" ? l.lift(s, -0.3) : s, f = { shape: "icon", zlevel: p, style: { iconType: "legendicon" + (o != t.CHART_TYPE_CHORD ? o : t.CHART_TYPE_PIE), x: e, y: n, width: r, height: i, color: s, strokeColor: s, lineWidth: 2 }, highlightStyle: {color: a, strokeColor: a, lineWidth: 1}, hoverable: h.selectedMode, clickable: h.selectedMode }; switch (o) { case"line": f.style.brushType = "stroke", f.highlightStyle.lineWidth = 3; break; case"radar": case"scatter": f.highlightStyle.lineWidth = 3; break; case"k": f.style.brushType = "both", f.highlightStyle.lineWidth = 3, f.highlightStyle.color = f.style.color = c.query(t, "k.itemStyle.normal.color") || "#fff", f.style.strokeColor = s != "#ccc" ? c.query(t, "k.itemStyle.normal.lineStyle.color") || "#ff3200" : s } return f } function k(e) { var n = e.target._name; if (h.selectedMode === "single")for (var i in g)g[i] = !1; g[n] = !g[n], r.dispatch(t.EVENT.LEGEND_SELECTED, e.event, {selected: g, target: n}) } function L(e) { if (!c.query(e, "legend.data"))return; s = e, s.legend = c.reformOption(s.legend), s.legend.padding = c.reformCssArray(s.legend.padding), h = s.legend, c.clear(), g = {}; var n = h.data || [], r, i, u, a; for (var f = 0, l = n.length; f < l; f++) { r = n[f].name || n[f]; if (r === "")continue; i = N(r), i.series ? (!i.data || i.type != t.CHART_TYPE_PIE && i.type != t.CHART_TYPE_FORCE ? a = [i.series] : a = [i.data, i.series], u = c.getItemStyleColor(c.deepQuery(a, "itemStyle.normal.color"), i.seriesIndex, i.dataIndex, i.data), u && i.type != t.CHART_TYPE_K && O(r, u), g[r] = !0) : g[r] = !1 } if (o)for (var p in o)g[p] = o[p]; w() } function A(e) { if (e) { s = e, s.legend = c.reformOption(s.legend), s.legend.padding = c.reformCssArray(s.legend.padding); if (s.legend.selected)for (var t in s.legend.selected)g[t] = s.legend.selected[t] } h = s.legend, c.clear(), w() } function O(e, t) { m[e] = t } function M(e) { return m[e] || (m[e] = i.getColor(v++)), m[e] } function _(e) { return m[e] ? m[e] : !1 } function D(e, t) { h.data.push(e), O(e, t), g[e] = !0 } function P(e) { var t = h.data, n = [], r = !1; for (var i = 0, s = t.length; i < s; i++) { if (!r && t[i] == e) { r = !0; continue } n.push(t[i]) } h.data = n } function H(e) { if (typeof e == "undefined")return; var t; for (var n = 0, r = c.shapeList.length; n < r; n++) { t = c.shapeList[n]; if (t._name == e && t.shape != "text")return t } } function B(e, t) { var n; for (var r = 0, s = c.shapeList.length; r < s; r++)n = c.shapeList[r], n._name == e && n.shape != "text" && (g[e] || (t.style.color = "#ccc", t.style.strokeColor = "#ccc"), i.modShape(n.id, t)) } function j(e) { return typeof g[e] != "undefined" ? g[e] : !0 } function F() { return g } function I(e, t) { var n = e.selected; for (var r in g)g[r] != n[r] && (t.needRefresh = !0), g[r] = n[r]; return } var u = e("./base"); u.call(this, t, i); var a = e("zrender/tool/util"), f = e("zrender/tool/area"), l = e("zrender/tool/color"), c = this; c.type = t.COMPONENT_TYPE_LEGEND; var h, p = c.getZlevelBase(), d = {}, v = 0, m = {}, g = {}, y = e("zrender/shape").get("icon"); for (var b in n)y.define("legendicon" + b, n[b]); c.init = L, c.refresh = A, c.setColor = O, c.getColor = M, c.hasColor = _, c.add = D, c.del = P, c.getItemShape = H, c.setItemShape = B, c.isSelected = j, c.getSelectedMap = F, c.onlegendSelected = I, L(s) } var n = { line: function (e, t) { var n = t.height / 2; e.moveTo(t.x, t.y + n), e.lineTo(t.x + t.width, t.y + n) }, pie: function (t, n) { var r = n.x, i = n.y, s = n.width, o = n.height, u = e("zrender/shape").get("sector"); u.buildPath(t, {x: r + s / 2, y: i + o + 2, r: o + 2, r0: 6, startAngle: 45, endAngle: 135}) }, chord: function (t, n) { var r = n.x, i = n.y, s = n.width, o = n.height, u = e("zrender/shape").get("beziercurve"); t.moveTo(r, i + o), u.buildPath(t, { xStart: r, yStart: i + o, cpX1: r + s, cpY1: i + o, cpX2: r, cpY2: i + 4, xEnd: r + s, yEnd: i + 4 }), t.lineTo(r + s, i), u.buildPath(t, { xStart: r + s, yStart: i, cpX1: r, cpY1: i, cpX2: r + s, cpY2: i + o - 4, xEnd: r, yEnd: i + o - 4 }), t.lineTo(r, i + o) }, k: function (t, n) { var r = n.x, i = n.y, s = n.width, o = n.height, u = e("zrender/shape").get("candle"); u.buildPath(t, {x: r + s / 2, y: [i + 1, i + 1, i + o - 6, i + o], width: s - 6}) }, bar: function (e, t) { var n = t.x, r = t.y + 1, i = t.width, s = t.height - 2, o = 3; e.moveTo(n + o, r), e.lineTo(n + i - o, r), e.quadraticCurveTo(n + i, r, n + i, r + o), e.lineTo(n + i, r + s - o), e.quadraticCurveTo(n + i, r + s, n + i - o, r + s), e.lineTo(n + o, r + s), e.quadraticCurveTo(n, r + s, n, r + s - o), e.lineTo(n, r + o), e.quadraticCurveTo(n, r, n + o, r) }, force: function (t, n) { e("zrender/shape").get("icon").get("circle")(t, n) }, radar: function (e, t) { var n = 6, r = t.x + t.width / 2, i = t.y + t.height / 2, s = t.height / 2, o = 2 * Math.PI / n, u = -Math.PI / 2, a = r + s * Math.cos(u), f = i + s * Math.sin(u); e.moveTo(a, f), u += o; for (var l = 0, c = n - 1; l < c; l++)e.lineTo(r + s * Math.cos(u), i + s * Math.sin(u)), u += o; e.lineTo(a, f) } }; return e("../component").define("legend", t), t }), define("echarts/util/shape/handlePolygon", ["require", "zrender/tool/matrix", "zrender/shape", "zrender/shape/base", "zrender/shape"], function (e) { function n() { this.type = "handlePolygon" } var t = e("zrender/tool/matrix"); return n.prototype = { buildPath: function (t, n) { e("zrender/shape").get("polygon").buildPath(t, n); return }, isCover: function (e, n, r) { if (e.__needTransform && e._transform) { var i = []; t.invert(i, e._transform); var s = [n, r]; t.mulVector(s, i, [n, r, 1]), n == s[0] && r == s[1] && (Math.abs(e.rotation[0]) > 1e-4 || Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4 || Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4 ? e.__needTransform = !0 : e.__needTransform = !1), n = s[0], r = s[1] } var o = e.style.rect; return n >= o.x && n <= o.x + o.width && r >= o.y && r <= o.y + o.height ? !0 : !1 } }, e("zrender/shape/base").derive(n), e("zrender/shape").define("handlePolygon", new n), n }), define("echarts/component/dataRange", ["require", "./base", "zrender/tool/area", "zrender/tool/color", "zrender/tool/color", "../util/shape/handlePolygon", "../component"], function (e) { function t(t, n, r, i) { function T() { l = M(), O(), a.splitNumber <= 0 || a.calculable ? C() : N(); for (var e = 0, t = u.shapeList.length; e < t; e++)u.shapeList[e].id = r.newShapeId(u.type), r.addShape(u.shapeList[e]); j() } function N() { var e = S, t = e.length, n, r, i, s = u.getFont(a.textStyle), c = l.x, h = l.y, p = a.itemWidth, d = a.itemHeight, v = a.itemGap, m = o.getTextHeight("国", s), g; a.orient == "vertical" && a.x == "right" && (c = l.x + l.width - p); var y = !0; a.text && (y = !1, a.text[0] && (i = _(c, h, a.text[0]), a.orient == "horizontal" ? c += o.getTextWidth(a.text[0], s) + b : (h += m + b, i.style.y += m / 2 + b, i.style.textBaseline = "bottom"), u.shapeList.push(i))); for (var E = 0; E < t; E++)n = e[E], g = X((t - E) * w + a.min), r = D(c, h, p, d, x[E] ? g : "#ccc"), r._idx = E, r.onclick = U, u.shapeList.push(r), y && (i = { shape: "text", zlevel: f, style: { x: c + p + 5, y: h, color: x[E] ? a.textStyle.color : "#ccc", text: e[E], textFont: s, textBaseline: "top" }, highlightStyle: {brushType: "fill"}, clickable: !0 }, a.orient == "vertical" && a.x == "right" && (i.style.x -= p + 10, i.style.textAlign = "right"), i._idx = E, i.onclick = U, u.shapeList.push(i)), a.orient == "horizontal" ? c += p + (y ? 5 : 0) + (y ? o.getTextWidth(n, s) : 0) + v : h += d + v; !y && a.text[1] && (a.orient == "horizontal" ? c = c - v + b : h = h - v + b, i = _(c, h, a.text[1]), a.orient != "horizontal" && (i.style.y -= 5, i.style.textBaseline = "top"), u.shapeList.push(i)) } function C() { var t, n, r = u.getFont(a.textStyle), i = l.x, s = l.y, h = a.itemWidth, p = a.itemHeight, d = o.getTextHeight("国", r), v = !0; a.text && (v = !1, a.text[0] && (n = _(i, s, a.text[0]), a.orient == "horizontal" ? i += o.getTextWidth(a.text[0], r) + b : (s += d + b, n.style.y += d / 2 + b, n.style.textBaseline = "bottom"), u.shapeList.push(n))); var m = e("zrender/tool/color"), g = 1 / (a.color.length - 1), y = []; for (var w = 0, E = a.color.length; w < E; w++)y.push([w * g, a.color[w]]); a.orient == "horizontal" ? (t = { shape: "rectangle", zlevel: f, style: {x: i, y: s, width: h * 10, height: p, color: m.getLinearGradient(i, s, i + h * 10, s, y)}, hoverable: !1 }, i += h * 10 + b) : (t = { shape: "rectangle", zlevel: f, style: {x: i, y: s, width: h, height: p * 10, color: m.getLinearGradient(i, s, i, s + p * 10, y)}, hoverable: !1 }, s += p * 10 + b), u.shapeList.push(t), a.calculable && (c = t.style, k(), A(), L()), !v && a.text[1] && (n = _(i, s, a.text[1]), u.shapeList.push(n)) } function k() { m = { shape: "rectangle", zlevel: f + 1, style: {x: c.x, y: c.y, width: c.width, height: c.height, color: "rgba(255,255,255,0)"}, highlightStyle: {strokeColor: "rgba(255,255,255,0.5)", lineWidth: 1}, draggable: !0, ondrift: P, ondragend: H, _type: "filler" }, u.shapeList.push(m) } function L() { var e = c.x, t = c.y, n = c.width, r = c.height, i = u.getFont(a.textStyle), s = o.getTextHeight("国", i), l = Math.max(o.getTextWidth(a.max.toFixed(a.precision), i), o.getTextWidth(a.min.toFixed(a.precision), i)) + 2, p, v, m, g, y, b, w, E; a.orient == "horizontal" ? a.y != "bottom" ? (p = [[e, t], [e, t + r + s], [e - s, t + r + s], [e - 1, t + r], [e - 1, t]], v = e - l / 2 - s, m = t + r + s / 2 + 2, g = { x: e - l - s, y: t + r, width: l + s, height: s }, y = [[e + n, t], [e + n, t + r + s], [e + n + s, t + r + s], [e + n + 1, t + r], [e + n + 1, t]], b = e + n + l / 2 + s, w = m, E = { x: e + n, y: t + r, width: l + s, height: s }) : (p = [[e, t + r], [e, t - s], [e - s, t - s], [e - 1, t], [e - 1, t + r]], v = e - l / 2 - s, m = t - s / 2 - 2, g = { x: e - l - s, y: t - s, width: l + s, height: s }, y = [[e + n, t + r], [e + n, t - s], [e + n + s, t - s], [e + n + 1, t], [e + n + 1, t + r]], b = e + n + l / 2 + s, w = m, E = { x: e + n, y: t - s, width: l + s, height: s }) : (l += s, a.x != "right" ? (p = [[e, t], [e + n + s, t], [e + n + s, t - s], [e + n, t - 1], [e, t - 1]], v = e + n + l / 2 + s / 2, m = t - s / 2, g = { x: e + n, y: t - s, width: l + s, height: s }, y = [[e, t + r], [e + n + s, t + r], [e + n + s, t + s + r], [e + n, t + 1 + r], [e, t + r + 1]], b = v, w = t + r + s / 2, E = { x: e + n, y: t + r, width: l + s, height: s }) : (p = [[e + n, t], [e - s, t], [e - s, t - s], [e, t - 1], [e + n, t - 1]], v = e - l / 2 - s / 2, m = t - s / 2, g = { x: e - l - s, y: t - s, width: l + s, height: s }, y = [[e + n, t + r], [e - s, t + r], [e - s, t + s + r], [e, t + 1 + r], [e + n, t + r + 1]], b = v, w = t + r + s / 2, E = { x: e - l - s, y: t + r, width: l + s, height: s })), h = { shape: "handlePolygon", style: { pointList: p, text: a.max.toFixed(a.precision), textX: v, textY: m, color: X(a.max), rect: g, x: p[0][0], y: p[0][1], _x: p[0][0], _y: p[0][1] } }, h.highlightStyle = {strokeColor: h.style.color, lineWidth: 1}, d = { shape: "handlePolygon", style: { pointList: y, text: a.min.toFixed(a.precision), textX: b, textY: w, color: X(a.min), rect: E, x: y[0][0], y: y[0][1], _x: y[0][0], _y: y[0][1] } }, d.highlightStyle = { strokeColor: d.style.color, lineWidth: 1 }, h.zlevel = d.zlevel = f + 1, h.draggable = d.draggable = !0, h.ondrift = d.ondrift = P, h.ondragend = d.ondragend = H, h.style.textColor = d.style.textColor = a.textStyle.color, h.style.textAlign = d.style.textAlign = "center", h.style.textPosition = d.style.textPosition = "specific", h.style.textBaseline = d.style.textBaseline = "middle", h.style.width = d.style.width = 0, h.style.height = d.style.height = 0, h.style.textPosition = d.style.textPosition = "specific", u.shapeList.push(h), u.shapeList.push(d) } function A() { var e = c.x, t = c.y, n = c.width, r = c.height; p = { shape: "rectangle", zlevel: f + 1, style: { x: e, y: t, width: a.orient == "horizontal" ? 0 : n, height: a.orient == "horizontal" ? r : 0, color: "#ccc" }, hoverable: !1 }, v = { shape: "rectangle", zlevel: f + 1, style: { x: a.orient == "horizontal" ? e + n : e, y: a.orient == "horizontal" ? t : t + r, width: a.orient == "horizontal" ? 0 : n, height: a.orient == "horizontal" ? r : 0, color: "#ccc" }, hoverable: !1 }, u.shapeList.push(p), u.shapeList.push(v) } function O() { var e = a.padding[0], t = a.padding[1], n = a.padding[2], r = a.padding[3]; u.shapeList.push({ shape: "rectangle", zlevel: f, hoverable: !1, style: { x: l.x - r, y: l.y - e, width: l.width + r + t, height: l.height + e + n, brushType: a.borderWidth === 0 ? "fill" : "both", color: a.backgroundColor, strokeColor: a.borderColor, lineWidth: a.borderWidth } }) } function M() { var e = S, t = e.length, n = a.itemGap, i = a.itemWidth, s = a.itemHeight, f = 0, l = 0, c = u.getFont(a.textStyle), h = o.getTextHeight("国", c); if (a.orient == "horizontal") { if (a.text || a.splitNumber <= 0 || a.calculable) f = (a.splitNumber <= 0 || a.calculable ? i * 10 + n : t * (i + n)) + (a.text && typeof a.text[0] != "undefined" ? o.getTextWidth(a.text[0], c) + b : 0) + (a.text && typeof a.text[1] != "undefined" ? o.getTextWidth(a.text[1], c) + b : 0); else { i += 5; for (var p = 0; p < t; p++)f += i + o.getTextWidth(e[p], c) + n } f -= n, l = Math.max(h, s) } else { var d; if (a.text || a.splitNumber <= 0 || a.calculable) l = (a.splitNumber <= 0 || a.calculable ? s * 10 + n : t * (s + n)) + (a.text && typeof a.text[0] != "undefined" ? b + h : 0) + (a.text && typeof a.text[1] != "undefined" ? b + h : 0), d = Math.max(o.getTextWidth(a.text && a.text[0] || "", c), o.getTextWidth(a.text && a.text[1] || "", c)), f = Math.max(i, d); else { l = (s + n) * t, i += 5, d = 0; for (var p = 0; p < t; p++)d = Math.max(d, o.getTextWidth(e[p], c)); f = i + d } l -= n } var v, m = r.getWidth(); switch (a.x) { case"center": v = Math.floor((m - f) / 2); break; case"left": v = a.padding[3] + a.borderWidth; break; case"right": v = m - f - a.padding[1] - a.borderWidth; break; default: v = u.parsePercent(a.x, m), v = isNaN(v) ? 0 : v } var g, y = r.getHeight(); switch (a.y) { case"top": g = a.padding[0] + a.borderWidth; break; case"bottom": g = y - l - a.padding[2] - a.borderWidth; break; case"center": g = Math.floor((y - l) / 2); break; default: g = u.parsePercent(a.y, y), g = isNaN(g) ? 0 : g } if (a.calculable) { var w = Math.max(o.getTextWidth(a.max, c), o.getTextWidth(a.min, c)) + h; a.orient == "horizontal" ? (v < w && (v = w), v + f + w > m && (v -= w)) : (g < h && (g = h), g + l + h > y && (g -= h)) } return {x: v, y: g, width: f, height: l} } function _(e, t, n) { return { shape: "text", zlevel: f, style: { x: a.orient == "horizontal" ? e : l.x + l.width / 2, y: a.orient == "horizontal" ? l.y + l.height / 2 : t, color: a.textStyle.color, text: n, textFont: u.getFont(a.textStyle), textBaseline: a.orient == "horizontal" ? "middle" : "top", textAlign: a.orient == "horizontal" ? "left" : "center" }, hoverable: !1 } } function D(e, t, n, r, i) { return { shape: "rectangle", zlevel: f, style: {x: e, y: t + 1, width: n, height: r - 2, color: i}, highlightStyle: {strokeColor: i, lineWidth: 1}, clickable: !0 } } function P(e, t, n) { var r = c.x, i = c.y, s = c.width, o = c.height; return a.orient == "horizontal" ? e.style.x + t <= r ? e.style.x = r : e.style.x + t + e.style.width >= r + s ? e.style.x = r + s - e.style.width : e.style.x += t : e.style.y + n <= i ? e.style.y = i : e.style.y + n + e.style.height >= i + o ? e.style.y = i + o - e.style.height : e.style.y += n, e._type == "filler" ? F() : I(e), a.realtime ? R() : (clearTimeout(y), y = setTimeout(R, 200)), !0 } function H() { u.isDragend = !0 } function B(e, r) { if (!u.isDragend || !e.target)return; R(), r.dragOut = !0, r.dragIn = !0, a.realtime || n.dispatch(t.EVENT.DATA_RANGE, null, { range: { start: g.end, end: g.start } }), r.needRefresh = !1, u.isDragend = !1; return } function j() { if (a.range) { typeof a.range.start != "undefined" && (g.end = a.range.start), typeof a.range.end != "undefined" && (g.start = a.range.end); if (g.start != 100 || g.end !== 0) { if (a.orient == "horizontal") { var e = m.style.width; m.style.x += e * (100 - g.start) / 100, m.style.width = e * (g.start - g.end) / 100 } else { var t = m.style.height; m.style.y += t * (100 - g.start) / 100, m.style.height = t * (g.start - g.end) / 100 } r.modShape(m.id, m), F() } } } function F() { var e = c.x, t = c.y, n = c.width, r = c.height; a.orient == "horizontal" ? (h.style.x = m.style.x, p.style.width = h.style.x - e, d.style.x = m.style.x + m.style.width, v.style.x = d.style.x, v.style.width = e + n - d.style.x, g.start = Math.ceil(100 - (h.style.x - e) / n * 100), g.end = Math.floor(100 - (d.style.x - e) / n * 100)) : (h.style.y = m.style.y, p.style.height = h.style.y - t, d.style.y = m.style.y + m.style.height, v.style.y = d.style.y, v.style.height = t + r - d.style.y, g.start = Math.ceil(100 - (h.style.y - t) / r * 100), g.end = Math.floor(100 - (d.style.y - t) / r * 100)), q(!1) } function I(e) { var t = c.x, n = c.y, r = c.width, i = c.height, s, o; a.orient == "horizontal" ? (s = h.style.x, o = d.style.x, e.id == h.id && s >= o ? (o = s, d.style.x = s) : e.id == d.id && s >= o && (s = o, h.style.x = s), m.style.x = s, m.style.width = o - s, p.style.width = s - t, v.style.x = o, v.style.width = t + r - o, g.start = Math.ceil(100 - (s - t) / r * 100), g.end = Math.floor(100 - (o - t) / r * 100)) : (s = h.style.y, o = d.style.y, e.id == h.id && s >= o ? (o = s, d.style.y = s) : e.id == d.id && s >= o && (s = o, h.style.y = s), m.style.y = s, m.style.height = o - s, p.style.height = s - n, v.style.y = o, v.style.height = n + i - o, g.start = Math.ceil(100 - (s - n) / i * 100), g.end = Math.floor(100 - (o - n) / i * 100)), q(!0) } function q(e) { h.position = [h.style.x - h.style._x, h.style.y - h.style._y], a.precision === 0 ? h.style.text = Math.round(w * g.start + a.min) + "" : h.style.text = (w * g.start + a.min).toFixed(a.precision), h.style.color = h.highlightStyle.strokeColor = X(w * g.start + a.min), r.modShape(h.id, h), d.position = [d.style.x - d.style._x, d.style.y - d.style._y], a.precision === 0 ? d.style.text = Math.round(w * g.end + a.min) + "" : d.style.text = (w * g.end + a.min).toFixed(a.precision), d.style.color = d.highlightStyle.strokeColor = X(w * g.end + a.min), r.modShape(d.id, d), r.modShape(p.id, p), r.modShape(v.id, v), e && r.modShape(m.id, m), r.refresh() } function R() { a.realtime && n.dispatch(t.EVENT.DATA_RANGE, null, {range: {start: g.end, end: g.start}}) } function U(e) { var r = e.target._idx; x[r] = !x[r], n.dispatch(t.EVENT.REFRESH) } function z(t) { if (typeof u.query(t, "dataRange.min") == "undefined" || typeof u.query(t, "dataRange.max") == "undefined")return; i = t, i.dataRange = u.reformOption(i.dataRange), i.dataRange.padding = u.reformCssArray(i.dataRange.padding), a = i.dataRange, u.clear(), x = {}; var n = e("zrender/tool/color"), r = a.splitNumber <= 0 || a.calculable ? 100 : a.splitNumber; E = n.getGradientColors(a.color, Math.max((r - a.color.length) / (a.color.length - 1), 0) + 1); if (E.length > r) { var s = E.length, o = [E[0]], f = s / (r - 1); for (var l = 1; l < r - 1; l++)o.push(E[Math.floor(l * f)]); o.push(E[s - 1]), E = o } a.precision === 0 ? w = Math.round((a.max - a.min) / r) || 1 : (w = (a.max - a.min) / r, w = w.toFixed(a.precision) - 0), S = []; for (var l = 0; l < r; l++)x[l] = !0, S.unshift((l * w + a.min).toFixed(a.precision) + " - " + ((l + 1) * w + a.min).toFixed(a.precision)); g = {start: 100, end: 0}, T() } function W(e) { e && (i = e, i.dataRange = u.reformOption(i.dataRange), i.dataRange.padding = u.reformCssArray(i.dataRange.padding)), a = i.dataRange, a.range = { start: g.end, end: g.start }, u.clear(), T() } function X(e) { if (isNaN(e))return null; e < a.min ? e = a.min : e > a.max && (e = a.max); if (a.calculable)if (e > w * g.start + a.min || e < w * g.end + a.min)return null; var t = E.length - Math.ceil((e - a.min) / (a.max - a.min) * E.length); return t == E.length && t--, x[t] ? E[t] : null } var s = e("./base"); s.call(this, t, r); var o = e("zrender/tool/area"), u = this; u.type = t.COMPONENT_TYPE_DATARANGE; var a, f = u.getZlevelBase(), l = {}, c, h, p, d, v, m, g, y, b = 10, w, E, S, x = {}; u.init = z, u.refresh = W, u.getColor = X, u.ondragend = B, z(i) } return e("../util/shape/handlePolygon"), e("../component").define("dataRange", t), t }), define("echarts/component/tooltip", ["require", "./base", "../util/ecData", "zrender/config", "zrender/shape", "zrender/tool/event", "zrender/tool/area", "zrender/tool/color", "zrender/tool/util", "zrender/shape/base", "../component"], function (e) { function t(t, n, r, i, s, o) { function U(e) { if (!e)return ""; var t = []; if (e.transitionDuration) { var n = "left " + e.transitionDuration + "s," + "top " + e.transitionDuration + "s"; t.push("transition:" + n), t.push("-moz-transition:" + n), t.push("-webkit-transition:" + n), t.push("-o-transition:" + n) } e.backgroundColor && (t.push("background-Color:" + p.toHex(e.backgroundColor)), t.push("filter:alpha(opacity=70)"), t.push("background-Color:" + e.backgroundColor)), typeof e.borderWidth != "undefined" && t.push("border-width:" + e.borderWidth + "px"), typeof e.borderColor != "undefined" && t.push("border-color:" + e.borderColor), typeof e.borderRadius != "undefined" && (t.push("border-radius:" + e.borderRadius + "px"), t.push("-moz-border-radius:" + e.borderRadius + "px"), t.push("-webkit-border-radius:" + e.borderRadius + "px"), t.push("-o-border-radius:" + e.borderRadius + "px")); var r = e.textStyle; r && (r.color && t.push("color:" + r.color), r.decoration && t.push("text-decoration:" + r.decoration), r.align && t.push("text-align:" + r.align), r.fontFamily && t.push("font-family:" + r.fontFamily), r.fontSize && t.push("font-size:" + r.fontSize + "px"), r.fontSize && t.push("line-height:" + Math.round(r.fontSize * 3 / 2) + "px"), r.fontStyle && t.push("font-style:" + r.fontStyle), r.fontWeight && t.push("font-weight:" + r.fontWeight)); var i = e.padding; return typeof i != "undefined" && (i = g.reformCssArray(i), t.push("padding:" + i[0] + "px " + i[1] + "px " + i[2] + "px " + i[3] + "px")), t = t.join(";") + ";", t } function z() { N && (N.style.display = "none"); var e = !1; q.invisible || (q.invisible = !0, r.modShape(q.id, q), e = !0), R.invisible || (R.invisible = !0, r.modShape(R.id, R), e = !0), F && F.tipShape.length > 0 && (r.delShape(F.tipShape), F = !1), e && r.refresh() } function W(e, t, n) { var r = N.offsetHeight, i = N.offsetWidth; e + i > j && (e -= i + 40), t + r > B && (t -= r - 20), t < 20 && (t = 0), N.style.cssText = C + k + (n ? n : "") + "left:" + e + "px;top:" + t + "px;", (r < 10 || i < 10) && setTimeout(X, 20) } function X() { if (N) { var e = "", t = N.offsetHeight, n = N.offsetWidth; N.offsetLeft + n > j && (e += "left:" + (j - n - 20) + "px;"), N.offsetTop + t > B && (e += "top:" + (B - t - 10) + "px;"), e !== "" && (N.style.cssText += e) } } function V() { var e, t; if (!D) J() || $(); else { if (D._type == "island" && i.tooltip.show) { Y(); return } var n = a.get(D, "series"), r = a.get(D, "data"); e = g.deepQuery([r, n, i], "tooltip.show"), typeof n == "undefined" || typeof r == "undefined" || e === !1 ? (clearTimeout(A), clearTimeout(M), A = setTimeout(z, O)) : (t = g.deepQuery([r, n, i], "tooltip.trigger"), t == "axis" ? Q(n.xAxisIndex, n.yAxisIndex, a.get(D, "dataIndex")) : Y()) } } function $() { if (!E || !S) { A = setTimeout(z, O); return } var e = i.series, n, r; for (var s = 0, o = e.length; s < o; s++)if (g.deepQuery([e[s], i], "tooltip.trigger") == "axis") { n = e[s].xAxisIndex || 0, r = e[s].yAxisIndex || 0; if (E.getAxis(n) && E.getAxis(n).type == t.COMPONENT_TYPE_AXIS_CATEGORY) { Q(n, r, K("x", E.getAxis(n))); return } if (S.getAxis(r) && S.getAxis(r).type == t.COMPONENT_TYPE_AXIS_CATEGORY) { Q(n, r, K("y", S.getAxis(r))); return } } } function J() { if (!x)return !1; var e = c.getX(P), t = c.getY(P), n = x.getNearestIndex([e, t]), r; return n ? (r = n.valueIndex, n = n.polarIndex) : n = -1, n != -1 ? G(n, r) : !1 } function K(e, t) { var n = -1, r = c.getX(P), i = c.getY(P); if (e == "x") { var s, o, u = w.getXend(), a = t.getCoordByIndex(n); while (a < u) { a <= r && (s = a); if (a >= r)break; a = t.getCoordByIndex(++n), o = a } return r - s < o - r ? n -= n !== 0 ? 1 : 0 : typeof t.getNameByIndex(n) == "undefined" && (n -= 1), n } var f, l, h = w.getY(), a = t.getCoordByIndex(n); while (a > h) { a >= i && (l = a); if (a <= i)break; a = t.getCoordByIndex(++n), f = a } return i - f > l - i ? n -= n !== 0 ? 1 : 0 : typeof t.getNameByIndex(n) == "undefined" && (n -= 1), n } function Q(e, r, o) { !P.connectTrigger && n.dispatch(t.EVENT.TOOLTIP_IN_GRID, P); if (typeof E == "undefined" || typeof S == "undefined" || typeof e == "undefined" || typeof r == "undefined" || o < 0) { clearTimeout(A), clearTimeout(M), A = setTimeout(z, O); return } var u = i.series, a = [], f = [], l, h, p, d, v, m = ""; if (i.tooltip.trigger == "axis") { if (i.tooltip.show === !1)return; d = i.tooltip.formatter } if (e != -1 && E.getAxis(e).type == t.COMPONENT_TYPE_AXIS_CATEGORY) { l = E.getAxis(e); for (var y = 0, x = u.length; y < x; y++) { if (!at(u[y].name))continue; u[y].xAxisIndex == e && g.deepQuery([u[y], i], "tooltip.trigger") == "axis" && (v = g.query(u[y], "tooltip.showContent") || v, d = g.query(u[y], "tooltip.formatter") || d, m += U(g.query(u[y], "tooltip")), a.push(u[y]), f.push(y)) } n.dispatch(t.EVENT.TOOLTIP_HOVER, P, { seriesIndex: f, dataIndex: b.dataZoom ? b.dataZoom.getRealDataIndex(f, o) : o }), p = c.getY(P) + 10, h = g.subPixelOptimize(l.getCoordByIndex(o), I), Z(a, h, w.getY(), h, w.getYend(), l.getGap()), h += 10 } else if (r != -1 && S.getAxis(r).type == t.COMPONENT_TYPE_AXIS_CATEGORY) { l = S.getAxis(r); for (var y = 0, x = u.length; y < x; y++) { if (!at(u[y].name))continue; u[y].yAxisIndex == r && g.deepQuery([u[y], i], "tooltip.trigger") == "axis" && (v = g.query(u[y], "tooltip.showContent") || v, d = g.query(u[y], "tooltip.formatter") || d, m += U(g.query(u[y], "tooltip")), a.push(u[y]), f.push(y)) } n.dispatch(t.EVENT.TOOLTIP_HOVER, P, { seriesIndex: f, dataIndex: b.dataZoom ? b.dataZoom.getRealDataIndex(f, o) : o }), h = c.getX(P) + 10, p = g.subPixelOptimize(l.getCoordByIndex(o), I), Z(a, w.getX(), p, w.getXend(), p, l.getGap()), p += 10 } if (a.length > 0) { var T; if (typeof d == "function") { var C = []; for (var y = 0, x = a.length; y < x; y++)T = a[y].data[o], T = typeof T != "undefined" ? typeof T.value != "undefined" ? T.value : T : "-", C.push([a[y].name || "", l.getNameByIndex(o), T]); H = "axis:" + o, N.innerHTML = d(C, H, nt) } else if (typeof d == "string") { H = NaN, d = d.replace("{a}", "{a0}").replace("{b}", "{b0}").replace("{c}", "{c0}"); for (var y = 0, x = a.length; y < x; y++)d = d.replace("{a" + y + "}", vt(a[y].name || "")), d = d.replace("{b" + y + "}", vt(l.getNameByIndex(o))), T = a[y].data[o], T = typeof T != "undefined" ? typeof T.value != "undefined" ? T.value : T : "-", d = d.replace("{c" + y + "}", T instanceof Array ? T : g.numAddCommas(T)); N.innerHTML = d } else { H = NaN, d = vt(l.getNameByIndex(o)); for (var y = 0, x = a.length; y < x; y++)d += "
" + vt(a[y].name || "") + " : ", T = a[y].data[o], T = typeof T != "undefined" ? typeof T.value != "undefined" ? T.value : T : "-", d += T instanceof Array ? T : g.numAddCommas(T); N.innerHTML = d } if (v === !1 || !i.tooltip.showContent)return; g.hasAppend || (N.style.left = j / 2 + "px", N.style.top = B / 2 + "px", s.firstChild.appendChild(N), g.hasAppend = !0), W(h, p, m) } } function G(e, t) { if (typeof x == "undefined" || typeof e == "undefined" || typeof t == "undefined" || t < 0)return !1; var n = i.series, r = [], o, u, a = ""; if (i.tooltip.trigger == "axis") { if (i.tooltip.show === !1)return !1; o = i.tooltip.formatter } var f = i.polar[e].indicator[t].text; for (var l = 0, h = n.length; l < h; l++) { if (!at(n[l].name))continue; n[l].polarIndex == e && g.deepQuery([n[l], i], "tooltip.trigger") == "axis" && (u = g.query(n[l], "tooltip.showContent") || u, o = g.query(n[l], "tooltip.formatter") || o, a += U(g.query(n[l], "tooltip")), r.push(n[l])) } if (r.length > 0) { var p, d, v = []; for (var l = 0, h = r.length; l < h; l++) { p = r[l].data; for (var m = 0, y = p.length; m < y; m++) { d = p[m]; if (!at(d.name))continue; d = typeof d != "undefined" ? d : { name: "", value: {dataIndex: "-"} }, v.push([r[l].name || "", d.name, d.value[t], f]) } } if (v.length <= 0)return; if (typeof o == "function") H = "axis:" + t, N.innerHTML = o(v, H, nt); else if (typeof o == "string") { o = o.replace("{a}", "{a0}").replace("{b}", "{b0}").replace("{c}", "{c0}").replace("{d}", "{d0}"); for (var l = 0, h = v.length; l < h; l++)o = o.replace("{a" + l + "}", vt(v[l][0])), o = o.replace("{b" + l + "}", vt(v[l][1])), o = o.replace("{c" + l + "}", g.numAddCommas(v[l][2])), o = o.replace("{d" + l + "}", vt(v[l][3])); N.innerHTML = o } else { o = vt(v[0][1]) + "
" + vt(v[0][3]) + " : " + g.numAddCommas(v[0][2]); for (var l = 1, h = v.length; l < h; l++)o += "
" + vt(v[l][1]) + "
", o += vt(v[l][3]) + " : " + g.numAddCommas(v[l][2]); N.innerHTML = o } if (u === !1 || !i.tooltip.showContent)return; return g.hasAppend || (N.style.left = j / 2 + "px", N.style.top = B / 2 + "px", s.firstChild.appendChild(N), g.hasAppend = !0), W(c.getX(P), c.getY(P), a), !0 } } function Y() { var e = a.get(D, "series"), n = a.get(D, "data"), o = a.get(D, "name"), u = a.get(D, "value"), f = a.get(D, "special"), l = a.get(D, "special2"), h, p, d = "", v, m = ""; D._type != "island" ? (i.tooltip.trigger == "item" && (h = i.tooltip.formatter), g.query(e, "tooltip.trigger") == "item" && (p = g.query(e, "tooltip.showContent") || p, h = g.query(e, "tooltip.formatter") || h, d += U(g.query(e, "tooltip"))), p = g.query(n, "tooltip.showContent") || p, h = g.query(n, "tooltip.formatter") || h, d += U(g.query(n, "tooltip"))) : (p = g.deepQuery([n, e, i], "tooltip.showContent"), h = g.deepQuery([n, e, i], "tooltip.islandFormatter")); if (typeof h == "function") H = (e.name || "") + ":" + a.get(D, "dataIndex"), N.innerHTML = h([e.name || "", o, u, f, l], H, nt); else if (typeof h == "string") H = NaN, h = h.replace("{a}", "{a0}").replace("{b}", "{b0}").replace("{c}", "{c0}"), h = h.replace("{a0}", vt(e.name || "")).replace("{b0}", vt(o)).replace("{c0}", u instanceof Array ? u : g.numAddCommas(u)), h = h.replace("{d}", "{d0}").replace("{d0}", f || ""), h = h.replace("{e}", "{e0}").replace("{e0}", a.get(D, "special2") || ""), N.innerHTML = h; else { H = NaN; if (e.type == t.CHART_TYPE_SCATTER) N.innerHTML = (typeof e.name != "undefined" ? vt(e.name) + "
" : "") + (o === "" ? "" : vt(o) + " : ") + u + (typeof f == "undefined" ? "" : " (" + f + ")"); else if (e.type == t.CHART_TYPE_RADAR && f) { v = f, m += vt(o === "" ? e.name || "" : o), m += m === "" ? "" : "
"; for (var y = 0; y < v.length; y++)m += vt(v[y].text) + " : " + g.numAddCommas(u[y]) + "
"; N.innerHTML = m } else if (e.type == t.CHART_TYPE_CHORD)if (typeof l == "undefined") N.innerHTML = vt(o) + " (" + g.numAddCommas(u) + ")"; else { var b = vt(o), w = vt(f); N.innerHTML = (typeof e.name != "undefined" ? vt(e.name) + "
" : "") + b + " -> " + w + " (" + g.numAddCommas(u) + ")" + "
" + w + " -> " + b + " (" + g.numAddCommas(l) + ")" } else N.innerHTML = (typeof e.name != "undefined" ? vt(e.name) + "
" : "") + vt(o) + " : " + g.numAddCommas(u) + (typeof f == "undefined" ? "" : " (" + g.numAddCommas(f) + ")") } q.invisible || (q.invisible = !0, r.modShape(q.id, q), r.refresh()); if (p === !1 || !i.tooltip.showContent)return; g.hasAppend || (N.style.left = j / 2 + "px", N.style.top = B / 2 + "px", s.firstChild.appendChild(N), g.hasAppend = !0), W(c.getX(P) + 20, c.getY(P) - 20, d) } function Z(e, t, n, s, o, u) { if (e.length > 0) { var a, f, l = i.tooltip.axisPointer, c = l.type, h = l.lineStyle.color, p = l.lineStyle.width, d = l.lineStyle.type, v = l.areaStyle.size, m = l.areaStyle.color; for (var y = 0, b = e.length; y < b; y++)g.deepQuery([e[y], i], "tooltip.trigger") == "axis" && (a = e[y], f = g.query(a, "tooltip.axisPointer.type"), c = f || c, f == "line" ? (h = g.query(a, "tooltip.axisPointer.lineStyle.color") || h, p = g.query(a, "tooltip.axisPointer.lineStyle.width") || p, d = g.query(a, "tooltip.axisPointer.lineStyle.type") || d) : f == "shadow" && (v = g.query(a, "tooltip.axisPointer.areaStyle.size") || v, m = g.query(a, "tooltip.axisPointer.areaStyle.color") || m)); c == "line" ? (q.style = { xStart: t, yStart: n, xEnd: s, yEnd: o, strokeColor: h, lineWidth: p, lineType: d }, q.invisible = !1, r.modShape(q.id, q)) : c == "shadow" && (typeof v == "undefined" || v == "auto" || isNaN(v) ? p = u : p = v, t == s ? Math.abs(w.getX() - t) < 2 ? (p /= 2, t = s += p / 2) : Math.abs(w.getXend() - t) < 2 && (p /= 2, t = s -= p / 2) : n == o && (Math.abs(w.getY() - n) < 2 ? (p /= 2, n = o += p / 2) : Math.abs(w.getYend() - n) < 2 && (p /= 2, n = o -= p / 2)), R.style = { xStart: t, yStart: n, xEnd: s, yEnd: o, strokeColor: m, lineWidth: p }, R.invisible = !1, r.modShape(R.id, R)), r.refresh() } } function et(e) { clearTimeout(A), clearTimeout(M); var r = e.target, s = c.getX(e.event), o = c.getY(e.event); if (!r) D = !1, P = e.event, P._target = P.target || P.toElement, P.zrenderX = s, P.zrenderY = o, L && w && h.isInside(m, w.getArea(), s, o) ? M = setTimeout(V, _) : L && x && x.isInside([s, o]) != -1 ? M = setTimeout(V, _) : (!P.connectTrigger && n.dispatch(t.EVENT.TOOLTIP_OUT_GRID, P), A = setTimeout(z, O)); else { D = r, P = e.event, P._target = P.target || P.toElement, P.zrenderX = s, P.zrenderY = o; var u; if (L && x && (u = x.isInside([s, o])) != -1) { var a = i.series; for (var f = 0, l = a.length; f < l; f++)if (a[f].polarIndex == u && g.deepQuery([a[f], i], "tooltip.trigger") == "axis") { D = null; break } } M = setTimeout(V, _) } } function tt() { clearTimeout(A), clearTimeout(M), A = setTimeout(z, O) } function nt(e, t) { if (!N)return; e == H && (N.innerHTML = t), setTimeout(X, 20) } function rt() { b = o.component, w = b.grid, E = b.xAxis, S = b.yAxis, x = b.polar } function it(e, t) { if (!F || F && F.dataIndex != e.dataIndex) { F && F.tipShape.length > 0 && r.delShape(F.tipShape); for (var n = 0, i = t.length; n < i; n++)t[n].id = r.newShapeId("tooltip"), t[n].zlevel = y, t[n].style = v.getHighlightStyle(t[n].style, t[n].highlightStyle), t[n].draggable = !1, t[n].hoverable = !1, t[n].clickable = !1, t[n].ondragend = null, t[n].ondragover = null, t[n].ondrop = null, r.addShape(t[n]); F = {dataIndex: e.dataIndex, tipShape: t} } } function st() { z() } function ot(e) { T = e.selected } function ut() { i.legend && i.legend.selected ? T = i.legend.selected : T = {} } function at(e) { return typeof T[e] != "undefined" ? T[e] : !0 } function ft(e) { if (!e)return; var n, s = i.series; if (typeof e.seriesIndex != "undefined") n = e.seriesIndex; else { var u = e.seriesName; for (var l = 0, c = s.length; l < c; l++)if (s[l].name == u) { n = l; break } } var h = s[n]; if (typeof h == "undefined")return; var p = o.chart[h.type], d = g.deepQuery([h, i], "tooltip.trigger") == "axis"; if (!p)return; if (d) { var v = e.dataIndex; switch (p.type) { case t.CHART_TYPE_LINE: case t.CHART_TYPE_BAR: case t.CHART_TYPE_K: if (typeof E == "undefined" || typeof S == "undefined" || h.data.length <= v)return; var m = h.xAxisIndex || 0, y = h.yAxisIndex || 0; E.getAxis(m).type == t.COMPONENT_TYPE_AXIS_CATEGORY ? P = { zrenderX: E.getAxis(m).getCoordByIndex(v), zrenderY: w.getY() + (w.getYend() - w.getY()) / 4 } : P = { zrenderX: w.getX() + (w.getXend() - w.getX()) / 4, zrenderY: S.getAxis(y).getCoordByIndex(v) }, Q(m, y, v); break; case t.CHART_TYPE_RADAR: if (typeof x == "undefined" || h.data[0].value.length <= v)return; var b = h.polarIndex || 0, T = x.getVector(b, v, "max"); P = {zrenderX: T[0], zrenderY: T[1]}, G(b, v) } } else { var N = p.shapeList, C, k; switch (p.type) { case t.CHART_TYPE_LINE: case t.CHART_TYPE_BAR: case t.CHART_TYPE_K: case t.CHART_TYPE_SCATTER: var v = e.dataIndex; for (var l = 0, c = N.length; l < c; l++)if (a.get(N[l], "seriesIndex") == n && a.get(N[l], "dataIndex") == v) { D = N[l], C = N[l].style.x, k = p.type != t.CHART_TYPE_K ? N[l].style.y : N[l].style.y[0]; break } break; case t.CHART_TYPE_RADAR: var v = e.dataIndex; for (var l = 0, c = N.length; l < c; l++)if (N[l].shape == "polygon" && a.get(N[l], "seriesIndex") == n && a.get(N[l], "dataIndex") == v) { D = N[l]; var T = x.getCenter(h.polarIndex || 0); C = T[0], k = T[1]; break } break; case t.CHART_TYPE_PIE: var L = e.name; for (var l = 0, c = N.length; l < c; l++)if (N[l].shape == "sector" && a.get(N[l], "seriesIndex") == n && a.get(N[l], "name") == L) { D = N[l]; var A = D.style, O = (A.startAngle + A.endAngle) / 2 * Math.PI / 180; C = D.style.x + Math.cos(O) * A.r / 1.5, k = D.style.y - Math.sin(O) * A.r / 1.5; break } break; case t.CHART_TYPE_MAP: var L = e.name, M = h.mapType; for (var l = 0, c = N.length; l < c; l++)if (N[l].shape == "text" && N[l]._mapType == M && N[l].style._text == L) { D = N[l], C = D.style.x + D.position[0], k = D.style.y + D.position[1]; break } break; case t.CHART_TYPE_CHORD: var L = e.name; for (var l = 0, c = N.length; l < c; l++)if (N[l].shape == "sector" && a.get(N[l], "name") == L) { D = N[l]; var A = D.style, O = (A.startAngle + A.endAngle) / 2 * Math.PI / 180; C = D.style.x + Math.cos(O) * (A.r - 2), k = D.style.y - Math.sin(O) * (A.r - 2), r.trigger(f.EVENT.MOUSEMOVE, { zrenderX: C, zrenderY: k }); return } break; case t.CHART_TYPE_FORCE: var L = e.name; for (var l = 0, c = N.length; l < c; l++)if (N[l].shape == "circle" && a.get(N[l], "name") == L) { D = N[l], C = D.position[0], k = D.position[1]; break } } typeof C != "undefined" && typeof k != "undefined" && (P = { zrenderX: C, zrenderY: k }, r.addHoverShape(D), r.refreshHover(), Y()) } } function lt() { z() } function ct(e, n) { i = e, s = n, i.tooltip = g.reformOption(i.tooltip), i.tooltip.textStyle = d.merge(i.tooltip.textStyle, t.textStyle, { overwrite: !1, recursive: !0 }), i.tooltip.padding = g.reformCssArray(i.tooltip.padding), L = !1, i.tooltip.trigger == "axis" && (L = !0); var r = i.series; for (var o = 0, u = r.length; o < u; o++)if (g.query(r[o], "tooltip.trigger") == "axis") { L = !0; break } _ = i.tooltip.showDelay, O = i.tooltip.hideDelay, k = U(i.tooltip), N.style.position = "absolute", g.hasAppend = !1, ut(), I = i.tooltip.axisPointer.lineStyle.width } function ht(e) { e && (i = e, i.tooltip = g.reformOption(i.tooltip), i.tooltip.textStyle = d.merge(i.tooltip.textStyle, t.textStyle, { overwrite: !1, recursive: !0 }), i.tooltip.padding = g.reformCssArray(i.tooltip.padding), ut(), I = i.tooltip.axisPointer.lineStyle.width) } function pt() { B = r.getHeight(), j = r.getWidth() } function dt() { clearTimeout(A), clearTimeout(M), r.un(f.EVENT.MOUSEMOVE, et), r.un(f.EVENT.GLOBALOUT, tt), g.hasAppend && s.firstChild.removeChild(N), N = null, g.shapeList = null, g = null } function vt(e) { return String(e).replace(/&/g, "&").replace(//g, ">").replace(/"/g, """).replace(/'/g, "'") } var u = e("./base"); u.call(this, t, r); var a = e("../util/ecData"), f = e("zrender/config"), l = e("zrender/shape"), c = e("zrender/tool/event"), h = e("zrender/tool/area"), p = e("zrender/tool/color"), d = e("zrender/tool/util"), v = e("zrender/shape/base"), m = l.get("rectangle"), g = this; g.type = t.COMPONENT_TYPE_TOOLTIP; var y = g.getZlevelBase(), b = {}, w, E, S, x, T = {}, N = document.createElement("div"), C = "position:absolute;display:block;border-style:solid;white-space:nowrap;", k, L, A, O, M, _, D, P, H, B = r.getHeight(), j = r.getWidth(), F = !1, I = 0, q = {shape: "line", id: r.newShapeId("tooltip"), zlevel: y, invisible: !0, hoverable: !1, style: {}}, R = {shape: "line", id: r.newShapeId("tooltip"), zlevel: 1, invisible: !0, hoverable: !1, style: {}}; r.addShape(q), r.addShape(R), r.on(f.EVENT.MOUSEMOVE, et), r.on(f.EVENT.GLOBALOUT, tt), g.dispose = dt, g.init = ct, g.refresh = ht, g.resize = pt, g.setComponent = rt, g.ontooltipHover = it, g.ondragend = st, g.onlegendSelected = ot, g.showTip = ft, g.hideTip = lt, ct(i, s) } return e("../component").define("tooltip", t), t }), define("echarts/component/toolbox", ["require", "./base", "zrender/config", "zrender/tool/util", "zrender/tool/event", "zrender/tool/env", "../component", "../component"], function (e) { function t(t, n, r, i, s) { function B() { y = []; var e = l.toolbox.feature, t = []; for (var n in e)if (e[n].show)switch (n) { case"mark": t.push({key: n, name: "mark"}), t.push({key: n, name: "markUndo"}), t.push({ key: n, name: "markClear" }); break; case"magicType": for (var i = 0, s = e[n].type.length; i < s; i++)e[n].title[e[n].type[i] + "Chart"] = e[n].title[e[n].type[i]], t.push({ key: n, name: e[n].type[i] + "Chart" }); break; case"dataZoom": t.push({key: n, name: "dataZoom"}), t.push({key: n, name: "dataZoomReset"}); break; case"saveAsImage": p && t.push({key: n, name: "saveAsImage"}); break; default: t.push({key: n, name: n}) } if (t.length > 0) { var o, n; for (var i = 0, s = t.length; i < s; i++)o = t[i].name, n = t[i].key, y.push(o), E[o] = e[n].title[o] || e[n].title, e[n].icon && (S[o] = e[n].icon[o] || e[n].icon), e[n].color && (x[o] = e[n].color[o] || e[n].color); w = I(), F(), j(); for (var i = 0, s = h.shapeList.length; i < s; i++)h.shapeList[i].id = r.newShapeId(h.type), r.addShape(h.shapeList[i]); b.mark && (G(b.markUndo), G(b.markClear)), b.dataZoomReset && _.length === 0 && G(b.dataZoomReset) } } function j() { var s = l.toolbox, o = y.length, u = w.x, a = w.y, f = s.itemSize, c = s.itemGap, p, m = s.color instanceof Array ? s.color : [s.color], g = h.getFont(s.textStyle), N, C, k; s.orient == "horizontal" ? (N = w.y / r.getHeight() < .5 ? "bottom" : "top", C = w.x / r.getWidth() < .5 ? "left" : "right", k = w.y / r.getHeight() < .5 ? "top" : "bottom") : N = w.x / r.getWidth() < .5 ? "right" : "left", b = {}; for (var L = 0; L < o; L++) { p = { shape: "icon", zlevel: d, style: { x: u, y: a, width: f, height: f, iconType: y[L], lineWidth: 1, strokeColor: x[y[L]] || m[L % m.length], brushType: "stroke" }, highlightStyle: { lineWidth: 2, text: s.showTitle ? E[y[L]] : undefined, textFont: g, textPosition: N, strokeColor: x[y[L]] || m[L % m.length] }, hoverable: !0, clickable: !0 }, S[y[L]] && (p.style.image = S[y[L]].replace(new RegExp("^image:\\/\\/"), ""), p.style.opacity = .8, p.highlightStyle.opacity = 1, p.shape = "image"), s.orient == "horizontal" && (L === 0 && C == "left" && (p.highlightStyle.textPosition = "specific", p.highlightStyle.textAlign = C, p.highlightStyle.textBaseline = k, p.highlightStyle.textX = u, p.highlightStyle.textY = k == "top" ? a + f + 10 : a - 10), L == o - 1 && C == "right" && (p.highlightStyle.textPosition = "specific", p.highlightStyle.textAlign = C, p.highlightStyle.textBaseline = k, p.highlightStyle.textX = u + f, p.highlightStyle.textY = k == "top" ? a + f + 10 : a - 10)); switch (y[L]) { case"mark": p.onclick = q; break; case"markUndo": p.onclick = V; break; case"markClear": p.onclick = $; break; case"dataZoom": p.onclick = R; break; case"dataZoomReset": p.onclick = J; break; case"dataView": if (!D) { var A = e("../component"), O = A.get("dataView"); D = new O(t, n, r, l, i) } p.onclick = Z; break; case"restore": p.onclick = et; break; case"saveAsImage": p.onclick = tt; break; default: y[L].match("Chart") ? (p._name = y[L].replace("Chart", ""), v[p._name] && (p.style.strokeColor = T), p.onclick = nt) : p.onclick = it } h.shapeList.push(p), b[y[L]] = p, s.orient == "horizontal" ? u += f + c : a += f + c } } function F() { var e = l.toolbox, t = e.padding[0], n = e.padding[1], r = e.padding[2], i = e.padding[3]; h.shapeList.push({ shape: "rectangle", zlevel: d, hoverable: !1, style: { x: w.x - i, y: w.y - t, width: w.width + i + n, height: w.height + t + r, brushType: e.borderWidth === 0 ? "fill" : "both", color: e.backgroundColor, strokeColor: e.borderColor, lineWidth: e.borderWidth } }) } function I() { var e = l.toolbox, t = y.length, n = e.itemGap, i = e.itemSize, s = 0, o = 0; e.orient == "horizontal" ? (s = (i + n) * t - n, o = i) : (o = (i + n) * t - n, s = i); var u, a = r.getWidth(); switch (e.x) { case"center": u = Math.floor((a - s) / 2); break; case"left": u = e.padding[3] + e.borderWidth; break; case"right": u = a - s - e.padding[1] - e.borderWidth; break; default: u = e.x - 0, u = isNaN(u) ? 0 : u } var f, c = r.getHeight(); switch (e.y) { case"top": f = e.padding[0] + e.borderWidth; break; case"bottom": f = c - o - e.padding[2] - e.borderWidth; break; case"center": f = Math.floor((c - o) / 2); break; default: f = e.y - 0, f = isNaN(f) ? 0 : f } return {x: u, y: f, width: s, height: o} } function q(e) { var t = e.target; return k || C ? (K(), r.refresh()) : (Q(), r.modShape(t.id, {style: {strokeColor: T}}), r.refresh(), C = !0, setTimeout(function () { r && r.on(u.EVENT.CLICK, X) && r.on(u.EVENT.MOUSEMOVE, U) }, 10)), !0 } function R(e) { var t = e.target; return O || A ? (Q(), r.refresh(), i.style.cursor = "default") : (K(), r.modShape(t.id, {style: {strokeColor: T}}), r.refresh(), A = !0, setTimeout(function () { r && r.on(u.EVENT.MOUSEDOWN, z) && r.on(u.EVENT.MOUSEUP, W) && r.on(u.EVENT.MOUSEMOVE, U) }, 10), i.style.cursor = "crosshair"), !0 } function U(e) { k && (L.style.xEnd = f.getX(e.event), L.style.yEnd = f.getY(e.event), r.addHoverShape(L)), O && (M.style.width = f.getX(e.event) - M.style.x, M.style.height = f.getY(e.event) - M.style.y, r.addHoverShape(M), i.style.cursor = "crosshair"), A && i.style.cursor != "pointer" && i.style.cursor != "move" && (i.style.cursor = "crosshair") } function z(e) { if (e.target)return; O = !0; var n = f.getX(e.event), i = f.getY(e.event), s = l.dataZoom || {}; return M = { shape: "rectangle", id: r.newShapeId("zoom"), zlevel: d, style: {x: n, y: i, width: 1, height: 1, brushType: "both"}, highlightStyle: { lineWidth: 2, color: s.fillerColor || t.dataZoom.fillerColor, strokeColor: s.handleColor || t.dataZoom.handleColor, brushType: "both" } }, r.addHoverShape(M), !0 } function W() { if (!M || Math.abs(M.style.width) < 10 || Math.abs(M.style.height) < 10)return O = !1, !0; if (O && c.dataZoom) { O = !1; var e = c.dataZoom.rectZoom(M.style); e && (_.push({ start: e.start, end: e.end, start2: e.start2, end2: e.end2 }), Y(b.dataZoomReset), r.refresh()) } return !0 } function X(e) { if (k) k = !1, h.shapeList.push(L), Y(b.markUndo), Y(b.markClear), r.addShape(L), r.refresh(); else if (C) { k = !0; var t = f.getX(e.event), n = f.getY(e.event); L = { shape: "line", id: r.newShapeId("mark"), zlevel: d, style: { xStart: t, yStart: n, xEnd: t, yEnd: n, lineWidth: h.query(l, "toolbox.feature.mark.lineStyle.width"), strokeColor: h.query(l, "toolbox.feature.mark.lineStyle.color"), lineType: h.query(l, "toolbox.feature.mark.lineStyle.type") } }, r.addHoverShape(L) } } function V() { if (k) k = !1; else { var e = h.shapeList.length - 1; y.length == e - 1 && (G(b.markUndo), G(b.markClear)); if (y.length < e) { var t = h.shapeList[h.shapeList.length - 1]; r.delShape(t.id), r.refresh(), h.shapeList.pop() } } return !0 } function $() { k && (k = !1); var e = h.shapeList.length - y.length - 1, t = !1; while (e--)r.delShape(h.shapeList.pop().id), t = !0; return t && (G(b.markUndo), G(b.markClear), r.refresh()), !0 } function J() { return O && (O = !1), _.pop(), _.length > 0 ? c.dataZoom.absoluteZoom(_[_.length - 1]) : (c.dataZoom.rectZoom(), G(b.dataZoomReset), r.refresh()), !0 } function K() { k = !1, C && (C = !1, b.mark && r.modShape(b.mark.id, {style: {strokeColor: b.mark.highlightStyle.strokeColor}}), r.un(u.EVENT.CLICK, X), r.un(u.EVENT.MOUSEMOVE, U)) } function Q() { O = !1, A && (A = !1, b.dataZoom && r.modShape(b.dataZoom.id, {style: {strokeColor: b.dataZoom.highlightStyle.strokeColor}}), r.un(u.EVENT.MOUSEDOWN, z), r.un(u.EVENT.MOUSEUP, W), r.un(u.EVENT.MOUSEMOVE, U)) } function G(e) { e.shape != "image" ? r.modShape(e.id, { hoverable: !1, clickable: !1, style: {strokeColor: N} }) : r.modShape(e.id, {hoverable: !1, clickable: !1, style: {opacity: .3}}) } function Y(e) { e.shape != "image" ? r.modShape(e.id, { hoverable: !0, clickable: !0, style: {strokeColor: e.highlightStyle.strokeColor} }) : r.modShape(e.id, {hoverable: !0, clickable: !0, style: {opacity: .8}}) } function Z() { return D.show(l), !0 } function et() { return K(), Q(), n.dispatch(t.EVENT.RESTORE), !0 } function tt() { var e = l.toolbox.feature.saveAsImage, t = e.type || "png"; t != "png" && t != "jpeg" && (t = "png"); var n; s.isConnected() ? n = s.getConnectedDataURL(t) : n = r.toDataURL("image/" + t, l.backgroundColor && l.backgroundColor.replace(" ", "") == "rgba(0,0,0,0)" ? "#fff" : l.backgroundColor); var i = document.createElement("div"); i.id = "__echarts_download_wrap__", i.style.cssText = "position:fixed;z-index:99999;display:block;top:0;left:0;background-color:rgba(33,33,33,0.5);text-align:center;width:100%;height:100%;line-height:" + document.documentElement.clientHeight + "px;"; var o = document.createElement("a"); o.href = n, o.setAttribute("download", (e.name ? e.name : l.title && (l.title.text || l.title.subtext) ? l.title.text || l.title.subtext : "ECharts") + "." + t), o.innerHTML = '图片另存为") + '"/>', i.appendChild(o), document.body.appendChild(i), o = null, i = null, setTimeout(function () { var e = document.getElementById("__echarts_download_wrap__"); e && (e.onclick = function () { var e = document.getElementById("__echarts_download_wrap__"); e.onclick = null, e.innerHTML = "", document.body.removeChild(e), e = null }, e = null) }, 500); return } function nt(e) { K(); var r = e.target._name; return v[r] ? v[r] = !1 : (v[r] = !0, r == t.CHART_TYPE_LINE ? v[t.CHART_TYPE_BAR] = !1 : r == t.CHART_TYPE_BAR && (v[t.CHART_TYPE_LINE] = !1), r == P ? v[H] = !1 : r == H && (v[P] = !1)), n.dispatch(t.EVENT.MAGIC_TYPE_CHANGED, e.event, {magicType: v}), !0 } function rt(e) { K(), v = e, !g && n.dispatch(t.EVENT.MAGIC_TYPE_CHANGED, null, {magicType: v}) } function it(e) { var t = e.target.style.iconType, n = l.toolbox.feature[t].onclick; typeof n == "function" && n(l) } function st(e) { if (h.query(e, "toolbox.show") && h.query(e, "toolbox.feature.magicType.show")) { var t = e.toolbox.feature.magicType.type, n = t.length; m = {}; while (n--)m[t[n]] = !0; n = e.series.length; var r, i; while (n--) { r = e.series[n].type, m[r] && (i = e.xAxis instanceof Array ? e.xAxis[e.series[n].xAxisIndex || 0] : e.xAxis, i && (i.type || "category") == "category" && (i.__boundaryGap = typeof i.boundaryGap != "undefined" ? i.boundaryGap : !0), i = e.yAxis instanceof Array ? e.yAxis[e.series[n].yAxisIndex || 0] : e.yAxis, i && i.type == "category" && (i.__boundaryGap = typeof i.boundaryGap != "undefined" ? i.boundaryGap : !0), e.series[n].__type = r, e.series[n].__itemStyle = e.series[n].itemStyle ? a.clone(e.series[n].itemStyle) : {}); if (m[P] || m[H]) e.series[n].__stack = e.series[n].stack } } v = {}; var s = e.dataZoom; if (s && s.show) { var o = typeof s.start != "undefined" && s.start >= 0 && s.start <= 100 ? s.start : 0, u = typeof s.end != "undefined" && s.end >= 0 && s.end <= 100 ? s.end : 100; o > u && (o += u, u = o - u, o -= u), _ = [{start: o, end: u, start2: 0, end2: 100}] } else _ = [] } function ot() { var e; if (v[t.CHART_TYPE_LINE] || v[t.CHART_TYPE_BAR]) { var n = v[t.CHART_TYPE_LINE] ? !1 : !0; for (var r = 0, i = l.series.length; r < i; r++)m[l.series[r].type] && (l.series[r].type = v[t.CHART_TYPE_LINE] ? t.CHART_TYPE_LINE : t.CHART_TYPE_BAR, l.series[r].itemStyle = a.clone(l.series[r].__itemStyle), e = l.xAxis instanceof Array ? l.xAxis[l.series[r].xAxisIndex || 0] : l.xAxis, e && (e.type || "category") == "category" && (e.boundaryGap = n ? !0 : e.__boundaryGap), e = l.yAxis instanceof Array ? l.yAxis[l.series[r].yAxisIndex || 0] : l.yAxis, e && e.type == "category" && (e.boundaryGap = n ? !0 : e.__boundaryGap)) } else for (var r = 0, i = l.series.length; r < i; r++)m[l.series[r].type] && (l.series[r].type = l.series[r].__type, l.series[r].itemStyle = l.series[r].__itemStyle, e = l.xAxis instanceof Array ? l.xAxis[l.series[r].xAxisIndex || 0] : l.xAxis, e && (e.type || "category") == "category" && (e.boundaryGap = e.__boundaryGap), e = l.yAxis instanceof Array ? l.yAxis[l.series[r].yAxisIndex || 0] : l.yAxis, e && e.type == "category" && (e.boundaryGap = e.__boundaryGap)); if (v[P] || v[H])for (var r = 0, i = l.series.length; r < i; r++)v[P] ? l.series[r].stack = "_ECHARTS_STACK_KENER_2014_" : v[H] && (l.series[r].stack = null); else for (var r = 0, i = l.series.length; r < i; r++)l.series[r].stack = l.series[r].__stack; return l } function ut(e) { g = e } function at(e, t) { K(), Q(), e.toolbox = h.reformOption(e.toolbox), e.toolbox.padding = h.reformCssArray(e.toolbox.padding), l = e, c = t, h.shapeList = [], e.toolbox.show && B(), lt() } function ft() { K(), h.clear(), l && l.toolbox && l.toolbox.show && B(), D && D.resize() } function lt() { D && D.hide() } function ct() { D && (D.dispose(), D = null), h.clear(), h.shapeList = null, h = null } function ht(e) { e && (e.toolbox = h.reformOption(e.toolbox), e.toolbox.padding = h.reformCssArray(e.toolbox.padding), l = e) } var o = e("./base"); o.call(this, t, r); var u = e("zrender/config"), a = e("zrender/tool/util"), f = e("zrender/tool/event"), l, c, h = this; h.type = t.COMPONENT_TYPE_TOOLBOX; var p = e("zrender/tool/env").canvasSupported, d = h.getZlevelBase(), v = {}, m, g = !1, y, b = {}, w, E = {}, S = {}, x = {}, T = "red", N = "#ccc", C, k, L, A, O, M, _, D, P = "stack", H = "tiled"; h.dispose = ct, h.render = at, h.resize = ft, h.hideDataView = lt, h.getMagicOption = ot, h.silence = ut, h.setMagicType = rt, h.reset = st, h.refresh = ht } return e("../component").define("toolbox", t), t }), define("echarts/component/dataView", ["require", "./base", "zrender/tool/env", "../component"], function (e) { function t(t, n, r, i, s) { function w() { m = "width:" + b + "px;" + "height:" + 0 + "px;" + "background-color:#f0ffff;", l.style.cssText = v + m, s.onselectstart = function () { return !1 } } function E(e) { d = !0; var t = u.query(i, "toolbox.feature.dataView.lang") || a; i = e, l.innerHTML = '

' + (t[0] || a[0]) + "

", c.style.cssText = "display:block;margin:0 0 8px 0;padding:4px 6px;overflow:auto;width:" + (b - 15) + "px;" + "height:" + (y - 100) + "px;"; var n = u.query(i, "toolbox.feature.dataView.optionToContent"); typeof n != "function" ? c.value = S() : c.value = n(i), l.appendChild(c), p.style.cssText = "float:right;padding:1px 6px;", p.innerHTML = t[1] || a[1], p.onclick = w, l.appendChild(p), u.query(i, "toolbox.feature.dataView.readOnly") === !1 ? (h.style.cssText = "float:right;margin-right:10px;padding:1px 6px;", h.innerHTML = t[2] || a[2], h.onclick = x, l.appendChild(h), c.readOnly = !1, c.style.cursor = "default") : (c.readOnly = !0, c.style.cursor = "text"), m = "width:" + b + "px;" + "height:" + y + "px;" + "background-color:#fff;", l.style.cssText = v + m, s.onselectstart = function () { return !0 } } function S() { var e, n, r, s, o, u, a = [], f = ""; if (i.xAxis) { i.xAxis instanceof Array ? a = i.xAxis : a = [i.xAxis]; for (e = 0, s = a.length; e < s; e++)if ((a[e].type || "category") == "category") { u = []; for (n = 0, r = a[e].data.length; n < r; n++)o = a[e].data[n], u.push(typeof o.value != "undefined" ? o.value : o); f += u.join(", ") + "\n\n" } } if (i.yAxis) { i.yAxis instanceof Array ? a = i.yAxis : a = [i.yAxis]; for (e = 0, s = a.length; e < s; e++)if (a[e].type == "category") { u = []; for (n = 0, r = a[e].data.length; n < r; n++)o = a[e].data[n], u.push(typeof o.value != "undefined" ? o.value : o); f += u.join(", ") + "\n\n" } } var l = i.series, c; for (e = 0, s = l.length; e < s; e++) { u = []; for (n = 0, r = l[e].data.length; n < r; n++)o = l[e].data[n], l[e].type == t.CHART_TYPE_PIE || l[e].type == t.CHART_TYPE_MAP ? c = (o.name || "-") + ":" : c = "", l[e].type == t.CHART_TYPE_SCATTER && (o = typeof o.value != "undefined" ? o.value : o, o = o.join(", ")), u.push(c + (typeof o.value != "undefined" ? o.value : o)); f += (l[e].name || "-") + " : \n", f += u.join(l[e].type == t.CHART_TYPE_SCATTER ? "\n" : ", "), f += "\n\n" } return f } function x() { var e = c.value, r = u.query(i, "toolbox.feature.dataView.contentToOption"); if (typeof r != "function") { e = e.split("\n"); var s = []; for (var o = 0, a = e.length; o < a; o++)e[o] = N(e[o]), e[o] !== "" && s.push(e[o]); T(s) } else r(e, i); w(), setTimeout(function () { n && n.dispatch(t.EVENT.DATA_VIEW_CHANGED, null, {option: i}) }, f ? 800 : 100) } function T(e) { var n, r, s, o, u, a = [], f = 0, l, c; if (i.xAxis) { i.xAxis instanceof Array ? a = i.xAxis : a = [i.xAxis]; for (n = 0, o = a.length; n < o; n++)if ((a[n].type || "category") == "category") { l = e[f].split(","); for (r = 0, s = a[n].data.length; r < s; r++)c = N(l[r] || ""), u = a[n].data[r], typeof a[n].data[r].value != "undefined" ? a[n].data[r].value = c : a[n].data[r] = c; f++ } } if (i.yAxis) { i.yAxis instanceof Array ? a = i.yAxis : a = [i.yAxis]; for (n = 0, o = a.length; n < o; n++)if (a[n].type == "category") { l = e[f].split(","); for (r = 0, s = a[n].data.length; r < s; r++)c = N(l[r] || ""), u = a[n].data[r], typeof a[n].data[r].value != "undefined" ? a[n].data[r].value = c : a[n].data[r] = c; f++ } } var h = i.series; for (n = 0, o = h.length; n < o; n++) { f++; if (h[n].type == t.CHART_TYPE_SCATTER)for (var r = 0, s = h[n].data.length; r < s; r++)l = e[f], c = l.replace(" ", "").split(","), typeof h[n].data[r].value != "undefined" ? h[n].data[r].value = c : h[n].data[r] = c, f++; else { l = e[f].split(","); for (var r = 0, s = h[n].data.length; r < s; r++)c = (l[r] || "").replace(/.*:/, ""), c = N(c), c = c != "-" && c !== "" ? c - 0 : "-", typeof h[n].data[r].value != "undefined" ? h[n].data[r].value = c : h[n].data[r] = c; f++ } } } function N(e) { var t = new RegExp("(^[\\s\\t\\xa0\\u3000]+)|([\\u3000\\xa0\\s\\t]+$)", "g"); return e.replace(t, "") } function C(e) { e = e || window.event, e.stopPropagation ? e.stopPropagation() : e.cancelBubble = !0 } function k() { l.className = g, w(), s.firstChild.appendChild(l), window.addEventListener ? (l.addEventListener("click", C), l.addEventListener("mousewheel", C), l.addEventListener("mousemove", C), l.addEventListener("mousedown", C), l.addEventListener("mouseup", C), l.addEventListener("touchstart", C), l.addEventListener("touchmove", C), l.addEventListener("touchend", C)) : (l.attachEvent("onclick", C), l.attachEvent("onmousewheel", C), l.attachEvent("onmousemove", C), l.attachEvent("onmousedown", C), l.attachEvent("onmouseup", C)) } function L() { y = r.getHeight(), b = r.getWidth(), l.offsetHeight > 10 && (m = "width:" + b + "px;" + "height:" + y + "px;" + "background-color:#fff;", l.style.cssText = v + m, c.style.cssText = "display:block;margin:0 0 8px 0;padding:4px 6px;overflow:auto;width:" + (b - 15) + "px;" + "height:" + (y - 100) + "px;") } function A() { window.removeEventListener ? (l.removeEventListener("click", C), l.removeEventListener("mousewheel", C), l.removeEventListener("mousemove", C), l.removeEventListener("mousedown", C), l.removeEventListener("mouseup", C), l.removeEventListener("touchstart", C), l.removeEventListener("touchmove", C), l.removeEventListener("touchend", C)) : (l.detachEvent("onclick", C), l.detachEvent("onmousewheel", C), l.detachEvent("onmousemove", C), l.detachEvent("onmousedown", C), l.detachEvent("onmouseup", C)), h.onclick = null, p.onclick = null, d && (l.removeChild(c), l.removeChild(h), l.removeChild(p)), c = null, h = null, p = null, s.firstChild.removeChild(l), l = null, u = null } var o = e("./base"); o.call(this, t, r); var u = this; u.type = t.COMPONENT_TYPE_DATAVIEW; var a = ["Data View", "close", "refresh"], f = e("zrender/tool/env").canvasSupported, l = document.createElement("div"), c = document.createElement("textArea"), h = document.createElement("button"), p = document.createElement("button"), d = !1, v = "position:absolute;display:block;overflow:hidden;transition:height 0.8s,background-color 1s;-moz-transition:height 0.8s,background-color 1s;-webkit-transition:height 0.8s,background-color 1s;-o-transition:height 0.8s,background-color 1s;z-index:1;left:0;top:0;", m, g = "echarts-dataview", y = r.getHeight(), b = r.getWidth(); u.dispose = A, u.resize = L, u.show = E, u.hide = w, k() } return e("../component").define("dataView", t), t }), define("echarts/util/coordinates", ["require", "zrender/tool/math"], function (e) { function n(e, n) { return [e * t.sin(n), e * t.cos(n)] } function r(e, t) { return [Math.sqrt(e * e + t * t), Math.atan(t / e)] } var t = e("zrender/tool/math"); return {polar2cartesian: n, cartesian2polar: r} }), define("echarts/component/polar", ["require", "./base", "../util/coordinates", "zrender/tool/util", "../component"], function (e) { function t(t, n, r, i, s) { function p(e, t) { s = t, B(e) } function d() { for (var e = 0; e < l.length; e++)f.reformOption(l[e]), h = [l[e], i], v(e), m(e), y(e), L(e), g(e); for (var e = 0; e < f.shapeList.length; e++)f.shapeList[e].id = r.newShapeId(f.type), r.addShape(f.shapeList[e]) } function v(e) { var t = l[e], n = f.deepQuery(h, "indicator"), i = n.length, s = t.startAngle, o = 2 * Math.PI / i, a = f.parsePercent(t.radius, Math.min(r.getWidth(), r.getHeight()) / 2), c = t.__ecIndicator = [], p; for (var d = 0; d < i; d++)p = u.polar2cartesian(a, s * Math.PI / 180 + o * d), c.push({vector: [p[1], -p[0]]}) } function m(e) { var t = l[e], n = t.__ecIndicator, r = t.splitArea, i = t.splitLine, s = N(e), o = t.splitNumber, u = i.lineStyle.color, a = i.lineStyle.width, c = i.show, p = f.deepQuery(h, "axisLine"); w(n, o, s, r, u, a, c), C(n, s, p) } function g(e) { var t = l[e], n = f.deepQuery(h, "indicator"), r = t.__ecIndicator, s, o, u, c, p = f.deepQuery(h, "splitNumber"), d = N(e), o, v, m, g, y, b = f.deepQuery(h, "precision"); for (var w = 0; w < n.length; w++) { s = f.deepQuery([n[w], t, i], "axisLabel"); if (s.show) { u = {}, u.textFont = f.getFont(), u = a.merge(u, s), u.lineWidth = u.width, o = r[w].vector, v = r[w].value, g = w / n.length * 2 * Math.PI, y = s.offset || 10; for (var E = 1; E <= p; E++)c = a.merge({}, u), m = E * (v.max - v.min) / p + v.min, b && (m = m.toFixed(b)), c.text = f.numAddCommas(m), c.x = E * o[0] / p + Math.cos(g) * y + d[0], c.y = E * o[1] / p + Math.sin(g) * y + d[1], f.shapeList.push({ shape: "text", style: c, draggable: !1, hoverable: !1 }) } } } function y(e) { var t = l[e], n = t.__ecIndicator, r, s = f.deepQuery(h, "indicator"), o = N(e), u, a, c, p, d = 0, v = 0, m, g; for (var y = 0; y < s.length; y++) { c = f.deepQuery([s[y], t, i], "name"); if (!c.show)continue; g = f.deepQuery([c, t, i], "textStyle"), u = {}, u.textFont = f.getFont(g), u.color = g.color, typeof c.formatter == "function" ? u.text = c.formatter(s[y].text, y) : typeof c.formatter == "string" ? u.text = c.formatter.replace("{value}", s[y].text) : u.text = s[y].text, r = n[y].vector, Math.round(r[0]) > 0 ? a = "left" : Math.round(r[0]) < 0 ? a = "right" : a = "center", c.margin ? (m = c.margin, d = r[0] > 0 ? m : -m, v = r[1] > 0 ? m : -m, d = r[0] === 0 ? 0 : d, v = r[1] === 0 ? 0 : v, r = T(r, o, 1)) : r = T(r, o, 1.2), u.textAlign = a, u.x = r[0] + d, u.y = r[1] + v, c.rotate && (p = [c.rotate / 180 * Math.PI, r[0], r[1]]), f.shapeList.push({ shape: "text", style: u, draggable: !1, hoverable: !1, rotation: p }) } } function b(e) { var e = e || 0, t = l[e], n = N(e), r = t.__ecIndicator, i = r.length, s = [], o, u; for (var a = 0; a < i; a++)o = r[a].vector, s.push(T(o, n, 1.2)); return u = S(s, "fill", "rgba(0,0,0,0)", "", 1), u } function w(e, t, n, r, i, s, o) { var u, a, l, c; for (var h = 0; h < t; h++)a = (t - h) / t, c = E(e, a, n), o && (u = S(c, "stroke", "", i, s), f.shapeList.push(u)), r.show && (l = (t - h - 1) / t, x(e, r, a, l, n, h)) } function E(e, t, n) { var r = [], i = e.length, s; for (var o = 0; o < i; o++)s = e[o].vector, r.push(T(s, n, t)); return r } function S(e, t, n, r, i, s, o) { return { shape: "polygon", style: {pointList: e, brushType: t, color: n, strokeColor: r, lineWidth: i}, hoverable: s || !1, draggable: o || !1 } } function x(e, t, n, r, i, s) { var o = e.length, u, a = t.areaStyle.color, l, c, h, p = [], o = e.length, d; typeof a == "string" && (a = [a]), l = a.length, u = a[s % l]; for (var v = 0; v < o; v++)p = [], c = e[v].vector, h = e[(v + 1) % o].vector, p.push(T(c, i, n)), p.push(T(c, i, r)), p.push(T(h, i, r)), p.push(T(h, i, n)), d = S(p, "fill", u, "", 1), f.shapeList.push(d) } function T(e, t, n) { return [e[0] * n + t[0], e[1] * n + t[1]] } function N(e) { var e = e || 0; return f.parseCenter(r, l[e].center) } function C(e, t, n) { var r = e.length, i, s, o = n.lineStyle, u = o.color, a = o.width, l = o.type; for (var c = 0; c < r; c++)s = e[c].vector, i = k(t[0], t[1], s[0] + t[0], s[1] + t[1], u, a, l), f.shapeList.push(i) } function k(e, t, n, r, i, s, o) { return { shape: "line", style: {xStart: e, yStart: t, xEnd: n, yEnd: r, strokeColor: i, lineWidth: s, lineType: o}, hoverable: !1 } } function L(e) { var t = l[e], n = f.deepQuery(h, "indicator"), r = n.length, i = t.__ecIndicator, s, o, u, a = A(e), c = t.splitNumber, p = f.deepQuery(h, "boundaryGap"), d = f.deepQuery(h, "precision"), v = f.deepQuery(h, "power"), m = f.deepQuery(h, "scale"); for (var g = 0; g < r; g++)typeof n[g].max == "number" ? (o = n[g].max, u = n[g].min || 0, s = { max: o, min: u }) : s = O(a, g, c, p, d, v, m), i[g].value = s } function A(e) { var n = [], r, o, u = s.legend; for (var a = 0; a < c.length; a++) { r = c[a]; if (r.type != t.CHART_TYPE_RADAR)continue; o = r.data || []; for (var l = 0; l < o.length; l++)polarIndex = f.deepQuery([o[l], r, i], "polarIndex") || 0, polarIndex == e && (!u || u.isSelected(o[l].name)) && n.push(o[l]) } return n } function O(e, t, n, r, i, s, o) { function m(e) { (e > u || u === undefined) && (u = e), (e < a || a === undefined) && (a = e) } var u, a, f, l, c, h = 0, p, d, v; if (!e || e.length === 0)return; e.length == 1 && (a = 0); if (e.length != 1)for (var g = 0; g < e.length; g++)f = e[g].value[t], m(f); else { v = e[0]; for (var g = 0; g < v.value.length; g++)m(v.value[g]) } if (e.length != 1)if (o) { l = M(u, a, n, i, s); if (l >= 1) a = Math.floor(a / l) * l - l; else { if (l === 0)return u > 0 ? (d = 0, p = 2 * u) : u === 0 ? (d = 0, p = 100) : (p = 0, d = 2 * a), { max: p, min: d }; c = (l + "").split(".")[1], h = c.length, a = Math.floor(a * Math.pow(10, h)) / Math.pow(10, h) - l } Math.abs(a) <= l && (a = 0), u = a + Math.floor(l * Math.pow(10, h) * (n + 1)) / Math.pow(10, h) } else a = a > 0 ? 0 : a; return r && (u = u > 0 ? u * 1.2 : u * .8, a = a > 0 ? a * .8 : a * 1.2), {max: u, min: a} } function M(e, t, n, r, i) { var s = (e - t) / n, o, u; if (s > 1)return i ? (s = Math.ceil(s), s % i > 0 ? (Math.ceil(s / i) + 1) * i : s) : (o = (s + "").split(".")[0], u = o.length, o.charAt(0) >= 5 ? Math.pow(10, u) : (o.charAt(0) - 0 + 1) * Math.pow(10, u - 1)); if (s == 1)return 1; if (s === 0)return 0; if (!r) { o = (s + "").split(".")[1], u = 0; while (o[u] == "0")u++; return o[u] >= 5 ? "0." + o.substring(0, u + 1) - 0 + 1 / Math.pow(10, u) : "0." + o.substring(0, u + 1) - 0 + 1 / Math.pow(10, u + 1) } return Math.ceil(s * Math.pow(10, r)) / Math.pow(10, r) } function _(e, t, n) { e = e || 0, t = t || 0; var r = l[e].__ecIndicator; if (t >= r.length)return; var i = l[e].__ecIndicator[t], s = N(e), o = i.vector, u = i.value.max, a = i.value.min, f; if (typeof n == "undefined")return s; switch (n) { case"min": n = a; break; case"max": n = u; break; case"center": n = (u + a) / 2 } return u != a ? f = (n - a) / (u - a) : f = .5, T(o, s, f) } function D(e) { var t = P(e); return t ? t.polarIndex : -1 } function P(e) { var t, n, i, s, o, a, c, h, p, d = Math.min(r.getWidth(), r.getHeight()) / 2; for (var v = 0; v < l.length; v++) { t = l[v], n = N(v); if (e[0] == n[0] && e[1] == n[1])return {polarIndex: v, valueIndex: 0}; i = f.parsePercent(t.radius, d), o = t.startAngle, a = t.indicator, c = a.length, h = 2 * Math.PI / c, s = u.cartesian2polar(e[0] - n[0], n[1] - e[1]), e[0] - n[0] < 0 && (s[1] += Math.PI), s[1] < 0 && (s[1] += 2 * Math.PI), p = s[1] - o / 180 * Math.PI + Math.PI * 2; if (Math.abs(Math.cos(p % (h / 2))) * i > s[0])return { polarIndex: v, valueIndex: Math.floor((p + h / 2) / h) % c } } } function H(e) { var e = e || 0; return l[e].indicator } function B(e) { e && (i = e, l = i.polar, c = i.series), f.clear(), d() } var o = e("./base"); o.call(this, t, r); var u = e("../util/coordinates"), a = e("zrender/tool/util"), f = this; f.type = t.COMPONENT_TYPE_POLAR; var l, c, h; f.refresh = B, f.getVector = _, f.getDropBox = b, f.getCenter = N, f.getIndicator = H, f.isInside = D, f.getNearestIndex = P, p(i, s) } return e("../component").define("polar", t), t }), define("echarts/theme/default", [], function () { var e = {}; return e }), define("echarts/echarts", ["require", "zrender/tool/env", "./config", "zrender/tool/util", "zrender", "zrender/tool/event", "zrender/config", "./util/shape/icon", "./util/shape/markLine", "./chart", "./chart/island", "./component", "./component/title", "./component/axis", "./component/categoryAxis", "./component/valueAxis", "./component/grid", "./component/dataZoom", "./component/legend", "./component/dataRange", "./component/tooltip", "./component/toolbox", "./component/dataView", "./component/polar", "./util/ecQuery", "./util/ecData", "./chart", "./component", "zrender/tool/util", "./util/ecQuery", "zrender/tool/util", "zrender/tool/color", "zrender/tool/util", "./util/ecQuery", "zrender/tool/util", "./util/ecQuery", "zrender/tool/util", "zrender", "zrender/tool/util", "zrender/tool/util", "./theme/default", "./theme/default"], function (e) { function u(t) { function E() { var r = e("zrender"); (r.version || "1.0.3").replace(".", "") - 0 < n.dependencies.zrender.replace(".", "") - 0 && console.error("ZRender " + (r.version || "1.0.3-") + " is too old for ECharts " + n.version + ". Current version need ZRender " + n.dependencies.zrender + "+"), f = r.init(t), l = {}, p = [], d = {}; var s = e("zrender/tool/event"); s.Dispatcher.call(d); for (var o in i.EVENT)o != "CLICK" && o != "HOVER" && o != "MAP_ROAM" && d.bind(i.EVENT[o], x); var c = e("zrender/config"); f.on(c.EVENT.CLICK, T), f.on(c.EVENT.MOUSEOVER, N), f.on(c.EVENT.DRAGSTART, C), f.on(c.EVENT.DRAGEND, M), f.on(c.EVENT.DRAGENTER, k), f.on(c.EVENT.DRAGOVER, L), f.on(c.EVENT.DRAGLEAVE, A), f.on(c.EVENT.DROP, O), e("./util/shape/icon"), e("./util/shape/markLine"); var h = e("./chart"); e("./chart/island"); var v = h.get("island"); y = new v(u, d, f); var m = e("./component"); e("./component/title"), e("./component/axis"), e("./component/categoryAxis"), e("./component/valueAxis"), e("./component/grid"), e("./component/dataZoom"), e("./component/legend"), e("./component/dataRange"), e("./component/tooltip"), e("./component/toolbox"), e("./component/dataView"), e("./component/polar"); var g = m.get("toolbox"); b = new g(u, d, f, t, a), V() } function x(e) { e.__echartsId = e.__echartsId || a.id; var t = !0; e.__echartsId != a.id && (t = !1), S || (S = e.type); switch (e.type) { case i.EVENT.LEGEND_SELECTED: _(e); break; case i.EVENT.DATA_ZOOM: if (!t) { var n = a.component.dataZoom; n && (n.silence(!0), n.absoluteZoom(e.zoom), n.silence(!1)) } D(e); break; case i.EVENT.DATA_RANGE: t && P(e); break; case i.EVENT.MAGIC_TYPE_CHANGED: if (!t) { var r = a.component.toolbox; r && (r.silence(!0), r.setMagicType(e.magicType), r.silence(!1)) } H(e); break; case i.EVENT.DATA_VIEW_CHANGED: t && B(e); break; case i.EVENT.TOOLTIP_HOVER: t && j(e); break; case i.EVENT.RESTORE: F(); break; case i.EVENT.REFRESH: t && I(e); break; case i.EVENT.TOOLTIP_IN_GRID: case i.EVENT.TOOLTIP_OUT_GRID: if (!t) { var s = a.component.grid; s && f.trigger("mousemove", { connectTrigger: !0, zrenderX: s.getX() + e.x * s.getWidth(), zrenderY: s.getY() + e.y * s.getHeight() }) } else if (v) { var s = a.component.grid; s && (e.x = (e.event.zrenderX - s.getX()) / s.getWidth(), e.y = (e.event.zrenderY - s.getY()) / s.getHeight()) } } if (v && t && S == e.type) { for (var o in v)v[o].connectedEventHandler(e); S = null } if (!t || !v && t) S = null } function T(e) { var t = p.length; while (t--)p[t] && p[t].onclick && p[t].onclick(e); if (e.target) { var n = U(e.target); n && typeof n.seriesIndex != "undefined" && d.dispatch(i.EVENT.CLICK, e.event, n) } } function N(e) { if (e.target) { var t = U(e.target); t && typeof t.seriesIndex != "undefined" && d.dispatch(i.EVENT.HOVER, e.event, t) } } function C(e) { m = {dragIn: !1, dragOut: !1, needRefresh: !1}; var t = p.length; while (t--)p[t] && p[t].ondragstart && p[t].ondragstart(e) } function k(e) { var t = p.length; while (t--)p[t] && p[t].ondragenter && p[t].ondragenter(e) } function L(e) { var t = p.length; while (t--)p[t] && p[t].ondragover && p[t].ondragover(e) } function A(e) { var t = p.length; while (t--)p[t] && p[t].ondragleave && p[t].ondragleave(e) } function O(e) { var t = p.length; while (t--)p[t] && p[t].ondrop && p[t].ondrop(e, m); y.ondrop(e, m) } function M(e) { var t = p.length; while (t--)p[t] && p[t].ondragend && p[t].ondragend(e, m); y.ondragend(e, m), m.needRefresh && (R(y.getOption()), d.dispatch(i.EVENT.DATA_CHANGED, e.event, U(e.target)), d.dispatch(i.EVENT.REFRESH)) } function _(e) { m.needRefresh = !1; var t = p.length; while (t--)p[t] && p[t].onlegendSelected && p[t].onlegendSelected(e, m); g = e.selected, m.needRefresh && d.dispatch(i.EVENT.REFRESH) } function D(e) { m.needRefresh = !1; var t = p.length; while (t--)p[t] && p[t].ondataZoom && p[t].ondataZoom(e, m); m.needRefresh && d.dispatch(i.EVENT.REFRESH) } function P(e) { m.needRefresh = !1; var t = p.length; while (t--)p[t] && p[t].ondataRange && p[t].ondataRange(e, m); m.needRefresh && f.refresh() } function H() { z(q()) } function B(e) { R(e.option), d.dispatch(i.EVENT.DATA_CHANGED, null, e), d.dispatch(i.EVENT.REFRESH) } function j(e) { var t = p.length, n = []; while (t--)p[t] && p[t].ontooltipHover && p[t].ontooltipHover(e, n) } function F() { a.restore() } function I(e) { w = !0, a.refresh(e), w = !1 } function q(e) { var t = e || b.getMagicOption(), n; if (c.xAxis)if (c.xAxis instanceof Array) { n = c.xAxis.length; while (n--)t.xAxis[n].data = c.xAxis[n].data } else t.xAxis.data = c.xAxis.data; if (c.yAxis)if (c.yAxis instanceof Array) { n = c.yAxis.length; while (n--)t.yAxis[n].data = c.yAxis[n].data } else t.yAxis.data = c.yAxis.data; n = t.series.length; while (n--)t.series[n].data = c.series[n].data; return t } function R(t) { var n = e("./util/ecQuery"); if (n.query(t, "dataZoom.show") || n.query(t, "toolbox.show") && n.query(t, "toolbox.feature.dataZoom.show")) { for (var r = 0, s = p.length; r < s; r++)if (p[r].type == i.COMPONENT_TYPE_DATAZOOM) { p[r].syncBackupData(t, c); return } } else { var o = t.series, u; for (var r = 0, s = o.length; r < s; r++) { u = o[r].data; for (var a = 0, f = u.length; a < f; a++)c.series[r].data[a] = u[a] } } } function U(t) { if (t) { var n = e("./util/ecData"), r = n.get(t, "seriesIndex"), i = n.get(t, "dataIndex"); return i = a.component.dataZoom ? a.component.dataZoom.getRealDataIndex(r, i) : i, { seriesIndex: r, dataIndex: i, data: n.get(t, "data"), name: n.get(t, "name"), value: n.get(t, "value") } } return } function z(n) { $(n); if (n.backgroundColor)if (!r && n.backgroundColor.indexOf("rgba") != -1) { var i = n.backgroundColor.split(","); t.style.filter = "alpha(opacity=" + i[3].substring(0, i[3].lastIndexOf(")")) * 100 + ")", i.length = 3, i[0] = i[0].replace("a", ""), t.style.backgroundColor = i.join(",") + ")" } else t.style.backgroundColor = n.backgroundColor; V(), f.clear(); var s = e("./chart"), o = e("./component"), l; if (n.title) { var c = o.get("title"); l = new c(u, d, f, n), p.push(l), a.component.title = l } var h; if (n.tooltip) { var v = o.get("tooltip"); h = new v(u, d, f, n, t, a), p.push(h), a.component.tooltip = h } var m; if (n.legend) { var w = o.get("legend"); m = new w(u, d, f, n, g), p.push(m), a.component.legend = m } var E; if (n.dataRange) { var S = o.get("dataRange"); E = new S(u, d, f, n), p.push(E), a.component.dataRange = E } var x, T, N, C; if (n.grid || n.xAxis || n.yAxis) { var k = o.get("grid"); x = new k(u, d, f, n), p.push(x), a.component.grid = x; var L = o.get("dataZoom"); T = new L(u, d, f, n, {legend: m, grid: x}), p.push(T), a.component.dataZoom = T; var A = o.get("axis"); N = new A(u, d, f, n, { legend: m, grid: x }, "xAxis"), p.push(N), a.component.xAxis = N, C = new A(u, d, f, n, { legend: m, grid: x }, "yAxis"), p.push(C), a.component.yAxis = C } var O; if (n.polar) { var M = o.get("polar"); O = new M(u, d, f, n, {legend: m}), p.push(O), a.component.polar = O } h && h.setComponent(); var _, D, P, H = {}; for (var B = 0, j = n.series.length; B < j; B++) { D = n.series[B].type; if (!D) { console.error("series[" + B + "] chart type has not been defined."); continue } H[D] || (H[D] = !0, _ = s.get(D), _ ? (P = new _(u, d, f, n, { tooltip: h, legend: m, dataRange: E, grid: x, xAxis: N, yAxis: C, polar: O }), p.push(P), a.chart[D] = P) : console.error(D + " has not been required.")) } y.render(n), b.render(n, {dataZoom: T}); if (n.animation && !n.renderAsImage) { var F = p.length; while (F--)P = p[F], P && P.animation && P.shapeList && P.shapeList.length < n.animationThreshold && P.animation(); f.refresh() } else f.render(); var I = "IMG" + a.id, q = document.getElementById(I); n.renderAsImage && r ? (q ? q.src = tt(n.renderAsImage) : (q = nt(n.renderAsImage), q.id = I, q.style.position = "absolute", q.style.left = 0, q.style.top = 0, t.firstChild.appendChild(q)), ot(), f.un(), V(), f.clear()) : q && q.parentNode.removeChild(q), q = null } function W() { var t = e("zrender/tool/util"); h.legend && h.legend.selected ? g = h.legend.selected : g = {}, c = t.clone(h), l = t.clone(h), y.clear(), b.reset(l), z(l) } function X(t) { t = t || {}; var n = t.option; if (!w && t.option) { var r = e("./util/ecQuery"); r.query(c, "toolbox.show") && r.query(c, "toolbox.feature.magicType.show") ? n = q() : n = q(y.getOption()); var i = e("zrender/tool/util"); i.merge(n, t.option, {overwrite: !0, recursive: !0}), i.merge(c, t.option, { overwrite: !0, recursive: !0 }), i.merge(h, t.option, {overwrite: !0, recursive: !0}), y.refresh(n), b.refresh(n) } f.clearAnimation(); for (var s = 0, o = p.length; s < o; s++)p[s].refresh && p[s].refresh(n); f.refresh() } function V() { f.clearAnimation(); var e = p.length; while (e--)p[e] && p[e].dispose && p[e].dispose(); p = [], a.chart = {island: y}, a.component = {toolbox: b} } function $(t) { typeof t.backgroundColor == "undefined" && (t.backgroundColor = u.backgroundColor), typeof t.calculable == "undefined" && (t.calculable = u.calculable), typeof t.calculableColor == "undefined" && (t.calculableColor = u.calculableColor), typeof t.calculableHolderColor == "undefined" && (t.calculableHolderColor = u.calculableHolderColor), typeof t.nameConnector == "undefined" && (t.nameConnector = u.nameConnector), typeof t.valueConnector == "undefined" && (t.valueConnector = u.valueConnector), typeof t.animation == "undefined" && (t.animation = u.animation), typeof t.animationThreshold == "undefined" && (t.animationThreshold = u.animationThreshold), typeof t.animationDuration == "undefined" && (t.animationDuration = u.animationDuration), typeof t.animationEasing == "undefined" && (t.animationEasing = u.animationEasing), typeof t.addDataAnimation == "undefined" && (t.addDataAnimation = u.addDataAnimation); var n = e("zrender/tool/color"); t.color && t.color.length > 0 ? f.getColor = function (e) { return n.getColor(e, t.color) } : f.getColor = function (e) { return n.getColor(e, u.color) }, typeof t.DRAG_ENABLE_TIME == "undefined" && (t.DRAG_ENABLE_TIME = u.DRAG_ENABLE_TIME) } function J(t, n) { var r = e("zrender/tool/util"); n ? l = r.clone(t) : r.merge(l, r.clone(t), {overwrite: !0, recursive: !0}); if (!l.series || l.series.length === 0)return; return c = r.clone(l), h = r.clone(l), l.legend && l.legend.selected ? g = l.legend.selected : g = {}, y.clear(), b.reset(l), z(l), a } function K() { var t = e("./util/ecQuery"), n = e("zrender/tool/util"); return t.query(c, "toolbox.show") && t.query(c, "toolbox.feature.magicType.show") ? n.clone(q()) : n.clone(q(y.getOption())) } function Q(e, t) { return t ? (l.series = e, a.setOption(l, t)) : a.setOption({series: e}), a } function G() { return K().series } function Y(t, n, r, s, o) { var u = e("./util/ecQuery"), f; u.query(c, "toolbox.show") && u.query(c, "toolbox.feature.magicType.show") ? f = q() : f = q(y.getOption()); var l = e("zrender/tool/util"), v = t instanceof Array ? t : [[t, n, r, s, o]], m, w; for (var E = 0, S = v.length; E < S; E++) { t = v[E][0], n = v[E][1], r = v[E][2], s = v[E][3], o = v[E][4]; if (h.series[t]) { r ? (h.series[t].data.unshift(n), c.series[t].data.unshift(n), s || (h.series[t].data.pop(), n = c.series[t].data.pop())) : (h.series[t].data.push(n), c.series[t].data.push(n), s || (h.series[t].data.shift(), n = c.series[t].data.shift())); if (typeof o != "undefined" && h.series[t].type == i.CHART_TYPE_PIE && c.legend && c.legend.data) f.legend.data = c.legend.data, r ? (h.legend.data.unshift(o), c.legend.data.unshift(o)) : (h.legend.data.push(o), c.legend.data.push(o)), s || (w = l.indexOf(c.legend.data, n.name), w != -1 && (h.legend.data.splice(w, 1), c.legend.data.splice(w, 1))), g[o] = !0; else if (typeof o != "undefined" && typeof h.xAxis != "undefined" && typeof h.yAxis != "undefined") { m = h.series[t].xAxisIndex || 0; if (typeof h.xAxis[m].type == "undefined" || h.xAxis[m].type == "category") r ? (h.xAxis[m].data.unshift(o), c.xAxis[m].data.unshift(o), s || (h.xAxis[m].data.pop(), c.xAxis[m].data.pop())) : (h.xAxis[m].data.push(o), c.xAxis[m].data.push(o), s || (h.xAxis[m].data.shift(), c.xAxis[m].data.shift())); m = h.series[t].yAxisIndex || 0, h.yAxis[m].type == "category" && (r ? (h.yAxis[m].data.unshift(o), c.yAxis[m].data.unshift(o), s || (h.yAxis[m].data.pop(), c.yAxis[m].data.pop())) : (h.yAxis[m].data.push(o), c.yAxis[m].data.push(o), s || (h.yAxis[m].data.shift(), c.yAxis[m].data.shift()))) } } } f.legend && (f.legend.selected = g); for (var E = 0, S = p.length; E < S; E++)f.addDataAnimation && p[E].addDataAnimation && p[E].addDataAnimation(v), p[E].type == i.COMPONENT_TYPE_DATAZOOM && (p[E].silence(!0), p[E].init(f), p[E].silence(!1)); return y.refresh(f), b.refresh(f), setTimeout(function () { d.dispatch(i.EVENT.REFRESH, "", {option: f}) }, f.addDataAnimation ? 500 : 0), a } function Z() { return t } function et() { return f } function tt(e) { if (!r)return ""; if (p.length === 0) { var t = "IMG" + a.id, n = document.getElementById(t); if (n)return n.src } a.component.tooltip && a.component.tooltip.hideTip(), e = e || "png", e != "png" && e != "jpeg" && (e = "png"); var i = l.backgroundColor && l.backgroundColor.replace(" ", "") == "rgba(0,0,0,0)" ? "#fff" : l.backgroundColor; return f.toDataURL("image/" + e, i) } function nt(e) { var t = document.createElement("img"); return t.src = tt(e), t.title = h.title && h.title.text || "ECharts", t } function rt(n) { if (!lt())return tt(n); var r, i = [t.offsetLeft, t.offsetTop, t.offsetWidth, t.offsetHeight], s = {self: {img: a.getDataURL(n), left: i[0], top: i[1], right: i[0] + i[2], bottom: i[1] + i[3]}}, o = s.self.left, u = s.self.top, f = s.self.right, c = s.self.bottom; for (var h in v)r = v[h].getDom(), i = [r.offsetLeft, r.offsetTop, r.offsetWidth, r.offsetHeight], s[h] = { img: v[h].getDataURL(n), left: i[0], top: i[1], right: i[0] + i[2], bottom: i[1] + i[3] }, o = Math.min(o, s[h].left), u = Math.min(u, s[h].top), f = Math.max(f, s[h].right), c = Math.max(c, s[h].bottom); var p = document.createElement("div"); p.style.position = "absolute", p.style.left = "-4000px", p.style.width = f - o + "px", p.style.height = c - u + "px", document.body.appendChild(p); var d = e("zrender").init(p); for (var h in s)d.addShape({shape: "image", style: {x: s[h].left - o, y: s[h].top - u, image: s[h].img}}); d.render(); var m = l.backgroundColor && l.backgroundColor.replace(" ", "") == "rgba(0,0,0,0)" ? "#fff" : l.backgroundColor, g = d.toDataURL("image/png", m); return setTimeout(function () { d.dispose(), p.parentNode.removeChild(p), p = null }, 100), g } function it(e) { var t = document.createElement("img"); return t.src = rt(e), t.title = h.title && h.title.text || "ECharts", t } function st(e, t) { return d.bind(e, t), a } function ot(e, t) { return d.unbind(e, t), a } function ut(e) { if (!e)return a; v || (v = {}); if (e instanceof Array)for (var t = 0, n = e.length; t < n; t++)v[e[t].id] = e[t]; else v[e.id] = e; return a } function at(e) { if (!e || !v)return a; if (e instanceof Array)for (var t = 0, n = e.length; t < n; t++)delete v[e[t].id]; else delete v[e.id]; for (var r in v)return r, a; return v = !1, a } function ft(e) { e.__echartsId != a.id && x(e) } function lt() { return !!v } function ct(t) { b.hideDataView(); var n = e("zrender/tool/util"); t = t || {}, t.textStyle = t.textStyle || {}; var r = n.merge(n.clone(t.textStyle), u.textStyle, {overwrite: !1}); return t.textStyle.textFont = r.fontStyle + " " + r.fontWeight + " " + r.fontSize + "px " + r.fontFamily, t.textStyle.text = t.text || u.loadingText, typeof t.x != "undefined" && (t.textStyle.x = t.x), typeof t.y != "undefined" && (t.textStyle.y = t.y), f.showLoading(t), a } function ht() { return f.hideLoading(), a } function pt(t) { var n = e("zrender/tool/util"); if (t) { if (typeof t == "string")switch (t) { case"default": t = e("./theme/default"); break; default: t = e("./theme/default") } else t = t || {}; for (var s in u)delete u[s]; for (var s in i)u[s] = n.clone(i[s]); t.color && (u.color = []), t.symbolList && (u.symbolList = []), n.merge(u, n.clone(t), { overwrite: !0, recursive: !0 }) } r || (u.textStyle.fontFamily = u.textStyle.fontFamily2), h && a.restore() } function dt() { f.resize(); if (l.renderAsImage && r)return z(l), a; f.clearAnimation(), y.resize(), b.resize(); for (var e = 0, t = p.length; e < t; e++)p[e].resize && p[e].resize(); return f.refresh(), d.dispatch(i.EVENT.RESIZE), a } function vt() { return V(), f.clear(), l = {}, c = {}, h = {}, a } function mt() { var e = t.getAttribute(o); e && delete s[e], y.dispose(), b.dispose(), d.unbind(), a.clear(), f.dispose(), f = null, a = null; return } var i = e("./config"), u = e("zrender/tool/util").clone(i), a = this, f, l, c, h, p, d, v = !1, m = {dragIn: !1, dragOut: !1, needRefresh: !1}, g, y, b, w; E(); var S = null; a.setOption = J, a.setSeries = Q, a.addData = Y, a.getOption = K, a.getSeries = G, a.getDom = Z, a.getZrender = et, a.getDataURL = tt, a.getImage = nt, a.getConnectedDataURL = rt, a.getConnectedImage = it, a.on = st, a.un = ot, a.connect = ut, a.disConnect = at, a.connectedEventHandler = ft, a.isConnected = lt, a.showLoading = ct, a.hideLoading = ht, a.setTheme = pt, a.resize = dt, a.refresh = X, a.restore = W, a.clear = vt, a.dispose = mt } var t = {}, n = t, r = e("zrender/tool/env").canvasSupported, i = new Date - 0, s = {}, o = "_echarts_instance_"; return t.version = "1.4.1", t.dependencies = {zrender: "1.1.2"}, t.init = function (e, t) { e = e instanceof Array ? e[0] : e; var n = e.getAttribute(o); return n || (n = i++, e.setAttribute(o, n)), s[n] && s[n].dispose(), s[n] = new u(e), s[n].id = n, s[n].setTheme(t), s[n] }, t.getInstanceById = function (e) { return s[e] }, t }), define("echarts", ["echarts/echarts"], function (e) { return e }), define("echarts/util/shape/symbol", ["require", "zrender/tool/color", "zrender/shape", "zrender/shape/base", "zrender/shape"], function (e) { function t() { this.type = "symbol" } return t.prototype = { buildPath: function (t, n) { var r = n.pointList, i = this.getRect(n), s = window.devicePixelRatio || 1; i = {x: Math.floor(i.x), y: Math.floor(i.y), width: Math.floor(i.width), height: Math.floor(i.height)}; var o = t.getImageData(i.x * s, i.y * s, i.width * s, i.height * s), u = o.data, a, f = e("zrender/tool/color"), l = f.toArray(n.color), c = l[0], h = l[1], p = l[2], d = i.width; for (var v = 1, m = r.length; v < m; v++)a = ((Math.floor(r[v][0]) - i.x) * s + (Math.floor(r[v][1]) - i.y) * d * s * s) * 4, u[a] = c, u[a + 1] = h, u[a + 2] = p, u[a + 3] = 255; t.putImageData(o, i.x * s, i.y * s); return }, getRect: function (t) { var n = e("zrender/shape"); return n.get("polygon").getRect(t) }, isCover: function () { return !1 } }, e("zrender/shape/base").derive(t), e("zrender/shape").define("symbol", new t), t }), define("echarts/chart/scatter", ["require", "../component/base", "./calculableBase", "zrender/tool/color", "../util/shape/symbol", "../chart"], function (e) { function t(t, n, r, i, s) { function v() { f.selectedMap = {}; var e = s.legend, n = [], i, o, u, c; for (var v = 0, g = l.length; v < g; v++) { i = l[v], o = i.name; if (i.type == t.CHART_TYPE_SCATTER) { l[v] = f.reformOption(l[v]), d[v] = f.query(i, "symbol") || p[v % p.length]; if (e) { f.selectedMap[o] = e.isSelected(o), h[v] = a.alpha(e.getColor(o), .5), u = e.getItemShape(o); if (u) { u.shape = "icon"; var c = d[v]; u.style.brushType = c.match("empty") ? "stroke" : "both", c = c.replace("empty", "").toLowerCase(), c.match("star") && (u.style.n = c.replace("star", "") - 0 || 5, c = "star"), c.match("image") && (u.style.image = c.replace(new RegExp("^image:\\/\\/"), ""), u.style.x += Math.round((u.style.width - u.style.height) / 2), u.style.width = u.style.height, c = "image"), u.style.iconType = c, e.setItemShape(o, u) } } else f.selectedMap[o] = !0, h[v] = r.getColor(v); f.selectedMap[o] && n.push(v) } } if (n.length === 0)return; m(n); for (var v = 0, g = f.shapeList.length; v < g; v++)f.shapeList[v].id = r.newShapeId(f.type), r.addShape(f.shapeList[v]) } function m(e) { var t, n, r, i, o, u, a = {}, c, h; for (var p = 0, d = e.length; p < d; p++) { t = e[p], n = l[t]; if (n.data.length === 0)continue; o = s.xAxis.getAxis(n.xAxisIndex || 0), u = s.yAxis.getAxis(n.yAxisIndex || 0), a[t] = []; for (var v = 0, m = n.data.length; v < m; v++) { r = n.data[v], i = typeof r != "undefined" ? typeof r.value != "undefined" ? r.value : r : "-"; if (i == "-" || i.length < 2)continue; c = o.getCoord(i[0]), h = u.getCoord(i[1]), a[t].push([c, h, v, r.name || ""]) } y(o, u, n.data, a[t]), f.buildMark(n, t, s, {xMarkMap: g(t) ? y(o, u, n.data, a[t]) : {}}) } b(a) } function g(e) { var t = l[e], n = []; t.markPoint && t.markPoint.data && n.push(t.markPoint.data), t.markLine && t.markLine.data && n.push(t.markLine.data); var r, i = n.length; while (i--) { r = n[i]; for (var s = 0, o = r.length; s < o; s++)if (r[s].type == "max" || r[s].type == "min" || r[s].type == "average")return !0 } return !1 } function y(e, t, n, r) { var i = { min0: Number.POSITIVE_INFINITY, max0: Number.NEGATIVE_INFINITY, sum0: 0, counter0: 0, average0: 0, min1: Number.POSITIVE_INFINITY, max1: Number.NEGATIVE_INFINITY, sum1: 0, counter1: 0, average1: 0 }, o; for (var u = 0, a = r.length; u < a; u++)o = n[r[u][2]].value || n[r[u][2]], i.min0 > o[0] && (i.min0 = o[0], i.minY0 = r[u][1], i.minX0 = r[u][0]), i.max0 < o[0] && (i.max0 = o[0], i.maxY0 = r[u][1], i.maxX0 = r[u][0]), i.sum0 += o[0], i.counter0++, i.min1 > o[1] && (i.min1 = o[1], i.minY1 = r[u][1], i.minX1 = r[u][0]), i.max1 < o[1] && (i.max1 = o[1], i.maxY1 = r[u][1], i.maxX1 = r[u][0]), i.sum1 += o[1], i.counter1++; var f = s.grid.getX(), l = s.grid.getXend(), c = s.grid.getY(), h = s.grid.getYend(); i.average0 = (i.sum0 / i.counter0).toFixed(2) - 0; var p = e.getCoord(i.average0); i.averageLine0 = [[p, h], [p, c]], i.minLine0 = [[i.minX0, h], [i.minX0, c]], i.maxLine0 = [[i.maxX0, h], [i.maxX0, c]], i.average1 = (i.sum1 / i.counter1).toFixed(2) - 0; var d = t.getCoord(i.average1); return i.averageLine1 = [[f, d], [l, d]], i.minLine1 = [[f, i.minY1], [l, i.minY1]], i.maxLine1 = [[f, i.maxY1], [l, i.maxY1]], i } function b(e) { var t, n, r, i; for (var s in e) { t = l[s], n = e[s]; if (t.large && t.data.length > t.largeThreshold) { f.shapeList.push(E(n, f.getItemStyleColor(f.query(t, "itemStyle.normal.color"), s, -1) || h[s])); continue } for (var o = 0, u = n.length; o < u; o++)r = n[o], i = w(s, r[2], r[3], r[0], r[1]), i && f.shapeList.push(i) } } function w(e, t, n, r, i) { var o = l[e], u = o.data[t], a = s.dataRange, p; if (a) { p = isNaN(u[2]) ? h[e] : a.getColor(u[2]); if (!p)return null } else p = h[e]; var v = f.getSymbolShape(o, e, u, t, n, r, i, d[e], p, "rgba(0,0,0,0)", "vertical"); return v.zlevel = c, v._mark = !1, v._main = !0, v } function E(e, t) { return { shape: "symbol", zlevel: c, _main: !0, hoverable: !1, style: {pointList: e, color: t, strokeColor: t} } } function S(e, t, n, r) { var i = s.xAxis.getAxis(e.xAxisIndex), o = s.yAxis.getAxis(e.yAxisIndex), u; if (!n.type || n.type != "max" && n.type != "min" && n.type != "average") u = [typeof n.xAxis != "string" && i.getCoordByIndex ? i.getCoordByIndex(n.xAxis || 0) : i.getCoord(n.xAxis || 0), typeof n.yAxis != "string" && o.getCoordByIndex ? o.getCoordByIndex(n.yAxis || 0) : o.getCoord(n.yAxis || 0)]; else { var a = typeof n.valueIndex != "undefined" ? n.valueIndex : 1; u = [r.xMarkMap[n.type + "X" + a], r.xMarkMap[n.type + "Y" + a], r.xMarkMap[n.type + "Line" + a], r.xMarkMap[n.type + a]] } return u } function x(e, t) { s = t, T(e) } function T(e) { e && (i = e, l = i.series), f.clear(), v() } function N(e, t) { s.dataRange && (T(), t.needRefresh = !0); return } function C() { var e = f.query(i, "animationDuration"), t = f.query(i, "animationEasing"), n, s, o; for (var u = 0, a = f.shapeList.length; u < a; u++)if (f.shapeList[u]._main) { if (f.shapeList[u].shape == "symbol")continue; o = l[f.shapeList[u]._seriesIndex], n = f.shapeList[u]._x || 0, s = f.shapeList[u]._y || 0, r.modShape(f.shapeList[u].id, {scale: [0, 0, n, s]}, !0), r.animate(f.shapeList[u].id, "").when(f.query(o, "animationDuration") || e, {scale: [1, 1, n, s]}).start(f.query(o, "animationEasing") || t) } f.animationMark(e, t) } var o = e("../component/base"); o.call(this, t, r); var u = e("./calculableBase"); u.call(this, r, i); var a = e("zrender/tool/color"), f = this; f.type = t.CHART_TYPE_SCATTER; var l, c = f.getZlevelBase(), h = {}, p = t.symbolList, d = {}; f.getMarkCoord = S, f.animation = C, f.init = x, f.refresh = T, f.ondataRange = N, x(i, s) } return e("../util/shape/symbol"), e("../chart").define("scatter", t), t }), define("echarts/util/shape/candle", ["require", "zrender/tool/matrix", "zrender/shape/base", "zrender/shape"], function (e) { function n() { this.type = "candle" } var t = e("zrender/tool/matrix"); return n.prototype = { _numberOrder: function (e, t) { return t - e }, buildPath: function (e, t) { t.y.sort(this._numberOrder), e.moveTo(t.x, t.y[3]), e.lineTo(t.x, t.y[2]), e.moveTo(t.x - t.width / 2, t.y[2]), e.rect(t.x - t.width / 2, t.y[2], t.width, t.y[1] - t.y[2]), e.moveTo(t.x, t.y[1]), e.lineTo(t.x, t.y[0]); return }, getRect: function (e) { var t; return e.brushType == "stroke" || e.brushType == "fill" ? t = e.lineWidth || 1 : t = 0, { x: Math.round(e.x - e.width / 2 - t / 2), y: Math.round(e.y[3] - t / 2), width: e.width + t, height: e.y[0] - e.y[3] + t } }, isCover: function (e, n, r) { if (e.__needTransform && e._transform) { var i = []; t.invert(i, e._transform); var s = [n, r]; t.mulVector(s, i, [n, r, 1]), n == s[0] && r == s[1] && (Math.abs(e.rotation[0]) > 1e-4 || Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4 || Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4 ? e.__needTransform = !0 : e.__needTransform = !1), n = s[0], r = s[1] } var o; return e.style.__rect ? o = e.style.__rect : (o = this.getRect(e.style), o = [o.x, o.x + o.width, o.y, o.y + o.height], e.style.__rect = o), n >= o[0] && n <= o[1] && r >= o[2] && r <= o[3] ? !0 : !1 } }, e("zrender/shape/base").derive(n), e("zrender/shape").define("candle", new n), n }), define("echarts/chart/k", ["require", "../component/base", "./calculableBase", "../util/ecData", "../util/shape/candle", "../chart"], function (e) { function t(t, n, r, i, s) { function h() { f.selectedMap = {}; var e = {top: [], bottom: []}, n; for (var i = 0, o = l.length; i < o; i++)l[i].type == t.CHART_TYPE_K && (l[i] = f.reformOption(l[i]), n = s.xAxis.getAxis(l[i].xAxisIndex), n.type == t.COMPONENT_TYPE_AXIS_CATEGORY && e[n.getPosition()].push(i)); for (var u in e)e[u].length > 0 && p(u, e[u]); for (var i = 0, o = f.shapeList.length; i < o; i++)f.shapeList[i].id = r.newShapeId(f.type), r.addShape(f.shapeList[i]) } function p(e, t) { var n = d(t), r = n.locationMap, i = n.maxDataLength; if (i === 0 || r.length === 0)return; v(i, r); for (var o = 0, u = t.length; o < u; o++)f.buildMark(l[t[o]], t[o], s) } function d(e) { var t, n, r = s.legend, i = [], o = 0; for (var u = 0, a = e.length; u < a; u++)t = l[e[u]], n = t.name, r ? f.selectedMap[n] = r.isSelected(n) : f.selectedMap[n] = !0, f.selectedMap[n] && i.push(e[u]), o = Math.max(o, t.data.length); return {locationMap: i, maxDataLength: o} } function v(e, t) { var n, r, i, o, u, a, f = {}, c, h, p, d; for (var v = 0, g = t.length; v < g; v++) { n = t[v], r = l[n], i = r.xAxisIndex || 0, o = s.xAxis.getAxis(i), c = r.barWidth || Math.floor(o.getGap() / 2), d = r.barMaxWidth, d && d < c && (c = d), u = r.yAxisIndex || 0, a = s.yAxis.getAxis(u), f[n] = []; for (var y = 0, b = e; y < b; y++) { if (typeof o.getNameByIndex(y) == "undefined")break; h = r.data[y], p = typeof h != "undefined" ? typeof h.value != "undefined" ? h.value : h : "-"; if (p == "-" || p.length != 4)continue; f[n].push([o.getCoordByIndex(y), c, a.getCoord(p[0]), a.getCoord(p[1]), a.getCoord(p[2]), a.getCoord(p[3]), y, o.getNameByIndex(y)]) } } m(f) } function m(e) { var n, r, i, s, o, u, a, c, h, p, d, v, m, y, b, w; for (var E = 0, S = l.length; E < S; E++) { d = l[E], y = e[E]; if (d.type == t.CHART_TYPE_K && typeof y != "undefined") { v = d, n = f.query(v, "itemStyle.normal.lineStyle.width"), r = f.query(v, "itemStyle.normal.lineStyle.color"), i = f.query(v, "itemStyle.normal.lineStyle.color0"), s = f.query(v, "itemStyle.normal.color"), o = f.query(v, "itemStyle.normal.color0"), u = f.query(v, "itemStyle.emphasis.lineStyle.width"), a = f.query(v, "itemStyle.emphasis.lineStyle.color"), c = f.query(v, "itemStyle.emphasis.lineStyle.color0"), h = f.query(v, "itemStyle.emphasis.color"), p = f.query(v, "itemStyle.emphasis.color0"); for (var x = 0, T = y.length; x < T; x++)b = y[x], m = d.data[b[6]], v = m, w = b[3] < b[2], f.shapeList.push(g(E, b[6], b[7], b[0], b[1], b[2], b[3], b[4], b[5], w ? f.query(v, "itemStyle.normal.color") || s : f.query(v, "itemStyle.normal.color0") || o, f.query(v, "itemStyle.normal.lineStyle.width") || n, w ? f.query(v, "itemStyle.normal.lineStyle.color") || r : f.query(v, "itemStyle.normal.lineStyle.color0") || i, w ? f.query(v, "itemStyle.emphasis.color") || h || s : f.query(v, "itemStyle.emphasis.color0") || p || o, f.query(v, "itemStyle.emphasis.lineStyle.width") || u || n, w ? f.query(v, "itemStyle.emphasis.lineStyle.color") || a || r : f.query(v, "itemStyle.emphasis.lineStyle.color0") || c || i)) } } } function g(e, t, n, r, i, s, o, u, f, h, p, d, v, m, g) { var y = { shape: "candle", zlevel: c, clickable: !0, style: {x: r, y: [s, o, u, f], width: i, color: h, strokeColor: d, lineWidth: p, brushType: "both"}, highlightStyle: {color: v, strokeColor: g, lineWidth: m}, _seriesIndex: e }; return a.pack(y, l[e], e, l[e].data[t], t, n), y } function y(e, t, n) { var r = s.xAxis.getAxis(e.xAxisIndex), i = s.yAxis.getAxis(e.yAxisIndex); return [typeof n.xAxis != "string" && r.getCoordByIndex ? r.getCoordByIndex(n.xAxis || 0) : r.getCoord(n.xAxis || 0), typeof n.yAxis != "string" && i.getCoordByIndex ? i.getCoordByIndex(n.yAxis || 0) : i.getCoord(n.yAxis || 0)] } function b(e, t) { s = t, w(e) } function w(e) { e && (i = e, l = i.series), f.clear(), h() } function E(e) { var t = {}; for (var n = 0, i = e.length; n < i; n++)t[e[n][0]] = e[n]; var o, u, c, h, p, d; for (var n = 0, i = f.shapeList.length; n < i; n++) { p = f.shapeList[n]._seriesIndex; if (t[p] && !t[p][3] && f.shapeList[n].shape == "candle") { d = a.get(f.shapeList[n], "dataIndex"), h = l[p]; if (t[p][2] && d == h.data.length - 1) { r.delShape(f.shapeList[n].id); continue } if (!t[p][2] && d === 0) { r.delShape(f.shapeList[n].id); continue } u = s.xAxis.getAxis(h.xAxisIndex || 0).getGap(), o = t[p][2] ? u : -u, c = 0, r.animate(f.shapeList[n].id, "").when(500, {position: [o, c]}).start() } } } function S() { var e = f.query(i, "animationDuration"), t = f.query(i, "animationEasing"), n, s, o; for (var u = 0, a = f.shapeList.length; u < a; u++)f.shapeList[u].shape == "candle" && (o = l[f.shapeList[u]._seriesIndex], n = f.shapeList[u].style.x, s = f.shapeList[u].style.y[0], r.modShape(f.shapeList[u].id, {scale: [1, 0, n, s]}, !0), r.animate(f.shapeList[u].id, "").when(f.query(o, "animationDuration") || e, {scale: [1, 1, n, s]}).start(f.query(o, "animationEasing") || t)); f.animationMark(e, t) } var o = e("../component/base"); o.call(this, t, r); var u = e("./calculableBase"); u.call(this, r, i); var a = e("../util/ecData"), f = this; f.type = t.CHART_TYPE_K; var l, c = f.getZlevelBase(); f.getMarkCoord = y, f.animation = S, f.init = b, f.refresh = w, f.addDataAnimation = E, b(i, s) } return e("../util/shape/candle"), e("../chart").define("k", t), t }), define("echarts/chart/radar", ["require", "../component/base", "./calculableBase", "../util/ecData", "zrender/tool/color", "../util/accMath", "../chart"], function (e) { function t(t, n, r, i, s) { function y() { var e = s.legend; l.selectedMap = {}, v = [], g = 0; var n; for (var o = 0, u = c.length; o < u; o++)c[o].type == t.CHART_TYPE_RADAR && (h = l.reformOption(c[o]), n = h.name || "", l.selectedMap[n] = e ? e.isSelected(n) : !0, l.selectedMap[n] && (d = [h, i], l.deepQuery(d, "calculable") && x(o), b(o), l.buildMark(c[o], o, s))); for (var o = 0, u = l.shapeList.length; o < u; o++)l.shapeList[o].id = r.newShapeId(l.type), r.addShape(l.shapeList[o]) } function b(e) { var t = s.legend, n, i = h.data, o, u, a, f = l.deepQuery(d, "calculable"); for (var c = 0; c < i.length; c++) { u = i[c].name || "", l.selectedMap[u] = t ? t.isSelected(u) : !0; if (!l.selectedMap[u])continue; t ? (o = t.getColor(u), n = t.getItemShape(u), n && (n.style.brushType = l.deepQuery([i[c], h], "itemStyle.normal.areaStyle") ? "both" : "stroke", t.setItemShape(u, n))) : o = r.getColor(c), a = w(h.polarIndex, i[c]), E(a, o, c, e), S(a, o, i[c], e, c, f), g++ } } function w(e, t) { var n = [], r, i = s.polar; for (var o = 0, u = t.value.length; o < u; o++)r = i.getVector(e, o, t.value[o]), r && n.push(r); return n } function E(e, t, n, r) { var i; for (var s = 0, o = e.length; s < o; s++)i = l.getSymbolShape(c[r], r, c[r].data[n], n, "", e[s][0], e[s][1], m[g % m.length], t, "#fff", "vertical"), i.zlevel = p + 1, l.shapeList.push(i) } function S(e, t, n, r, i, o) { var u = [n, h], d = l.getItemStyleColor(l.deepQuery(u, "itemStyle.normal.color"), r, i, n), v = l.deepQuery(u, "itemStyle.normal.lineStyle.width"), m = l.deepQuery(u, "itemStyle.normal.lineStyle.type"), g = l.deepQuery(u, "itemStyle.normal.areaStyle.color"), y = l.deepQuery(u, "itemStyle.normal.areaStyle"), b = { shape: "polygon", zlevel: p, style: { pointList: e, brushType: y ? "both" : "stroke", color: g || d || f.alpha(t, .5), strokeColor: d || t, lineWidth: v, lineType: m }, highlightStyle: { brushType: l.deepQuery(u, "itemStyle.emphasis.areaStyle") || y ? "both" : "stroke", color: l.deepQuery(u, "itemStyle.emphasis.areaStyle.color") || g || d || f.alpha(t, .5), strokeColor: l.getItemStyleColor(l.deepQuery(u, "itemStyle.emphasis.color"), r, i, n) || d || t, lineWidth: l.deepQuery(u, "itemStyle.emphasis.lineStyle.width") || v, lineType: l.deepQuery(u, "itemStyle.emphasis.lineStyle.type") || m } }; a.pack(b, c[r], r, n, i, n.name, s.polar.getIndicator(c[r].polarIndex)), o && (b.draggable = !0, l.setCalculable(b)), l.shapeList.push(b) } function x(e) { var t = l.deepQuery(d, "polarIndex"); if (!v[t]) { var n = s.polar.getDropBox(t); n.zlevel = p, l.setCalculable(n), a.pack(n, c, e, undefined, -1), l.shapeList.push(n), v[t] = !0 } } function T(e, t) { if (!l.isDragend || !e.target)return; var n = e.target, r = a.get(n, "seriesIndex"), i = a.get(n, "dataIndex"); s.legend && s.legend.del(c[r].data[i].name), c[r].data.splice(i, 1), t.dragOut = !0, t.needRefresh = !0, l.isDragend = !1; return } function N(t, n) { if (!l.isDrop || !t.target)return; var r = t.target, o = t.dragged, u = a.get(r, "seriesIndex"), f = a.get(r, "dataIndex"), h, p = s.legend, d; if (f == -1) h = { value: a.get(o, "value"), name: a.get(o, "name") }, c[u].data.push(h), p && p.add(h.name, o.style.color || o.style.strokeColor); else { var v = e("../util/accMath"); h = c[u].data[f], p && p.del(h.name), h.name += i.nameConnector + a.get(o, "name"), d = a.get(o, "value"); for (var m = 0; m < d.length; m++)h.value[m] = v.accAdd(h.value[m], d[m]); p && p.add(h.name, o.style.color || o.style.strokeColor) } n.dragIn = n.dragIn || !0, l.isDrop = !1; return } function C(e, t) { s = t, k(e) } function k(e) { e && (i = e, c = i.series), l.clear(), y() } function L() { var e = l.query(i, "animationDuration"), t = l.query(i, "animationEasing"), n, o, u, f, h, p = s.polar, d, v, m, g; for (var y = 0, b = l.shapeList.length; y < b; y++)l.shapeList[y].shape == "polygon" && (v = l.shapeList[y], o = a.get(v, "seriesIndex"), n = a.get(v, "dataIndex"), f = c[o], u = f.data[n], h = l.deepQuery([u, f, i], "polarIndex"), d = p.getCenter(h), m = d[0], g = d[1], r.modShape(l.shapeList[y].id, {scale: [.1, .1, m, g]}, !0), r.animate(v.id, "").when((l.query(f, "animationDuration") || e) + n * 100, {scale: [1, 1, m, g]}).start(l.query(f, "animationEasing") || t)); l.animationMark(e, t) } var o = e("../component/base"); o.call(this, t, r); var u = e("./calculableBase"); u.call(this, r, i); var a = e("../util/ecData"), f = e("zrender/tool/color"), l = this; l.type = t.CHART_TYPE_RADAR; var c, h, p = l.getZlevelBase(), d, v, m = t.symbolList, g; l.animation = L, l.init = C, l.refresh = k, l.ondrop = N, l.ondragend = T, C(i, s) } return e("../chart").define("radar", t), t }), define("echarts/util/shape/chord", ["require", "zrender/tool/util", "zrender/shape/base", "zrender/shape"], function (e) { function n() { this.type = "chord" } var t = e("zrender/tool/util"), r = t.getContext(); return n.prototype = { buildPath: function (e, t) { var n = Math.PI * 2, r = t.center[0], i = t.center[1], s = t.r, o = t.source0 / 180 * Math.PI, u = t.source1 / 180 * Math.PI, a = t.target0 / 180 * Math.PI, f = t.target1 / 180 * Math.PI, l = r + Math.cos(n - o) * s, c = i - Math.sin(n - o) * s, h = r + Math.cos(n - u) * s, p = i - Math.sin(n - u) * s, d = r + Math.cos(n - a) * s, v = i - Math.sin(n - a) * s, m = r + Math.cos(n - f) * s, g = i - Math.sin(n - f) * s; e.moveTo(l, c), e.arc(r, i, t.r, o, u, !1), e.bezierCurveTo((r - h) * .7 + h, (i - p) * .7 + p, (r - d) * .7 + d, (i - v) * .7 + v, d, v); if (t.source0 === t.target0 && t.source1 === t.target1)return; e.arc(r, i, t.r, a, f, !1), e.bezierCurveTo((r - m) * .7 + m, (i - g) * .7 + g, (r - l) * .7 + l, (i - c) * .7 + c, l, c) }, getRect: function () { return {x: 0, y: 0, width: 0, height: 0} }, isCover: function (e, t, i) { if (!r.isPointInPath)return !1; if (e.__needTransform && e._transform) { var s = []; matrix.invert(s, e._transform); var o = [t, i]; matrix.mulVector(o, s, [t, i, 1]), t == o[0] && i == o[1] && (Math.abs(e.rotation[0]) > 1e-4 || Math.abs(e.position[0]) > 1e-4 || Math.abs(e.position[1]) > 1e-4 || Math.abs(e.scale[0] - 1) > 1e-4 || Math.abs(e.scale[1] - 1) > 1e-4 ? e.__needTransform = !0 : e.__needTransform = !1), t = o[0], i = o[1] } return r.beginPath(), n.prototype.buildPath.call(null, r, e.style), r.closePath(), r.isPointInPath(t, i) } }, e("zrender/shape/base").derive(n), e("zrender/shape").define("chord", new n), n }), define("echarts/util/kwargs", [], function () { function e(e, t) { var n = new RegExp("(\\/\\*[\\w\\'\\,\\(\\)\\s\\r\\n\\*]*\\*\\/)|(\\/\\/[\\w\\s\\'][^\\n\\r]*$)|()", "gim"), r = new RegExp("\\s+", "gim"), i = new RegExp("function.*?\\((.*?)\\)", "i"), s = e.toString().replace(n, "").replace(r, "").match(i)[1].split(","); return t !== Object(t) && (t = {}), function () { var n = Array.prototype.slice.call(arguments), r = n[n.length - 1]; r && r.constructor === Object ? n.pop() : r = {}; for (var i = 0; i < s.length; i++) { var o = s[i]; o in r ? n[i] = r[o] : o in t && n[i] === undefined && (n[i] = t[o]) } return e.apply(this, n) } } return e }), define("echarts/util/ndarray", ["require", "./kwargs"], function (e) { function d(e) { if (typeof e == "undefined")return "number"; switch (Object.prototype.toString.call(e)) { case"[object Int32Array]": return "int32"; case"[object Int16Array]": return "int16"; case"[object Int8Array]": return "int8"; case"[object Uint32Array]": return "uint32"; case"[object Uint16Array]": return "uint16"; case"[object Uint8Array]": return "uint8"; case"[object Uint8ClampedArray]": return "uint8c"; case"[object Float32Array]": return "float32"; case"[object Float64Array]": return "float64"; default: return "number" } } function m(e, t) { if (e.indexOf(":") >= 0) { var n = e.split(/\s*:\s*/), r = parseInt(n[2] || 1, 10), i, s; if (r === 0)throw new Error("Slice step cannot be zero"); return r > 0 ? (i = parseInt(n[0] || 0, 10), s = parseInt(n[1] || t, 10)) : (i = parseInt(n[0] || t - 1, 10), s = parseInt(n[1] || -1, 10)), i < 0 && (i = t + i), s < 0 && n[1] && (s = t + s), r > 0 ? (i = Math.max(Math.min(t, i), 0), s = Math.max(Math.min(t, s), 0)) : (i = Math.max(Math.min(t - 1, i), -1), s = Math.max(Math.min(t - 1, s), -1)), [i, s, r] } var i = parseInt(e, 10); i < 0 && (i = t + i); if (i < 0 || i > t)throw new Error(N(e)); return i = Math.max(Math.min(t - 1, i), 0), [i, i + 1, 1] } function g(e) { var t = e[0]; for (var n = 1; n < e.length; n++)t *= e[n]; return t } function y(e) { var t = 1, n = e[0]; while (n instanceof Array)n = n[0], t++; return t } function b(e) { var t = [e.length], n = e[0]; while (n instanceof Array)t.push(n.length), n = n[0]; return t } function w(e, t) { if (t == e.length - 1)return 1; var n = e[t + 1]; for (var r = t + 2; r < e.length; r++)n *= e[r]; return n } function E(e) { var t = [], n = 1, r = g(e); for (var i = 0; i < e.length; i++)n *= e[i], t.push(r / n); return t } function S(e, t) { if (e.length !== t.length)return !1; for (var n = 0; n < e.length; n++)if (e[n] !== t[n])return !1; return !0 } function x(e, t) { return "Shape (" + e.toString() + ") (" + t.toString() + ") could not be broadcast together" } function T(e) { return "Axis " + e + " out of bounds" } function N(e) { return "Index " + e + " out of bounds" } var t = e("./kwargs"), n = Array.prototype.slice; this.Int32Array = window.Int32Array || Array, this.Int16Array = window.Int16Array || Array, this.Int8Array = window.Int8Array || Array, this.Uint32Array = window.Uint32Array || Array, this.Uint16Array = window.Uint16Array || Array, this.Uint8Array = window.Uint8Array || Array, this.Float32Array = window.Float32Array || Array, this.Float64Array = window.Float64Array || Array; var r = { int32: this.Int32Array, int16: this.Int16Array, int8: this.Int8Array, uint32: this.Uint32Array, uint16: this.Uint16Array, uint8: this.Uint8Array, uint8c: this.Uint8ClampedArray, float32: this.Float32Array, float64: this.Float64Array, number: Array }, i = {int32: 4, int16: 2, int8: 1, uint32: 4, uint16: 2, uint8: 1, uint8c: 1, float32: 4, float64: 8, number: 1}, s = 0, o = 1, u = 2, a = 3, f = 4, l = 5, c = 6, h = 7, p = 8, v = function (e) { var t = arguments[arguments.length - 1]; typeof t == "string" ? this._dtype = t : this._dtype = d(e); if (e && typeof e != "string") { if (e instanceof v)return e._dtype = this._dtype, e; typeof e.length != "undefined" ? this.initFromArray(e) : typeof e == "number" && this.initFromShape.apply(this, arguments) } else this._array = new r[this._dtype], this._shape = [0], this._size = 0 }; return v.prototype = { initFromArray: function (e) { function i(e, r, s) { var o = s.length; for (var u = 0; u < o; u++)e < t - 1 ? i(e + 1, r, s[u]) : r[n++] = s[u] } var t = y(e), n = 0, s = b(e), o = g(s); return this._array = new r[this._dtype](o), i(0, this._array, e), this._shape = s, this._size = o, this }, initFromShape: function (e) { typeof e == "number" && (e = Array.prototype.slice.call(arguments)); if (e) { var t = g(e); if (this._dtype === "number") { this._array = []; var n = this._array; for (var i = 0; i < t; i++)n[i] = 0 } else this._array = new r[this._dtype](t) } return this._shape = e, this._size = g(e), this }, fill: function (e) { var t = this._array; for (var n = 0; n < t.length; n++)t[n] = e; return this }, shape: function () { return this._shape.slice() }, size: function () { return this._size }, dtype: function () { return this._dtype }, dimension: function () { return this._shape.length }, strides: function () { var e = E(this._shape), t = i[this._dtype]; for (var n = 0; n < e.length; n++)e[n] *= t; return e }, reshape: function (e) { typeof e == "number" && (e = Array.prototype.slice.call(arguments)); if (!this._isShapeValid(e))throw new Error("Total size of new array must be unchanged"); return this._shape = e, this }, _isShapeValid: function (e) { return g(e) === this._size }, resize: function (e) { typeof e == "number" && (e = Array.prototype.slice.call(arguments)); var t = g(e); if (t < this._size) this._dtype === "number" && (this._array.length = t); else if (this._dtype === "number")for (var n = this._array.length; n < t; n++)this._array[n] = 0; else { var i = new r[this._dtype](t), s = this._array; for (var n = 0; n < s.length; n++)i[n] = s[n]; this._array = i } return this._shape = e, this._size = t, this }, transpose: t(function (e, t) { var n = []; for (var r = 0; r < this._shape.length; r++)n.push(r); typeof e == "undefined" && (e = n.slice()); for (var r = 0; r < e.length; r++)if (e[r] >= this._shape.length)throw new Error(T(e[r])); if (e.length <= 1)return this; var i = n.slice(); for (var r = 0; r < Math.floor(e.length / 2); r++)for (var s = e.length - 1; s >= Math.ceil(e.length / 2); s--)i[e[r]] = e[s], i[e[s]] = e[r]; return this._transposelike(i, t) }), swapaxes: t(function (e, t, n) { return this.transpose([e, t], n) }), rollaxis: t(function (e, t, n) { if (e >= this._shape.length)throw new Error(T(e)); var r = []; for (var i = 0; i < this._shape.length; i++)r.push(i); return r.splice(e, 1), r.splice(t, 0, e), this._transposelike(r, n) }, {start: 0}), _transposelike: function (e, t) { function p(e, t, r) { var u = i[e], a = s[e], f = c[e]; if (e < o - 1)for (var l = 0; l < u; l++)p(e + 1, t + a * l, r + f * l); else for (var l = 0; l < u; l++)h[r + l] = n[t + a * l] } var n = this._array, i = this._shape.slice(), s = E(this._shape), o = i.length, u = [], a = []; for (var f = 0; f < e.length; f++) { var l = e[f]; a[f] = i[l], u[f] = s[l] } s = u, i = a, this._shape = i; var c = E(this._shape); t || (t = new v, t._shape = this._shape.slice(), t._dtype = this._dtype, t._size = this._size); var h = new r[this._dtype](this._size); return t._array = h, p(0, 0, 0), t }, repeat: t(function (e, t, n) { var r; typeof t == "undefined" ? (r = [this._size], t = 0) : r = this._shape.slice(); var i = r.slice(); r[t] *= e; if (!n) n = new v(this._dtype), n.initFromShape(r); else if (!S(r, n._shape))throw new Error(x(r, n._shape)); var s = n._array, o = w(i, t), u = i[t], a = this._array, f = o * u; for (var l = 0; l < this._size; l += f)for (var c = 0; c < o; c++) { var h = l + c, p = l * e + c; for (var d = 0; d < u; d++) { for (var m = 0; m < e; m++)s[p] = a[h], p += o; h += o } } return n }), choose: function () { console.warn("TODO") }, take: function () { console.warn("TODO") }, tile: function () { console.warn("TODO") }, _withPreprocess1: function (e, t, n, r) { var i = this._array; if (!this._size)return; if (typeof e != "undefined") { e < 0 && (e = this._shape.length + e); if (e >= this._shape.length || e < 0)throw new Error(T(e)); var s = this._shape.slice(); s.splice(e, 1); if (t && !S(s, t._shape))throw new Error(x(s, t._shape)); t || (t = new v(this._dtype), t.initFromShape(s)); var o = t._array, u = w(this._shape, e), a = this._shape[e], f = u * a; return n.call(this, o, i, f, a, u), t } return r.call(this, i) }, _withPreprocess2: function (e, t, n, r) { var i = this._array; if (!this._size)return; if (t && !S(this._shape, t._shape))throw new Error(x(this._shape, t._shape)); t || (t = new v(this._dtype), t.initFromShape(this._shape)); var s = t._array; if (typeof e != "undefined") { e < 0 && (e = this._shape.length + e); if (e >= this._shape.length || e < 0)throw new Error(T(e)); if (e >= this._shape.length)throw new Error(T(e)); var o = w(this._shape, e), u = this._shape[e], a = o * u; n.call(this, s, i, a, u, o) } else t.reshape([this._size]), r.call(this, s, i); return t }, max: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = u + o, f = t[a]; for (var l = 0; l < r; l++) { var c = t[a]; c > f && (f = c), a += i } e[s++] = f } } function t(e) { var t = e[0]; for (var n = 1; n < this._size; n++)e[n] > t && (t = e[n]); return t } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), min: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = u + o, f = t[a]; for (var l = 0; l < r; l++) { var c = t[a]; c < f && (f = c), a += i } e[s++] = f } } function t(e) { var t = e[0]; for (var n = 1; n < this._size; n++)e[n] < t && (t = e[n]); return t } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), argmax: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 0, f = u + o, l = t[f]; for (var c = 0; c < r; c++) { var h = t[f]; h > l && (l = h, a = c), f += i } e[s++] = a } } function t(e) { var t = e[0], n = 0; for (var r = 1; r < this._size; r++)e[r] > t && (n = r, t = e[r]); return n } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), argmin: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 0, f = u + o, l = t[f]; for (var c = 0; c < r; c++) { var h = t[f]; h < l && (l = h, a = c), f += i } e[s++] = a } } function t(e) { var t = e[0], n = 0; for (var r = 1; r < this._size; r++)e[r] < t && (n = r, t = e[r]); return n } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), sum: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 0, f = u + o; for (var l = 0; l < r; l++)a += t[f], f += i; e[s++] = a } } function t(e) { var t = 0; for (var n = 0; n < this._size; n++)t += e[n]; return t } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), prod: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 1, f = u + o; for (var l = 0; l < r; l++)a *= t[f], f += i; e[s++] = a } } function t(e) { var t = 1; for (var n = 0; n < this._size; n++)t *= e[n]; return t } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), mean: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 0, f = u + o; for (var l = 0; l < r; l++)a += t[f], f += i; var c = a / r; e[s++] = c } } function t(e) { var t = 0, n = e.length; for (var r = 0; r < n; r++)t += e[r]; var i = t / n; return i } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), "var": t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 0, f = u + o; for (var l = 0; l < r; l++)a += t[f], f += i; var c = a / r, h = 0; f = u + o; for (var l = 0; l < r; l++) { var p = t[f] - c; h += p * p, f += i } e[s++] = h / r } } function t(e) { var t = 0, n = e.length; for (var r = 0; r < n; r++)t += e[r]; var i = t / n, s = 0; for (var r = 0; r < n; r++) { var o = e[r] - i; s += o * o } return s / n } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), std: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = 0, f = u + o; for (var l = 0; l < r; l++)a += t[f], f += i; var c = a / r, h = 0; f = u + o; for (var l = 0; l < r; l++) { var p = t[f] - c; h += p * p, f += i } e[s++] = Math.sqrt(h / r) } } function t(e) { var t = 0, n = e.length; for (var r = 0; r < n; r++)t += e[r]; var i = t / n, s = 0; for (var r = 0; r < n; r++) { var o = e[r] - i; s += o * o } return Math.sqrt(s / n) } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), ptp: t(function () { function e(e, t, n, r, i) { var s = 0; for (var o = 0; o < this._size; o += n)for (var u = 0; u < i; u++) { var a = o + u, f = t[a], l = t[a]; for (var c = 0; c < r; c++) { var h = t[a]; h < f && (f = h), h > l && (l = h), a += i } e[s++] = l - f } } function t(e) { var t = e[0], n = e[0]; for (var r = 1; r < this._size; r++)e[r] < t && (t = e[r]), e[r] > n && (n = e[r]); return n - t } return function (n, r) { return this._withPreprocess1(n, r, e, t) } }()), sort: t(function (e, t) { e < 0 && (e = this._shape.length + e); var n; t === "ascending" ? n = function (e, t) { return e - t } : t === "descending" && (n = function (e, t) { return t - e }); var r = this._array, i = w(this._shape, e), s = this._shape[e], o = i * s, u = new Array(s); for (var a = 0; a < this._size; a += o)for (var f = 0; f < i; f++) { var l = a + f; for (var c = 0; c < s; c++)u[c] = r[l], l += i; u.sort(n); var l = a + f; for (var c = 0; c < s; c++)r[l] = u[c], l += i } return this }, {axis: -1, order: "ascending"}), argsort: t(function (e, t, n) { e < 0 && (e = this._shape.length + e); if (!this._size)return; if (n && !S(this._shape, n._shape))throw new Error(x(this._shape, n._shape)); n || (n = new v(this._dtype), n.initFromShape(this._shape)); var r = n._array, i; t === "ascending" ? i = function (e, t) { return f[e] - f[t] } : t === "descending" && (i = function (e, t) { return f[t] - f[e] }); var s = this._array, o = w(this._shape, e), u = this._shape[e], a = o * u, f = new Array(u), l = new Array(u); for (var c = 0; c < this._size; c += a)for (var h = 0; h < o; h++) { var p = c + h; for (var d = 0; d < u; d++)f[d] = s[p], l[d] = d, p += o; l.sort(i); var p = c + h; for (var d = 0; d < u; d++)r[p] = l[d], p += o } return n }, {axis: -1, order: "ascending"}), cumsum: t(function () { function e(e, t, n, r, i) { for (var s = 0; s < this._size; s += n)for (var o = 0; o < i; o++) { var u = s + o, a = u; e[u] = t[u]; for (var f = 1; f < r; f++)a = u, u += i, e[u] = e[a] + t[u] } } function t(e, t) { e[0] = t[0]; for (var n = 1; n < e.length; n++)e[n] = e[n - 1] + t[n] } return function (n, r) { return this._withPreprocess2(n, r, e, t) } }()), cumprod: t(function () { function e(e, t, n, r, i) { for (var s = 0; s < this._size; s += n)for (var o = 0; o < i; o++) { var u = s + o, a = u; e[u] = t[u]; for (var f = 1; f < r; f++)a = u, u += i, e[u] = e[a] * t[u] } } function t(e, t) { e[0] = t[0]; for (var n = 1; n < e.length; n++)e[n] = e[n - 1] * t[n] } return function (n, r) { return this._withPreprocess2(n, r, e, t) } }()), dot: function () { console.warn("TODO") }, map: function (e, t) { var n = this._array, r = this._array, i = n[0], s = n[0], o = this._size; for (var u = 1; u < o; u++) { var a = n[u]; a < i && (i = a), a > s && (s = a) } var f = s - i, l = t - e; for (var u = 0; u < o; u++)if (f === 0) r[u] = e; else { var a = n[u], c = (a - i) / f; r[u] = l * c + e } return this }, add: function (e, t) { return this.binaryOperation(this, e, s, t) }, sub: function (e, t) { return this.binaryOperation(this, e, o, t) }, mul: function (e, t) { return this.binaryOperation(this, e, u, t) }, div: function (e, t) { return this.binaryOperation(this, e, a, t) }, mod: function (e, t) { return this.binaryOperation(this, e, f, t) }, and: function (e, t) { return this.binaryOperation(this, e, l, t) }, or: function (e, t) { return this.binaryOperation(this, e, c, t) }, xor: function (e, t) { return this.binaryOperation(this, e, h, t) }, equal: function (e) { return this.binaryOperation(this, e, p, out) }, binaryOperation: function (e, t, n, r) { var i = [], d = typeof e == "number", m = typeof t == "number"; if (d) i = t._shape.slice(); else if (m) i = e._shape.slice(); else { var g = e._shape.length - 1, y = t._shape.length - 1, b = e, E = t; while (g >= 0 && y >= 0) { if (e._shape[g] == 1) i.unshift(t._shape[y]), b = e.repeat(t._shape[y], g); else if (t._shape[y] == 1) i.unshift(e._shape[g]), E = t.repeat(e._shape[g], y); else { if (t._shape[y] != e._shape[g])throw new Error(x(e._shape, t._shape)); i.unshift(e._shape[g]) } g--, y-- } for (var T = g; T >= 0; T--)i.unshift(e._shape[T]); for (var T = y; T >= 0; T--)i.unshift(t._shape[T]); e = b, t = E } if (!r) r = new v(this._dtype), r.initFromShape(i); else if (!S(i, r._shape))throw new Error(x(i, r._shape)); var N = r._array, C, k, L, A; d ? (C = t._shape.length - 1, k = !1, L = e, A = t._array) : m ? (C = e._shape.length - 1, k = !0, A = t, L = e._array) : (C = Math.abs(e._shape.length - t._shape.length), k = e._shape.length >= t._shape.length, L = e._array, A = t._array); var O = w(i, C), M = i[C], _ = O * M, D = r._size / _, P, H, B, j = 0; if (k)if (m)for (var F = 0; F < D; F++)for (var T = 0; T < _; T++) { P = L[j], H = A; switch (n) { case s: B = P + H; break; case o: B = P - H; break; case u: B = P * H; break; case a: B = P / H; break; case f: B = P % H; break; case l: B = P & H; break; case c: B = P | H; break; case h: B = P ^ H; break; case p: B = P == H; break; default: throw new Error("Unkown operation " + n) } N[j] = B, j++ } else for (var F = 0; F < D; F++)for (var T = 0; T < _; T++) { P = L[j], H = A[T]; switch (n) { case s: B = P + H; break; case o: B = P - H; break; case u: B = P * H; break; case a: B = P / H; break; case f: B = P % H; break; case l: B = P & H; break; case c: B = P | H; break; case h: B = P ^ H; break; case p: B = P == H; break; default: throw new Error("Unkown operation " + n) } N[j] = B, j++ } else if (d)for (var F = 0; F < D; F++)for (var T = 0; T < _; T++) { P = L, H = A[j]; switch (n) { case s: B = P + H; break; case o: B = P - H; break; case u: B = P * H; break; case a: B = P / H; break; case f: B = P % H; break; case l: B = P & H; break; case c: B = P | H; break; case h: B = P ^ H; break; case p: B = P == H; break; default: throw new Error("Unkown operation " + n) } N[j] = B, j++ } else for (var F = 0; F < D; F++)for (var T = 0; T < _; T++) { P = L[j], H = A[T]; switch (n) { case s: B = P + H; break; case o: B = P - H; break; case u: B = P * H; break; case a: B = P / H; break; case f: B = P % H; break; case l: B = P & H; break; case c: B = P | H; break; case h: B = P ^ H; break; case p: B = P == H; break; default: throw new Error("Unkown operation " + n) } N[j] = B, j++ } return r }, neg: function () { var e = this._array; for (var t = 0; t < this._size; t++)e[t] = -e[t]; return this }, sin: function () { return this._mathAdapter(Math.sin) }, cos: function () { return this._mathAdapter(Math.cos) }, tan: function () { return this._mathAdapter(Math.tan) }, abs: function () { return this._mathAdapter(Math.abs) }, log: function () { return this._mathAdapter(Math.log) }, sqrt: function () { return this._mathAdapter(Math.sqrt) }, ceil: function () { return this._mathAdapter(Math.ceil) }, floor: function () { return this._mathAdapter(Math.floor) }, pow: function (e) { var t = this._array; for (var n = 0; n < this._size; n++)t[n] = Math.pow(t[n], e); return this }, _mathAdapter: function (e) { var t = this._array; for (var n = 0; n < this._size; n++)t[n] = e(t[n]); return this }, round: function (e) { e = Math.floor(e || 0); var t = Math.pow(10, e), n = this._array; if (e === 0)for (var r = 0; r < this._size; r++)n[r] = Math.round(n[r]); else for (var r = 0; r < this._size; r++)n[r] = Math.round(n[r] * t) / t; return this }, clip: function (e, t) { var n = this._array; for (var r = 0; r < this._size; r++)n[r] = Math.max(Math.min(n[r], t), e); return this }, get: function (e, t) { function l(e, t) { var r = i[e], s = n[e]; if (e < o - 1)if (r[2] > 0)for (var c = r[0]; c < r[1]; c += r[2])l(e + 1, t + s * c); else for (var c = r[0]; c > r[1]; c += r[2])l(e + 1, t + s * c); else if (r[2] > 0)for (var c = r[0]; c < r[1]; c += r[2])for (var h = 0; h < s; h++)u[f++] = a[c * s + h + t]; else for (var c = r[0]; c > r[1]; c += r[2])for (var h = 0; h < s; h++)u[f++] = a[c * s + h + t] } typeof e == "number" && (e = e.toString()); var n = E(this._shape), r = this._parseRanges(e), i = r[0], s = r[1]; if (i.length > this._shape.length)throw new Error("Too many indices"); var o = i.length, u; s.length ? (t = new v(this._dtype), t.initFromShape(s), u = t._array) : u = []; var a = this._array, f = 0; return l(0, 0), s.length ? t : u[0] }, set: function (e, t) { typeof e == "number" && (e = e.toString()); var n = E(this._shape), r = this._parseRanges(e), i = r[0], s = r[1]; if (i.length > this._shape.length)throw new Error("Too many indices"); var o = typeof t == "number", u = i.length, a = this._array; if (o)var f = t; else { if (!S(s, t.shape()))throw new Error(x(s, t.shape())); var f = t._array } var l = 0, c = function (e, t) { var r = i[e], s = n[e]; if (e < u - 1)if (r[2] > 0)for (var h = r[0]; h < r[1]; h += r[2])c(e + 1, t + s * h); else for (var h = r[0]; h > r[1]; h += r[2])c(e + 1, t + s * h); else if (r[2] > 0)for (var h = r[0]; h < r[1]; h += r[2])for (var p = 0; p < s; p++)o ? a[h * s + p + t] = f : a[h * s + p + t] = f[l++]; else for (var h = r[0]; h > r[1]; h += r[2])for (var p = 0; p < s; p++)o ? a[h * s + p + t] = f : a[h * s + p + t] = f[l++] }; return c(0, 0), this }, insert: t(function (e, t, n) { var i = this._array, s = !1; typeof e == "number" && (e = [e], s = !0), typeof t == "number" ? t = new v([t]) : t instanceof Array && (t = new v(t)), typeof n == "undefined" && (this._shape = [this._size], n = 0); var o = e[0], u = this._shape[n]; for (var a = 0; a < e.length; a++) { e[a] < 0 && (e[a] = u + e[a]); if (e[a] > u)throw new Error(N(e[a])); if (e[a] < o)throw new Error("Index must be in ascending order"); o = e[a] } var f = this._shape.slice(); s ? f.splice(n, 1) : f[n] = e.length; var l = t._shape, c = l.length - 1, h = f.length - 1, p = t; while (c >= 0 && h >= 0) { if (l[c] === 1) p = t.repeat(f[h], c); else if (l[c] !== f[h])throw new Error(x(l, f)); c--, h-- } t = p; var d = w(this._shape, n), u = this._shape[n], m = u * d, y = this._size / m, b = e.length, E = new Uint32Array(y * b), S = 0; for (var T = 0; T < this._size; T += m)for (var a = 0; a < b; a++) { var C = e[a]; E[S++] = T + C * d } var k = this._shape.slice(); k[n] += e.length; var L = g(k); if (this._array.length < L)var i = new r[this._dtype](L); else var i = this._array; var A = this._array, O = t._array, M = E.length - 1, _ = this._size, D = E[M], P = L - 1, H = t._size - 1; while (M >= 0) { for (var a = _ - 1; a >= D; a--)i[P--] = A[a]; _ = D, D = E[--M]; for (var a = 0; a < d; a++)H < 0 && (H = t._size - 1), i[P--] = O[H--] } for (var a = _ - 1; a >= 0; a--)i[P--] = A[a]; return this._array = i, this._shape = k, this._size = L, this }), append: function () { console.warn("TODO") }, "delete": t(function (e, t) { var n = this._array; typeof e == "number" && (e = [e]); var r = this._size; typeof t == "undefined" && (this._shape = [r], t = 0); var i = w(this._shape, t), s = this._shape[t], o = i * s, u = 0; for (var a = 0; a < r; a += o) { var f = 0, l = e[0], c = 0; while (c < e.length) { l < 0 && (l += s); if (l > s)throw new Error(N(l)); if (l < f)throw new Error("Index must be in ascending order"); for (var h = f; h < l; h++)for (var p = 0; p < i; p++)n[u++] = n[h * i + p + a]; f = l + 1, l = e[++c] } for (var h = f; h < s; h++)for (var p = 0; p < i; p++)n[u++] = n[h * i + p + a] } return this._shape[t] -= e.length, this._size = g(this._shape), this }), _parseRanges: function (e) { var t = e.split(/\s*,\s*/), n = [], r = [], i = 0; for (var s = 0; s < t.length; s++)if (t[s] === "...") { var o = this._shape.length - (t.length - s); while (i <= o)n.push([0, this._shape[i], 1]), r.push(this._shape[i]), i++ } else { var u = m(t[s], this._shape[i]); n.push(u); if (t[s].indexOf(":") >= 0) { var a = Math.floor((u[1] - u[0]) / u[2]); a = a < 0 ? 0 : a, r.push(a) } i++ } for (; i < this._shape.length; i++)r.push(this._shape[i]); return [n, r] }, toArray: function () { function i(s, o) { var u = n[s]; for (var a = 0; a < u; a++)s < r - 1 ? i(s + 1, o[a] = []) : o[a] = e[t++] } var e = this._array, t = 0, n = this._shape, r = n.length, s = []; return i(0, s), s }, copy: function () { var e = new v; return e._array = n.call(this._array), e._shape = this._shape.slice(), e._dtype = this._dtype, e._size = this._size, e }, constructor: v }, v.range = t(function (e, t, i, s) { var o = n.call(arguments), u = o[o.length - 1]; if (typeof u == "string") { var s = u; o.pop() } o.length === 1 ? (t = o[0], i = 1, e = 0) : o.length == 2 && (i = 1), s = s || "number"; var a = new r[s](Math.ceil((t - e) / i)), f = 0; for (var l = e; l < t; l += i)a[f++] = l; var c = new v; return c._array = a, c._shape = [a.length], c._dtype = s, c._size = a.length, c }), v.zeros = t(function (e, t) { var n = new v(t); return n.initFromShape(e), n }), v }), define("echarts/chart/chord", ["require", "../util/shape/chord", "../component/base", "./calculableBase", "../util/ecData", "zrender/tool/util", "zrender/tool/vector", "../util/ndarray", "../chart"], function (e) { function n(n, r, i, s, o) { function F() { u.selectedMap = {}, w = [], b = null; var e = [], n = 0; for (var r = 0, s = g.length; r < s; r++)if (g[r].type === u.type) { b || (b = g[r], u.reformOption(b)); var a = m(g[r].name); u.selectedMap[g[r].name] = a; if (!a)continue; w.push(g[r]), u.buildMark(g[r], r, o), e.push(g[r].matrix), n++ } if (!b)return; if (!w.length)return; var f = i.getWidth(), l = i.getHeight(), c = Math.min(f, l); E = b.data, S = b.startAngle, S %= 360, S < 0 && (S += 360), x = b.clockWise, T = u.parsePercent(b.radius[0], c / 2), N = u.parsePercent(b.radius[1], c / 2), C = b.padding, k = b.sort, L = b.sortSub, O = b.showScale, M = b.showScaleText, A = [u.parsePercent(b.center[0], f), u.parsePercent(b.center[1], l)]; var h = b.itemStyle.normal.chordStyle.lineStyle.width - b.itemStyle.normal.lineStyle.width; _ = h / t / T / Math.PI * 180, D = new p(e), D = D._transposelike([1, 2, 0]); var d = I(D, E); D = d[0], E = d[1]; var v = D.shape(); if (v[0] !== v[1] || v[0] !== E.length)throw new Error("Data not valid"); if (v[0] === 0 || v[2] === 0)return; D.reshape(v[0], v[1] * v[2]); var y = D.sum(1), B = y.mul(1 / y.sum()), j = v[0], F = v[1] * v[2], W = B.mul(360 - C * j), X = D.div(D.sum(1).reshape(j, 1)); X = X.mul(W.sub(_ * 2).reshape(j, 1)); switch (k) { case"ascending": case"descending": var V = W.argsort(0, k); W.sort(0, k), y.sort(0, k); break; default: var V = p.range(v[0]) } switch (L) { case"ascending": case"descending": var $ = X.argsort(1, L); X.sort(1, L); break; default: var $ = p.range(F).reshape(1, F).repeat(j, 0) } var J = V.toArray(), K = W.toArray(), Q = $.toArray(), G = X.toArray(), Y = y.toArray(), Z = [], et = (new p(j, F)).toArray(), tt = [], nt = 0, rt = 0; for (var r = 0; r < j; r++) { var it = J[r]; tt[it] = Y[r], rt = nt + K[r], Z[it] = [nt, rt]; var st = nt + _, ot = st; for (var ut = 0; ut < F; ut++) { ot = st + G[it][ut]; var at = Q[it][ut]; et[it][at] = [st, ot], st = ot } nt = rt + C } H = (new p(j, j, n)).toArray(), P = [], q(Z, tt), et = (new p(et)).reshape(j, j, n, 2).toArray(), R(et, D.reshape(v).toArray()); var d = z(tt); O && U(d[0], d[1], Z, (new p(d[0])).sum() / (360 - C * j)) } function I(e, t) { var n = [], r = []; for (var i = 0; i < t.length; i++) { var s = t[i].name; u.selectedMap[s] = m(s), u.selectedMap[s] ? r.push(t[i]) : n.push(i) } n.length && (e = e["delete"](n, 0), e = e["delete"](n, 1)); if (!e.size())return [e, r]; n = []; var o = [], a = e.shape(); e.reshape(a[0], a[1] * a[2]); var f = e.sum(1).toArray(); e.reshape(a); for (var i = 0; i < r.length; i++)f[i] === 0 ? n.push(i) : o.push(r[i]); return n.length && (e = e["delete"](n, 0), e = e["delete"](n, 1)), [e, o] } function q(e, t) { function f(e) { return function () { s && clearTimeout(s), s = setTimeout(function () { for (var t = 0; t < n; t++) { P[t].style.opacity = t === e ? 1 : .1, i.modShape(P[t].id, P[t]); for (var s = 0; s < n; s++)for (var o = 0; o < r; o++) { var u = H[t][s][o]; u && (u.style.opacity = t === e || s === e ? .5 : .03, i.modShape(u.id, u)) } } i.refresh() }, 50) } } function c() { return function () { s && clearTimeout(s), s = setTimeout(function () { for (var e = 0; e < n; e++) { P[e].style.opacity = 1, i.modShape(P[e].id, P[e]); for (var t = 0; t < n; t++)for (var s = 0; s < r; s++) { var o = H[e][t][s]; o && (o.style.opacity = .5, i.modShape(o.id, o)) } } i.refresh() }, 50) } } var n = E.length, r = w.length, s, o = u.query(b, "itemStyle.normal.label.show"), a = u.query(b, "itemStyle.normal.label.color"); for (var p = 0; p < n; p++) { var d = E[p], m = e[p], g = (x ? 360 - m[1] : m[0]) + S, C = (x ? 360 - m[0] : m[1]) + S, k = { id: i.newShapeId(u.type), shape: "sector", zlevel: y, style: { x: A[0], y: A[1], r0: T, r: N, startAngle: g, endAngle: C, brushType: "fill", opacity: 1, color: v(d.name) }, highlightStyle: {brushType: "fill"} }; k.style.lineWidth = u.deepQuery([d, b], "itemStyle.normal.lineStyle.width"), k.highlightStyle.lineWidth = u.deepQuery([d, b], "itemStyle.emphasis.lineStyle.width"), k.style.strokeColor = u.deepQuery([d, b], "itemStyle.normal.lineStyle.color"), k.highlightStyle.strokeColor = u.deepQuery([d, b], "itemStyle.emphasis.lineStyle.color"), k.style.lineWidth > 0 && (k.style.brushType = "both"), k.highlightStyle.lineWidth > 0 && (k.highlightStyle.brushType = "both"), l.pack(k, w[0], 0, t[p], 0, d.name); if (o) { var L = [g + C] / 2; L %= 360; var O = L <= 90 || L >= 270; L = L * Math.PI / 180; var _ = [Math.cos(L), -Math.sin(L)], D = M ? 45 : 20, B = h.scale([], _, N + D); h.add(B, B, A); var j = { shape: "text", id: i.newShapeId(u.type), zlevel: y - 1, hoverable: !1, style: {x: B[0], y: B[1], text: d.name, textAlign: O ? "left" : "right", color: a} }; j.style.textColor = u.deepQuery([d, b], "itemStyle.normal.label.textStyle.color") || "#fff", j.style.textFont = u.getFont(u.deepQuery([d, b], "itemStyle.normal.label.textStyle")), i.addShape(j), u.shapeList.push(j) } k.onmouseover = f(p), k.onmouseout = c(), u.shapeList.push(k), P.push(k), i.addShape(k) } } function R(e, t) { var n = e.length; if (!n)return; var r = e[0][0].length, s = b.itemStyle.normal.chordStyle.lineStyle, o = b.itemStyle.emphasis.chordStyle.lineStyle; for (var a = 0; a < n; a++)for (var f = 0; f < n; f++)for (var c = 0; c < r; c++) { if (H[f][a][c])continue; var h = e[a][f][c][0], p = e[f][a][c][0], d = e[a][f][c][1], m = e[f][a][c][1]; if (h - m === 0 || p - m === 0) { H[a][f][c] = null; continue } var g; r === 1 ? d - h <= m - p ? g = v(E[a].name) : g = v(E[f].name) : g = v(w[c].name); var N = x ? h : 360 - d, C = x ? d : 360 - h, k = x ? p : 360 - m, L = x ? m : 360 - p, O = { id: i.newShapeId(u.type), shape: "chord", zlevel: y, style: { center: A, r: T, source0: N - S, source1: C - S, target0: k - S, target1: L - S, brushType: "both", opacity: .5, color: g, lineWidth: s.width, strokeColor: s.color }, highlightStyle: {brushType: "both", lineWidth: o.width, strokeColor: o.color} }; l.pack(O, w[c], c, t[a][f][c], 0, E[a].name, E[f].name, t[f][a][c]), H[a][f][c] = O, u.shapeList.push(O), i.addShape(O) } } function U(e, t, n, r) { for (var s = 0; s < n.length; s++) { var o = n[s][0], a = n[s][1], f = o; while (f < a) { var l = ((x ? 360 - f : f) + S) / 180 * Math.PI, c = [Math.cos(l), -Math.sin(l)], d = h.scale([], c, N + 1); h.add(d, d, A); var v = h.scale([], c, N + B); h.add(v, v, A); var m = { shape: "line", id: i.newShapeId(u.type), zlevel: y - 1, hoverable: !1, style: { xStart: d[0], yStart: d[1], xEnd: v[0], yEnd: v[1], lineCap: "round", brushType: "stroke", strokeColor: "#666" } }; u.shapeList.push(m), i.addShape(m), f += j } if (!M)continue; var g = o, b = r * 5 * j, w = p.range(0, e[s], b).toArray(); while (g < a) { var l = x ? 360 - g : g; l = (l + S) % 360; var E = l <= 90 || l >= 270, T = { shape: "text", id: i.newShapeId(u.type), zlevel: y - 1, hoverable: !1, style: { x: E ? N + B + 4 : -N - B - 4, y: 0, text: Math.round(w.shift() * 10) / 10 + t, textAlign: E ? "left" : "right" }, position: A.slice(), rotation: E ? [l / 180 * Math.PI, 0, 0] : [(l + 180) / 180 * Math.PI, 0, 0] }; u.shapeList.push(T), i.addShape(T), g += j * 5 } } } function z(e) { var t = [], n = (new p(e)).max(), r, i; n > 1e4 ? (r = "k", i = .001) : n > 1e7 ? (r = "m", i = 1e-6) : n > 1e10 ? (r = "b", i = 1e-9) : (r = "", i = 1); for (var s = 0; s < e.length; s++)t[s] = e[s] * i; return [t, r] } function W(e, t) { o = t, X(e) } function X(e) { e && (s = e, g = s.series), u.clear(), d = o.legend; if (d) v = d.getColor, m = d.isSelected; else { var t = {}, n = {}, r = 0; v = function (e) { if (n[e])return n[e]; t[e] === undefined && (t[e] = r++); for (var s = 0; s < w.length; s++)if (w[s].name === e) { n[e] = u.query(w[s], "itemStyle.normal.color"); break } if (!n[e]) { var o = E.length; for (var s = 0; s < o; s++)if (E[s].name === e) { n[e] = u.query(E[s], "itemStyle.normal.color"); break } } return n[e] || (n[e] = i.getColor(t[e])), n[e] }, m = function () { return !0 } } F() } function V(e) { var t = c.merge; e = t(e || {}, n.chord, { overwrite: !1, recursive: !0 }), e.itemStyle.normal.label.textStyle = t(e.itemStyle.normal.label.textStyle || {}, n.textStyle, { overwrite: !1, recursive: !0 }) } var u = this, a = e("../component/base"); a.call(this, n, i); var f = e("./calculableBase"); f.call(this, i, s); var l = e("../util/ecData"), c = e("zrender/tool/util"), h = e("zrender/tool/vector"), p = e("../util/ndarray"), d, v, m, g; this.type = n.CHART_TYPE_CHORD; var y = u.getZlevelBase(), b, w = [], E, S, x, T, N, C, k, L, A, O, M, _ = 0, D, P = [], H = [], B = 4, j = 4; u.init = W, u.refresh = X, u.reformOption = V, W(s, o) } e("../util/shape/chord"); var t = window.devicePixelRatio || 1; return e("../chart").define("chord", n), n }), define("echarts/chart/force", ["require", "../component/base", "./calculableBase", "../util/ecData", "zrender/config", "zrender/tool/event", "zrender/tool/util", "zrender/tool/vector", "../util/ndarray", "../chart"], function (e) { function r(r, o, u, a, f) { function Y() { y = f.legend, I = 1, $ = u.getWidth(), J = u.getHeight(), K = [$ / 2, J / 2]; var e; for (var t = 0, n = w.length; t < n; t++) { var i = w[t]; if (i.type === r.CHART_TYPE_FORCE) { w[t] = b.reformOption(w[t]), e = w[t].name || "", b.selectedMap[e] = y ? y.isSelected(e) : !0; if (!b.selectedMap[e])continue; b.buildMark(w[t], t, f), E = i; var s = b.query(i, "minRadius"), o = b.query(i, "maxRadius"); X = b.query(i, "attractiveness"), R = b.query(i, "density"), U = b.query(i, "initSize"), W = b.query(i, "centripetal"), z = b.query(i, "coolDown"), T = b.query(i, "categories"); for (var a = 0, l = T.length; a < l; a++)T[a].name && (y ? b.selectedMap[a] = y.isSelected(T[a].name) : b.selectedMap[a] = !0); k = b.query(i, "itemStyle.normal.linkStyle"), L = b.query(i, "itemStyle.emphasis.linkStyle"), N = b.query(i, "itemStyle.normal.nodeStyle"), C = b.query(i, "itemStyle.emphasis.nodeStyle"), A = b.query(i, "nodes"), O = v.clone(b.query(i, "links")), Z(A, O), B = [], j = [], F = [], D = [], P = [], F = [], S = [], x = []; var c = $ * J; q = .5 / X * Math.sqrt(c / M.length), tt(M, _), et(M, s, o) } } } function Z(e, t) { var n = [], r = 0; M = s(e, function (e, t) { if (!e)return; if (e.ignore)return; if (b.selectedMap[e.category])return n[t] = r++, !0; n[t] = -1 }); var i, o, u; _ = s(t, function (e, t) { return i = e.source, o = e.target, u = !0, n[i] >= 0 ? e.source = n[i] : u = !1, n[o] >= 0 ? e.target = n[o] : u = !1, e.rawIndex = t, u }) } function et(e, t, r) { var s = [], o = e.length; for (var a = 0; a < o; a++) { var f = e[a]; f.value !== undefined ? s.push(f.value) : s.push(1) } var l = new g(s); s = l.map(t, r).toArray(); var c = l.max(); c !== 0 && (D = l.mul(1 / c, l).toArray()); for (var a = 0; a < o; a++) { var f = e[a], p, d, w = s[a], x; f.initial !== undefined ? x = f.initial : n[f.name] !== undefined ? x = n[f.name] : x = i($ / 2, J / 2, U); var p = x[0], d = x[1]; B[a] = m.create(p, d), j[a] = m.create(p, d), H[a] = m.create(0, 0), F[a] = w * w * R * .035; var k = { id: u.newShapeId(b.type), shape: "circle", style: {r: w, x: 0, y: 0}, clickable: !0, highlightStyle: {}, position: [p, d], __forceIndex: a }, L; b.query(E, "itemStyle.normal.label.show") && (k.style.text = f.name, k.style.textPosition = "inside", L = b.query(E, "itemStyle.normal.label.textStyle") || {}, k.style.textColor = L.color || "#fff", k.style.textAlign = L.align || "center", k.style.textBaseline = L.baseline || "middle", k.style.textFont = b.getFont(L)), b.query(E, "itemStyle.emphasis.label.show") && (k.highlightStyle.text = f.name, k.highlightStyle.textPosition = "inside", L = b.query(E, "itemStyle.emphasis.label.textStyle") || {}, k.highlightStyle.textColor = L.color || "#fff", k.highlightStyle.textAlign = L.align || "center", k.highlightStyle.textBaseline = L.baseline || "middle", k.highlightStyle.textFont = b.getFont(L)), v.merge(k.style, N), v.merge(k.highlightStyle, C); if (typeof f.category != "undefined") { var O = T[f.category]; if (O) { y && (k.style.color = y.getColor(O.name)); var M = O.itemStyle; M && (M.normal && v.merge(k.style, M.normal, {overwrite: !0}), M.emphasis && v.merge(k.highlightStyle, M.emphasis, {overwrite: !0})) } } if (typeof f.itemStyle != "undefined") { var M = f.itemStyle; M.normal && v.merge(k.style, M.normal, {overwrite: !0}), M.normal && v.merge(k.highlightStyle, M.emphasis, {overwrite: !0}) } b.setCalculable(k), k.dragEnableTime = 0, k.ondragstart = b.shapeHandler.ondragstart, k.draggable = !0, S.push(k), b.shapeList.push(k); var _ = ""; if (typeof f.category != "undefined") { var O = T[f.category]; _ = O && O.name || "" } h.pack(k, {name: _}, 0, f, v.indexOf(A, f), f.name || "", f.value), u.addShape(k) } } function tt(e, t) { var n = t.length; for (var r = 0; r < n; r++) { var i = t[r]; i.weight !== undefined ? P.push(i.weight) : P.push(1); var s = { id: u.newShapeId(b.type), shape: "line", style: {xStart: 0, yStart: 0, xEnd: 0, yEnd: 0, lineWidth: 1}, clickable: !0, highlightStyle: {} }; v.merge(s.style, k), v.merge(s.highlightStyle, L), typeof i.itemStyle != "undefined" && (i.itemStyle.normal && v.merge(s.style, i.itemStyle.normal, {overwrite: !0}), i.itemStyle.emphasis && v.merge(s.highlightStyle, i.itemStyle.emphasis, {overwrite: !0})), x.push(s), b.shapeList.push(s); var o = M[i.source], a = M[i.target], i = O[i.rawIndex]; h.pack(s, E, 0, { source: i.source, target: i.target, weight: i.weight || 0 }, i.rawIndex, o.name + " - " + a.name, i.weight || 0, !0), u.addShape(s) } var f = new g(P), l = f.max(); l !== 0 && (P = f.mul(1 / l, f).toArray()) } function nt() { for (var e = 0, t = _.length; e < t; e++) { var n = _[e], r = x[e], i = S[n.source], s = S[n.target]; r.style.xStart = i.position[0], r.style.yStart = i.position[1], r.style.xEnd = s.position[0], r.style.yEnd = s.position[1] } } function rt(e) { var t = B.length, r = [], i = q * q; for (var s = 0; s < t; s++)H[s][0] = 0, H[s][1] = 0; for (var s = 0; s < t; s++)for (var o = s + 1; o < t; o++) { var u = D[s], a = D[o], f = B[s], l = B[o]; m.sub(r, l, f); var c = m.length(r); if (c > 500)continue; c < 5 && (c = 5), m.scale(r, r, 1 / c); var h = 1 * (u + a) * i / c; m.scaleAndAdd(H[s], H[s], r, -h), m.scaleAndAdd(H[o], H[o], r, h) } for (var s = 0, p = _.length; s < p; s++) { var d = _[s], v = P[s], g = d.source, y = d.target, f = B[g], l = B[y]; m.sub(r, l, f); var b = m.lengthSquare(r); if (b === 0)continue; var h = v * b / q / Math.sqrt(b); m.scaleAndAdd(H[g], H[g], r, h), m.scaleAndAdd(H[y], H[y], r, -h) } for (var s = 0, p = M.length; s < p; s++) { var w = B[s]; m.sub(r, K, w); var b = m.lengthSquare(r), h = b * W / (100 * Math.sqrt(b)); m.scaleAndAdd(H[s], H[s], r, h) } var E = []; for (var s = 0, p = B.length; s < p; s++) { var x = M[s].name; if (M[s].fixed) { m.set(B[s], Q, G), m.set(j[s], Q, G), m.set(S[s].position, Q, G), M[s].initial !== undefined && m.set(M[s].initial, Q, G), n[x] !== undefined && m.set(n[x], Q, G); continue } var w = B[s], T = j[s]; m.sub(E, w, T), T[0] = w[0], T[1] = w[1], m.scaleAndAdd(E, E, H[s], e / F[s]), m.scale(E, E, I), E[0] = Math.max(Math.min(E[0], 100), -100), E[1] = Math.max(Math.min(E[1], 100), -100), m.add(w, w, E), m.copy(S[s].position, w), x ? (n[x] === undefined && (n[x] = m.create()), m.copy(n[x], w)) : (M[s].initial === undefined && (M[s].initial = m.create()), m.copy(M[s].initial, w)) } } function it() { if (I < .01)return; rt(V), nt(); var e = {}; for (var t = 0; t < S.length; t++) { var n = S[t]; e.position = n.position, u.modShape(n.id, e, !0) } e = {}; for (var t = 0; t < x.length; t++) { var n = x[t]; e.style = n.style, u.modShape(n.id, e, !0) } u.refresh(), I *= z } function ot(e, n) { function r() { st && (it(), t(r)) } a = e, f = n, w = a.series, b.clear(), Y(), st = !0, t(r) } function ut(e) { e && (a = e, w = a.series), b.clear(), Y(), I = 1 } function at() { st = !1 } function ft() { } function lt(e) { if (!b.isDragstart || !e.target)return; var t = e.target, n = t.__forceIndex, r = M[n]; r.fixed = !0, b.isDragstart = !1, u.on(p.EVENT.MOUSEMOVE, ht) } function ct(e, t) { if (!b.isDragend || !e.target)return; var n = e.target, r = n.__forceIndex, i = M[r]; i.fixed = !1, t.dragIn = !0, t.needRefresh = !1, b.isDragend = !1, u.un(p.EVENT.MOUSEMOVE, ht) } function ht(e) { I = .8, Q = d.getX(e.event), G = d.getY(e.event) } var l = e("../component/base"); l.call(this, r, u); var c = e("./calculableBase"); c.call(this, u, a); var h = e("../util/ecData"), p = e("zrender/config"), d = e("zrender/tool/event"), v = e("zrender/tool/util"), m = e("zrender/tool/vector"), g = e("../util/ndarray"), y, b = this; b.type = r.CHART_TYPE_FORCE; var w, E, S = [], x = [], T = [], N, C, k, L, A, O, M = [], _ = [], D = [], P = [], H = [], B = [], j = [], F = [], I, q, R, U, z, W, X, V = 1 / 60, $, J, K = [], Q, G, st; b.shapeHandler.ondragstart = function () { b.isDragstart = !0 }, b.init = ot, b.refresh = ut, b.ondragstart = lt, b.ondragend = ct, b.dispose = at, b.onclick = ft, ot(a, f) } function i(e, t, n) { return [(Math.random() - .5) * n + e, (Math.random() - .5) * n + t] } function s(e, t) { var n = e.length, r = []; for (var i = 0; i < n; i++)t(e[i], i) && r.push(e[i]); return r } var t = window.requestAnimationFrame || window.msRequestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function (e) { setTimeout(e, 16) }, n = {}; return e("../chart").define("force", r), r }), define("echarts/util/mapData/params", ["require"], function (e) { function t(e) { if (!e.UTF8Encoding)return e; var t = e.features; for (var r = 0; r < t.length; r++) { var i = t[r], s = i.geometry.coordinates, o = i.geometry.encodeOffsets; for (var u = 0; u < s.length; u++) { var a = s[u]; if (i.geometry.type === "Polygon") s[u] = n(a, o[u]); else if (i.geometry.type === "MultiPolygon")for (var f = 0; f < a.length; f++) { var l = a[f]; a[f] = n(l, o[u][f]) } } } return e.UTF8Encoding = !1, e } function n(e, t) { var n = [], r = t[0], i = t[1]; for (var s = 0; s < e.length; s += 2) { var o = e.charCodeAt(s) - 64, u = e.charCodeAt(s + 1) - 64; o = o >> 1 ^ -(o & 1), u = u >> 1 ^ -(u & 1), o += r, u += i, r = o, i = u, n.push([o / 1024, u / 1024]) } return n } var r = { world: { getGeoJson: function (n) { e(["./geoJson/world_geo"], function (e) { n(t(e)) }) } }, china: { getGeoJson: function (n) { e(["./geoJson/china_geo"], function (e) { n(t(e)) }) } }, "南海诸岛": { textCoord: [126, 25], getPath: function (e, t) { var n = [[[0, 3.5], [7, 11.2], [15, 11.9], [30, 7], [42, .7], [52, .7], [56, 7.7], [59, .7], [64, .7], [64, 0], [5, 0], [0, 3.5]], [[13, 16.1], [19, 14.7], [16, 21.7], [11, 23.1], [13, 16.1]], [[12, 32.2], [14, 38.5], [15, 38.5], [13, 32.2], [12, 32.2]], [[16, 47.6], [12, 53.2], [13, 53.2], [18, 47.6], [16, 47.6]], [[6, 64.4], [8, 70], [9, 70], [8, 64.4], [6, 64.4]], [[23, 82.6], [29, 79.8], [30, 79.8], [25, 82.6], [23, 82.6]], [[37, 70.7], [43, 62.3], [44, 62.3], [39, 70.7], [37, 70.7]], [[48, 51.1], [51, 45.5], [53, 45.5], [50, 51.1], [48, 51.1]], [[51, 35], [51, 28.7], [53, 28.7], [53, 35], [51, 35]], [[52, 22.4], [55, 17.5], [56, 17.5], [53, 22.4], [52, 22.4]], [[58, 12.6], [62, 7], [63, 7], [60, 12.6], [58, 12.6]], [[0, 3.5], [0, 93.1], [64, 93.1], [64, 0], [63, 0], [63, 92.4], [1, 92.4], [1, 3.5], [0, 3.5]]], r = "", i = e[0], s = e[1]; for (var o = 0, u = n.length; o < u; o++) { r += "M " + ((n[o][0][0] * t + i).toFixed(2) - 0) + " " + ((n[o][0][1] * t + s).toFixed(2) - 0) + " "; for (var a = 1, f = n[o].length; a < f; a++)r += "L " + ((n[o][a][0] * t + i).toFixed(2) - 0) + " " + ((n[o][a][1] * t + s).toFixed(2) - 0) + " " } return r + " Z" } }, "新疆": { getGeoJson: function (n) { e(["./geoJson/xin_jiang_geo"], function (e) { n(t(e)) }) } }, "西藏": { getGeoJson: function (n) { e(["./geoJson/xi_zang_geo"], function (e) { n(t(e)) }) } }, "内蒙古": { getGeoJson: function (n) { e(["./geoJson/nei_meng_gu_geo"], function (e) { n(t(e)) }) } }, "青海": { getGeoJson: function (n) { e(["./geoJson/qing_hai_geo"], function (e) { n(t(e)) }) } }, "四川": { getGeoJson: function (n) { e(["./geoJson/si_chuan_geo"], function (e) { n(t(e)) }) } }, "黑龙江": { getGeoJson: function (n) { e(["./geoJson/hei_long_jiang_geo"], function (e) { n(t(e)) }) } }, "甘肃": { getGeoJson: function (n) { e(["./geoJson/gan_su_geo"], function (e) { n(t(e)) }) } }, "云南": { getGeoJson: function (n) { e(["./geoJson/yun_nan_geo"], function (e) { n(t(e)) }) } }, "广西": { getGeoJson: function (n) { e(["./geoJson/guang_xi_geo"], function (e) { n(t(e)) }) } }, "湖南": { getGeoJson: function (n) { e(["./geoJson/hu_nan_geo"], function (e) { n(t(e)) }) } }, "陕西": { getGeoJson: function (n) { e(["./geoJson/shan_xi_1_geo"], function (e) { n(t(e)) }) } }, "广东": { getGeoJson: function (n) { e(["./geoJson/guang_dong_geo"], function (e) { n(t(e)) }) } }, "吉林": { getGeoJson: function (n) { e(["./geoJson/ji_lin_geo"], function (e) { n(t(e)) }) } }, "河北": { getGeoJson: function (n) { e(["./geoJson/he_bei_geo"], function (e) { n(t(e)) }) } }, "湖北": { getGeoJson: function (n) { e(["./geoJson/hu_bei_geo"], function (e) { n(t(e)) }) } }, "贵州": { getGeoJson: function (n) { e(["./geoJson/gui_zhou_geo"], function (e) { n(t(e)) }) } }, "山东": { getGeoJson: function (n) { e(["./geoJson/shan_dong_geo"], function (e) { n(t(e)) }) } }, "江西": { getGeoJson: function (n) { e(["./geoJson/jiang_xi_geo"], function (e) { n(t(e)) }) } }, "河南": { getGeoJson: function (n) { e(["./geoJson/he_nan_geo"], function (e) { n(t(e)) }) } }, "辽宁": { getGeoJson: function (n) { e(["./geoJson/liao_ning_geo"], function (e) { n(t(e)) }) } }, "山西": { getGeoJson: function (n) { e(["./geoJson/shan_xi_2_geo"], function (e) { n(t(e)) }) } }, "安徽": { getGeoJson: function (n) { e(["./geoJson/an_hui_geo"], function (e) { n(t(e)) }) } }, "福建": { getGeoJson: function (n) { e(["./geoJson/fu_jian_geo"], function (e) { n(t(e)) }) } }, "浙江": { getGeoJson: function (n) { e(["./geoJson/zhe_jiang_geo"], function (e) { n(t(e)) }) } }, "江苏": { getGeoJson: function (n) { e(["./geoJson/jiang_su_geo"], function (e) { n(t(e)) }) } }, "重庆": { getGeoJson: function (n) { e(["./geoJson/chong_qing_geo"], function (e) { n(t(e)) }) } }, "宁夏": { getGeoJson: function (n) { e(["./geoJson/ning_xia_geo"], function (e) { n(t(e)) }) } }, "海南": { getGeoJson: function (n) { e(["./geoJson/hai_nan_geo"], function (e) { n(t(e)) }) } }, "台湾": { getGeoJson: function (n) { e(["./geoJson/tai_wan_geo"], function (e) { n(t(e)) }) } }, "北京": { getGeoJson: function (n) { e(["./geoJson/bei_jing_geo"], function (e) { n(t(e)) }) } }, "天津": { getGeoJson: function (n) { e(["./geoJson/tian_jin_geo"], function (e) { n(t(e)) }) } }, "上海": { getGeoJson: function (n) { e(["./geoJson/shang_hai_geo"], function (e) { n(t(e)) }) } }, "香港": { getGeoJson: function (n) { e(["./geoJson/xiang_gang_geo"], function (e) { n(t(e)) }) } }, "澳门": { getGeoJson: function (n) { e(["./geoJson/ao_men_geo"], function (e) { n(t(e)) }) } } }; return {decode: t, params: r} }), define("echarts/util/mapData/textFixed", [], function () { return { "广东": [0, -10], "香港": [10, 10], "澳门": [-10, 18], "黑龙江": [0, 20], "天津": [5, 5], "深圳市": [-35, 0], "红河哈尼族彝族自治州": [0, 20], "楚雄彝族自治州": [-5, 15], "石河子市": [-5, 5], "五家渠市": [0, -10], "昌吉回族自治州": [10, 10], "昌江黎族自治县": [0, 20], "陵水黎族自治县": [0, 20], "东方市": [0, 20], "渭南市": [0, 20] } }), define("echarts/util/mapData/geoCoord", [], function () { return {Russia: [100, 60], "United States of America": [-99, 38]} }), define("echarts/util/projection/normal", [], function () { function e(e, n) { return n = n || {}, e.srcSize || t(e, n), e.srcSize } function t(e, t) { t = t || {}, r.xmin = 360, r.xmax = -360, r.ymin = 180, r.ymax = -180; var n = e.features, i, s; for (var o = 0, u = n.length; o < u; o++) { s = n[o]; if (s.properties.name && t[s.properties.name])continue; if (s.type == "Feature") r[s.geometry.type](s.geometry.coordinates); else if (s.type == "GeometryCollection") { i = s.geometries; for (var a = 0, f = i.length; a < f; a++)r[i[a].type](i[a].coordinates) } } return e.srcSize = { left: r.xmin.toFixed(4) * 1, top: r.ymin.toFixed(4) * 1, width: (r.xmax - r.xmin).toFixed(4) * 1, height: (r.ymax - r.ymin).toFixed(4) * 1 }, e } function i(e, r, i) { function g(e, t) { d = e.type, v = e.coordinates, n._bbox = { xmin: 360, xmax: -360, ymin: 180, ymax: -180 }, m = n[d](v), u.push({ path: m, cp: t.properties.cp ? n.makePoint(t.properties.cp) : n.makePoint([(n._bbox.xmin + n._bbox.xmax) / 2, (n._bbox.ymin + n._bbox.ymax) / 2]), properties: t.properties, id: t.id }) } i = i || {}, n.scale = null, n.offset = null, e.srcSize || t(e, i), r.offset = { x: e.srcSize.left, y: e.srcSize.top, left: r.OffsetLeft || 0, top: r.OffsetTop || 0 }, n.scale = r.scale, n.offset = r.offset; var s = e.features, o, u = [], a, f; for (var l = 0, c = s.length; l < c; l++) { f = s[l]; if (f.properties.name && i[f.properties.name])continue; if (f.type == "Feature") g(f.geometry, f); else if (f.type == "GeometryCollection") { o = f.geometries; for (var h = 0, p = o.length; h < p; h++)a = o[h], g(a, a) } } var d, v, m; return u } function s(e, t) { var n, r; return t instanceof Array ? (n = t[0] * 1, r = t[1] * 1) : (n = t.x * 1, r = t.y * 1), n = n / e.scale.x + e.offset.x - 168.5, n = n > 180 ? n - 360 : n, r = 90 - (r / e.scale.y + e.offset.y), [n, r] } function o(e, t) { return n.offset = e.offset, n.scale = e.scale, t instanceof Array ? n.makePoint([t[0] * 1, t[1] * 1]) : n.makePoint([t.x * 1, t.y * 1]) } var n = { formatPoint: function (e) { return [(e[0] < -168.5 && e[1] > 63.8 ? e[0] + 360 : e[0]) + 168.5, 90 - e[1]] }, makePoint: function (e) { var t = this, r = t.formatPoint(e); t._bbox.xmin > e[0] && (t._bbox.xmin = e[0]), t._bbox.xmax < e[0] && (t._bbox.xmax = e[0]), t._bbox.ymin > e[1] && (t._bbox.ymin = e[1]), t._bbox.ymax < e[1] && (t._bbox.ymax = e[1]); var i = (r[0] - n.offset.x) * n.scale.x + n.offset.left, s = (r[1] - n.offset.y) * n.scale.y + n.offset.top; return [i, s] }, Point: function (e) { return e = this.makePoint(e), e.join(",") }, LineString: function (e) { var t = "", r; for (var i = 0, s = e.length; i < s; i++)r = n.makePoint(e[i]), i === 0 ? t = "M" + r.join(",") : t = t + "L" + r.join(","); return t }, Polygon: function (e) { var t = ""; for (var r = 0, i = e.length; r < i; r++)t = t + n.LineString(e[r]) + "z"; return t }, MultiPoint: function (e) { var t = []; for (var r = 0, i = e.length; r < i; r++)t.push(n.Point(e[r])); return t }, MultiLineString: function (e) { var t = ""; for (var r = 0, i = e.length; r < i; r++)t += n.LineString(e[r]); return t }, MultiPolygon: function (e) { var t = ""; for (var r = 0, i = e.length; r < i; r++)t += n.Polygon(e[r]); return t } }, r = { formatPoint: n.formatPoint, makePoint: function (e) { var t = this, n = t.formatPoint(e), r = n[0], i = n[1]; t.xmin > r && (t.xmin = r), t.xmax < r && (t.xmax = r), t.ymin > i && (t.ymin = i), t.ymax < i && (t.ymax = i) }, Point: function (e) { this.makePoint(e) }, LineString: function (e) { for (var t = 0, n = e.length; t < n; t++)this.makePoint(e[t]) }, Polygon: function (e) { for (var t = 0, n = e.length; t < n; t++)this.LineString(e[t]) }, MultiPoint: function (e) { for (var t = 0, n = e.length; t < n; t++)this.Point(e[t]) }, MultiLineString: function (e) { for (var t = 0, n = e.length; t < n; t++)this.LineString(e[t]) }, MultiPolygon: function (e) { for (var t = 0, n = e.length; t < n; t++)this.Polygon(e[t]) } }; return {getBbox: e, geoJson2Path: i, pos2geo: s, geo2pos: o} }), define("echarts/chart/map", ["require", "../component/base", "./calculableBase", "../util/ecData", "zrender/config", "zrender/tool/util", "zrender/tool/event", "../util/mapData/params", "../util/mapData/textFixed", "../util/mapData/geoCoord", "../util/projection/normal", "../util/projection/normal", "../util/projection/normal", "../util/projection/normal", "../chart"], function (e) { function t(t, n, r, i, s) { function j() { h.selectedMap = {}; var e = s.legend, n, r = {}, i, o, u, a = {}, f = {}; v = {}, m = {}, g = {}; var c = {}; O = !1; for (var d = 0, y = p.length; d < y; d++)if (p[d].type == t.CHART_TYPE_MAP) { p[d] = h.reformOption(p[d]), i = p[d].mapType, a[i] = a[i] || {}, a[i][d] = !0, f[i] = f[i] || p[d].mapValuePrecision, A[i] = p[d].roam || A[i], O = O || A[i], S[i] = p[d].nameMap || S[i] || {}, p[d].textFixed && l.mergeFast(k, p[d].textFixed, !0, !1), p[d].geoCoord && l.mergeFast(L, p[d].geoCoord, !0, !1), v[i] = v[i] || p[d].selectedMode; if (typeof m[i] == "undefined" || m[i]) m[i] = p[d].hoverable; if (typeof g[i] == "undefined" || g[i]) g[i] = p[d].showLegendSymbol; c[i] = c[i] || p[d].mapValueCalculation, n = p[d].name, h.selectedMap[n] = e ? e.isSelected(n) : !0; if (h.selectedMap[n]) { r[i] = r[i] || {}, o = p[d].data; for (var b = 0, E = o.length; b < E; b++) { u = $(i, o[b].name), r[i][u] = r[i][u] || {seriesIndex: []}; for (var T in o[b])T != "value" ? r[i][u][T] = o[b][T] : isNaN(o[b].value) || (typeof r[i][u].value == "undefined" && (r[i][u].value = 0), r[i][u].value += o[b].value); r[i][u].seriesIndex.push(d) } } } N = 0; for (var M in r)N++; for (var M in r) { if (c[M] && c[M] == "average")for (var E in r[M])r[M][E].value = (r[M][E].value / r[M][E].seriesIndex.length).toFixed(f[M]) - 0; w[M] = w[M] || {}, w[M].mapData ? F(M, r[M], a[M])(w[M].mapData) : C[M.replace(/\|.*/, "")].getGeoJson && (x[M] = C[M.replace(/\|.*/, "")].specialArea || x[M], C[M.replace(/\|.*/, "")].getGeoJson(F(M, r[M], a[M]))) } } function F(e, t, n) { return function (s) { if (!h)return; e.indexOf("|") != -1 && (s = I(e, s)), w[e].mapData = s, W(e, q(e, s, n), t, n), X(e, n); if (--N <= 0) { E = {}; for (var o = 0, u = h.shapeList.length; o < u; o++)h.shapeList[o].id = r.newShapeId(h.type), r.addShape(h.shapeList[o]), h.shapeList[o].shape == "path" && typeof h.shapeList[o].style._text != "undefined" && (E[h.shapeList[o].style._text] = h.shapeList[o]); r.refresh(), B ? h.animationEffect() : (B = !0, i.animation && !i.renderAsImage && h.animationMark(i.animationDuration)) } } } function I(e, t) { var n = e.replace(/^.*\|/, ""), r = t.features; for (var i = 0, s = r.length; i < s; i++)if (r[i].properties && r[i].properties.name == n) { r = r[i], n == "United States of America" && r.geometry.coordinates.length > 1 && (r = { geometry: { coordinates: r.geometry.coordinates.slice(5, 6), type: r.geometry.type }, id: r.id, properties: r.properties, type: r.type }); break } return {type: "FeatureCollection", features: [r]} } function q(t, n, r) { var i = e("../util/projection/normal"), s = [], o = w[t].bbox || i.getBbox(n, x[t]), u; w[t].hasRoam ? u = w[t].transform : u = z(o, r); var a = w[t].lastTransform || {scale: {}}, f; u.left != a.left || u.top != a.top || u.scale.x != a.scale.x || u.scale.y != a.scale.y ? (f = i.geoJson2Path(n, u, x[t]), a = l.clone(u)) : (u = w[t].transform, f = w[t].pathArray), w[t].bbox = o, w[t].transform = u, w[t].lastTransform = a, w[t].pathArray = f; var c = [u.left, u.top]; for (var h = 0, p = f.length; h < p; h++)s.push(U(t, f[h], c)); if (x[t])for (var d in x[t])s.push(R(t, n, d, x[t][d], c)); if (t == "china") { var v = ot(t, L["南海诸岛"] || C["南海诸岛"].textCoord), m = u.scale.x / 10.5, g = [32 * m + v[0], 83 * m + v[1]]; k["南海诸岛"] && (g[0] += k["南海诸岛"][0], g[1] += k["南海诸岛"][1]), s.push({ text: $(t, "南海诸岛"), path: C["南海诸岛"].getPath(v, m), position: c, textX: g[0], textY: g[1] }) } return s } function R(t, n, r, i, s) { n = I("x|" + r, n); var o = e("../util/projection/normal"), u = o.getBbox(n), a = ot(t, [i.left, i.top]), f = ot(t, [i.left + i.width, i.top + i.height]), l = Math.abs(f[0] - a[0]), c = Math.abs(f[1] - a[1]), h = u.width, p = u.height, d = l / .75 / h, v = c / p; d > v ? (d = v * .75, l = h * d) : (v = d, d = v * .75, c = p * v); var m = {OffsetLeft: a[0], OffsetTop: a[1], scale: {x: d, y: v}}, g = o.geoJson2Path(n, m); return U(t, g[0], s) } function U(e, t, n) { var r, i = t.properties.name; return L[i] ? r = ot(e, L[i]) : t.cp && (r = [t.cp[0], t.cp[1]]), k[i] && (r[0] += k[i][0], r[1] += k[i][1]), { text: $(e, i), path: t.path, position: n, textX: r[0], textY: r[1] } } function z(e, t) { var n, i, s, o, u, a, f, l = r.getWidth(), c = r.getHeight(), d = Math.round(Math.min(l, c) * .02); for (var v in t)n = p[v].mapLocation, s = n.x || s, u = n.y || u, a = n.width || a, f = n.height || f; i = h.parsePercent(s, l), i = isNaN(i) ? d : i, o = h.parsePercent(u, c), o = isNaN(o) ? d : o, typeof a == "undefined" ? a = isNaN(s) ? l - 2 * d : l - i - 2 * d : a = h.parsePercent(a, l), typeof f == "undefined" ? f = isNaN(u) ? c - 2 * d : c - o - 2 * d : f = h.parsePercent(f, c); var m = e.width, g = e.height, y = a / .75 / m, b = f / g; y > b ? (y = b * .75, a = m * y) : (b = y, y = b * .75, f = g * b); if (isNaN(s))switch (s + "") { case"center": i = Math.floor((l - a) / 2); break; case"right": i = l - a; break; default: } if (isNaN(u))switch (u + "") { case"center": o = Math.floor((c - f) / 2); break; case"bottom": o = c - f; break; default: } return {left: i, top: o, width: a, height: f, scale: {x: y, y: b}} } function W(e, n, r, i) { var o = s.legend, u = s.dataRange, f, c, w, E, S, x = t.map, T, N, C, k, L, A; for (var O = 0, M = n.length; O < M; O++) { C = l.clone(n[O]), k = l.clone(C), c = C.text, w = r[c]; if (w) { S = [w], f = ""; for (var _ = 0, D = w.seriesIndex.length; _ < D; _++)S.push(p[w.seriesIndex[_]]), f += p[w.seriesIndex[_]].name + " ", o && g[e] && o.hasColor(p[w.seriesIndex[_]].name) && h.shapeList.push({ shape: "circle", zlevel: d + 1, position: C.position, _mapType: e, style: { x: C.textX + 3 + _ * 7, y: C.textY - 10, r: 3, color: o.getColor(p[w.seriesIndex[_]].name) }, hoverable: !1 }); S.push(x), E = w.value } else { w = "-", f = "", S = []; for (var P in i)S.push(p[P]); S.push(x), E = "-" } T = u && !isNaN(E) ? u.getColor(E) : null, C.brushType = "both", C.color = T || h.getItemStyleColor(h.deepQuery(S, "itemStyle.normal.color"), w.seriesIndex, -1, w) || h.deepQuery(S, "itemStyle.normal.areaStyle.color"), C.strokeColor = h.deepQuery(S, "itemStyle.normal.borderColor"), C.lineWidth = h.deepQuery(S, "itemStyle.normal.borderWidth"), C.lineJoin = "round", C.text = J(c, E, S, "normal"), C._text = c, C.textAlign = "center", C.textColor = h.deepQuery(S, "itemStyle.normal.label.textStyle.color"), N = h.deepQuery(S, "itemStyle.normal.label.textStyle"), C.textFont = h.getFont(N), h.deepQuery(S, "itemStyle.normal.label.show") || (C.textColor = "rgba(0,0,0,0)"), A = { shape: "text", zlevel: d + 1, hoverable: m[e], position: C.position, _mapType: e, style: { brushType: "both", x: C.textX, y: C.textY, text: J(c, E, S, "normal"), _text: c, textAlign: "center", color: C.textColor, strokeColor: "rgba(0,0,0,0)", textFont: C.textFont } }, A._style = l.clone(A.style), A.highlightStyle = l.clone(A.style), C.textColor = "rgba(0,0,0,0)", k.brushType = "both", k.color = h.getItemStyleColor(h.deepQuery(S, "itemStyle.emphasis.color"), w.seriesIndex, -1, w) || h.deepQuery(S, "itemStyle.emphasis.areaStyle.color") || C.color, k.strokeColor = h.deepQuery(S, "itemStyle.emphasis.borderColor") || C.strokeColor, k.lineWidth = h.deepQuery(S, "itemStyle.emphasis.borderWidth") || C.lineWidth, k._text = c, h.deepQuery(S, "itemStyle.emphasis.label.show") ? (k.text = J(c, E, S, "emphasis"), k.textAlign = "center", k.textColor = h.deepQuery(S, "itemStyle.emphasis.label.textStyle.color") || C.textColor, N = h.deepQuery(S, "itemStyle.emphasis.label.textStyle") || N, k.textFont = h.getFont(N), k.textPosition = "specific", A.highlightStyle.color = k.textColor, A.highlightStyle.textFont = k.textFont) : k.textColor = "rgba(0,0,0,0)", L = { shape: "path", zlevel: d, hoverable: m[e], position: C.position, style: C, highlightStyle: k, _style: l.clone(C), _mapType: e }; if (v[e] && y[c] || w.selected && y[c] !== !1) A.style = l.clone(A.highlightStyle), L.style = l.clone(L.highlightStyle); if (v[e]) { y[c] = typeof y[c] != "undefined" ? y[c] : w.selected, b[c] = e; if (typeof w.selectable == "undefined" || w.selectable) A.clickable = !0, A.onclick = h.shapeHandler.onclick, L.clickable = !0, L.onclick = h.shapeHandler.onclick } typeof w.hoverable != "undefined" ? (A.hoverable = L.hoverable = w.hoverable, w.hoverable && (A.onmouseover = h.shapeHandler.onmouseover)) : m[e] && (A.onmouseover = h.shapeHandler.onmouseover), a.pack(A, { name: f, tooltip: h.deepQuery(S, "tooltip") }, 0, w, 0, c), h.shapeList.push(A), a.pack(L, { name: f, tooltip: h.deepQuery(S, "tooltip") }, 0, w, 0, c), h.shapeList.push(L) } } function X(e, t) { var n = [w[e].transform.left, w[e].transform.top]; for (var r in t)h.buildMark(p[r], r, s, {mapType: e}, {position: n, _mapType: e}) } function V(e, t, n, r) { return L[n.name] ? ot(r.mapType, L[n.name]) : [0, 0] } function $(e, t) { return S[e][t] || t } function J(e, t, n, r) { var i = h.deepQuery(n, "itemStyle." + r + ".label.formatter"); if (!i)return e; if (typeof i == "function")return i(e, t); if (typeof i == "string")return i = i.replace("{a}", "{a0}").replace("{b}", "{b0}"), i = i.replace("{a0}", e).replace("{b0}", t), i } function K(e, t) { var n, r, i, s, o; for (var u in w) { n = w[u].transform; if (!n || !A[u])continue; r = n.left, i = n.top, s = n.width, o = n.height; if (e >= r && e <= r + s && t >= i && t <= i + o)return u } return } function Q(e) { var r = e.event, i = c.getX(r), s = c.getY(r), o = c.getDelta(r), u = K(i, s); if (u) { var a = w[u].transform, f = a.left, l = a.top, h = a.width, p = a.height; geoAndPos = it(u, [i - f, s - l]), o > 0 ? (o = 1.2, a.scale.x *= o, a.scale.y *= o, a.width = h * o, a.height = p * o) : (o = 1.2, a.scale.x /= o, a.scale.y /= o, a.width = h / o, a.height = p / o), w[u].hasRoam = !0, w[u].transform = a, geoAndPos = ot(u, geoAndPos), a.left -= geoAndPos[0] - (i - f), a.top -= geoAndPos[1] - (s - l), w[u].transform = a, clearTimeout(T), T = setTimeout(nt, 100), n.dispatch(t.EVENT.MAP_ROAM, e.event, {type: "scale"}), c.stop(r) } } function G(e) { var t = e.target; if (t && t.draggable)return; var n = e.event, i = c.getX(n), s = c.getY(n), o = K(i, s); o && (D = !0, M = i, _ = s, H = o, setTimeout(function () { r.on(f.EVENT.MOUSEMOVE, Y), r.on(f.EVENT.MOUSEUP, Z) }, 50)) } function Y(e) { if (!D || !h)return; var i = e.event, s = c.getX(i), o = c.getY(i), u = w[H].transform; u.hasRoam = !0, u.left -= M - s, u.top -= _ - o, M = s, _ = o, w[H].transform = u; var a = [u.left, u.top], f = {position: [u.left, u.top]}; for (var l = 0, p = h.shapeList.length; l < p; l++)h.shapeList[l]._mapType == H && (h.shapeList[l].position = a, r.modShape(h.shapeList[l].id, f, !0)); n.dispatch(t.EVENT.MAP_ROAM, e.event, {type: "move"}), h.clearAnimationShape(), r.refresh(), P = !0, c.stop(i) } function Z(e) { var t = e.event; M = c.getX(t), _ = c.getY(t), D = !1, setTimeout(function () { P && h.animationEffect(), P = !1, r.un(f.EVENT.MOUSEMOVE, Y), r.un(f.EVENT.MOUSEUP, Z) }, 100) } function et(e) { if (!h.isClick || !e.target || P)return; var i = e.target, s = i.style._text, o = h.shapeList.length, u = i._mapType || ""; if (v[u] == "single")for (var a in y)if (y[a] && b[a] == u) { for (var f = 0; f < o; f++)h.shapeList[f].style._text == a && (h.shapeList[f].style = h.shapeList[f]._style, r.modShape(h.shapeList[f].id, h.shapeList[f])); a != s && (y[a] = !1) } y[s] = !y[s]; for (var f = 0; f < o; f++)h.shapeList[f].style._text == s && (y[s] ? h.shapeList[f].style = l.clone(h.shapeList[f].highlightStyle) : h.shapeList[f].style = h.shapeList[f]._style, r.modShape(h.shapeList[f].id, {style: h.shapeList[f].style})); n.dispatch(t.EVENT.MAP_SELECTED, e.event, {selected: y}), r.refresh() } function tt(e, t) { s = t, y = {}, b = {}, w = {}, S = {}, A = {}, x = {}, B = !1, nt(e), O && (r.on(f.EVENT.MOUSEWHEEL, Q), r.on(f.EVENT.MOUSEDOWN, G)) } function nt(e) { e && (i = e, p = i.series), h.clear(), j(), r.refreshHover() } function rt(e, t) { s.dataRange && (nt(), t.needRefresh = !0); return } function it(t, n) { return w[t].transform ? e("../util/projection/normal").pos2geo(w[t].transform, n) : null } function st(e, t) { if (!w[e].transform)return null; var n = [w[e].transform.left, w[e].transform.top]; return t instanceof Array ? (t[0] -= n[0], t[1] -= n[1]) : (t.x -= n[0], t.y -= n[1]), it(e, t) } function ot(t, n) { return w[t].transform ? e("../util/projection/normal").geo2pos(w[t].transform, n) : null } function ut(e, t) { if (!w[e].transform)return null; var n = ot(e, t); return n[0] += w[e].transform.left, n[1] += w[e].transform.top, n } function at(e) { return w[e].transform ? [w[e].transform.left, w[e].transform.top] : null } function ft() { h.clear(), h.shapeList = null, h = null, O && (r.un(f.EVENT.MOUSEWHEEL, Q), r.un(f.EVENT.MOUSEDOWN, G)) } var o = e("../component/base"); o.call(this, t, r); var u = e("./calculableBase"); u.call(this, r, i); var a = e("../util/ecData"), f = e("zrender/config"), l = e("zrender/tool/util"), c = e("zrender/tool/event"), h = this; h.type = t.CHART_TYPE_MAP; var p, d = h.getZlevelBase(), v, m, g, y = {}, b = {}, w = {}, E = {}, S = {}, x = {}, T, N, C = e("../util/mapData/params").params, k = e("../util/mapData/textFixed"), L = e("../util/mapData/geoCoord"), A = {}, O, M, _, D, P, H, B = !1; h.shapeHandler.onmouseover = function (e) { var t = e.target, n = t.style._text; E[n] && r.addHoverShape(E[n]) }, h.getMarkCoord = V, h.dispose = ft, h.init = tt, h.refresh = nt, h.ondataRange = rt, h.onclick = et, h.pos2geo = it, h.geo2pos = ot, h.getMapPosition = at, h.getPosByGeo = ut, h.getGeoByPos = st, tt(i, s) } return e("../chart").define("map", t), t }), define("echarts/util/mapData/geoJson/an_hui_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "3415", properties: {name: "六安市", cp: [116.3123, 31.8329], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@??nJ?UXUV?°U??nU@mlLVaVln@@bn@VU@xlb@l?LnKl???VI?J?UVxnI@lVL@b??°VX@?b?x?nVVUnVVnU??@kX@VwV@?al¥UUnUWa@?@w?U?LU¥lKUa@aUI@alLVaU?ˉan?WkUKm@X?V@VaX?lW@aU_UWVU?Iˉ@maˉWˉ??I@UU@WWU@U@@UU@VkV@@WUUm@UaU@??lK@IUK?L@KWmXUWaXI@?@a@a@U@U@KV¥lw?k°b2JVIVKlV@UX?la?Ul`?UVLVVVU?J?U@Lnm@_VK@KUIW@?J@Xk@WW@U??m?m?XmWk@?kK@aUU?Vmmk?UwUmWL???@WmU@??UJmUULkKWakLWVkI?l?wUL??W@X°l?UJ@°UL??WV?wmJ@bmbˉVk?m@@W?kWmˉw?L@lkX?WmX?ymˉUImJUbkV?@Vnˉ?@V@lUb?@mk?@maUxmlUbULWn@J?LmKUkWKkwUK?bm?X?WxkVUKmLkVV?@JUUWL@xkJUU?V@X@VVlUbVX@xk¤?x???xWxn??nn@T??JVb°aVn?@?mlnXU?JlbVlkz@?l?U?l?XJmxVxXnWxXèWlU?@?UxU@VX@xUL@?U?mLnV@lWXk@@JlbXblnlJ"], encodeOffsets: [[118710, 33351]] } }, { type: "Feature", id: "3408", properties: {name: "安庆市", cp: [116.7517, 30.5255], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@n°?znW?XlW@k?K°xXn?l@Xn@l?°Una@anI?xXU??VK@ˉVIk?WˉX@??VK?x?klJXUlKXblLVKnVVI??V@Xn?@??XKVnVxl?nn?UlmV@2óUkV?lW?b??l???n@VVVIn@lw@WVIXblV?@èx?aUaVIVVnKVL?K??ln@b2K@?U£?????Y?b?K?a@Im@????@kWókkmK?nóJ?U?£?W@w??@w??ˉˉ?UkK±lˉU?¥U?k?YU??Y¥ˉ??J?IU?VbUlˉèV?VJU?Vb@bkLUl@?VJ@bUX??@lkVmXmKkLVx?????V?L@VkVV?Vl?zW?kbmLUUUbVbUV??lònJlUnLllUL@bU?Vx?l?LXV?|èVU|WJ"], encodeOffsets: [[118834, 31759]] } }, { type: "Feature", id: "3411", properties: {name: "滁州市", cp: [118.1909, 32.536], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@??@`nnl@?x?K@X°KXV?IXVlbXVWnX?lL@?è??LVan@VJ?êVVn@??X@laTbVa?yn@?_?xnWVXnWl@VnUVkI@l?nXKVLVV@V@?kW@LlV??@J@bVnnKnkVa@?l?@?nw?Kma?UUUV??@n?mWXalI@alVn@VwUaVU?@?nla?JnU?VVXlJ?aXXVK@U?V@VWx@nXVW?XV?UlLUbV?ULVVnUVbUbVb?@@a?K?nnKVK@U@UU@@a?@V?°ˉèJVIl?@a?a??UaVKU_@mkxUI@a?UlyU@@??wkKWmUbUnUVWbkJW_?J@b?n@Vm@@KULk@V@@bVb?m@LW@UVVbkK@UkKWL@VULUKWIUJUbkK@_WVXU?Jka@X?V?a@k?y@aVIUUW@@m?UlL?KW?UKVan@UkVmmIXK?aVaUwVU@UmykUˉ@±UUL@WUIV?UU@KkIWa?aU@kUUa??U?ó?mK?kˉ@?y@kWK@bkIˉ`mn?lˉXWlkVUzUJlbUbVJl@nnm?@VULV`XnW??bmUUn?JmUkn?Jˉkm@?yk@kU?x?L@VUbmnn¤lX@`?z@JmaULUVl@Xn@xllkXWa?aW@UVmU?b?@mVX?WxXbWbU??ònVVnVVUL"], encodeOffsets: [[120004, 33520]] } }, { type: "Feature", id: "3418", properties: {name: "宣城市", cp: [118.8062, 30.6244], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@Vb@?XL?JXxlIXxlVlV@I2¤?nlUnV?U@VULWVUJ@Lnb@lV@UnV@@VVVlLnbnJ?UVkUUVWn@@anUVnVJVIV??@@nUJVbUb??@VUbVK@bn@VbnIlxkllXVlXKWUXUlL°¤UVVb@b??UlkXW??xXz@??Ila?Ul?nUlJVInV?J?U?LVUnV?K°@VnlVnxV@XLlK@wVL@KnUlJXU?bnKVLX?l?Uw@?VWlLXKm@@a?@VLnmlIVVnKn@?kVa?Vlwk@@a@k@?VIUa??@?maUa@wna@kmW??UUmVUIV???@a?Km??a??kU?J@In?mUUaVa?k?lX@Vk@m@?VU@wnK@alKVUkUkK?bmUkm?@U£WVk@@UYb?b?a?x@b?@WVUaˉ?@wVwUUV@VwnK@KWa??@K?IUyUI@WmXó?UbWa?Km??@km@IUy?IUaWK?x@zUKUL@llVUnkLVVkJWX@VUKUV?IkVWakb@VWb@n@JkXUlmL@xkL@`Vx?LUèUJ@Vm@@bmIUlUL@VUVVbknm@mKUw?KVè@J@L?V±kkJUI?l"], encodeOffsets: [[120803, 31247]] } }, { type: "Feature", id: "3412", properties: {name: "阜阳市", cp: [115.7629, 32.9919], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@V?n??@?a?k°a?±@??¥@UUI@aUmlwUU?x?b@¥XU@mmI@a@Kn@@_W@@W?I@m?UVVXUl@XaV@?K@I@a?LX?@aVI°K@KVL?UUw?yXk?K@k?K?bXnlK@k@a?JlU@w@U@?@aXKW?n_?JXkVKn?@?°LlKX?W@ˉU??@aUK@kmJUw?V?IUJ??k?mL?K@kka@wUVm@@am@UkUbkK@nmV?òˉVU?WV?VmI??ULk@??ma@kkK??@nUbUamU?`UUVUkKVkk?W@@bkm?n?mUXVKXV?L@V?bU?m??bVX?J@nmK?I@KWKUXVJUL@VUKUX@KUKWL@LUJmaXXm@kVVV@L@VUL@VlK@L@V@LUK@VUb@UUU@°@nVxU`?Lkn@`@XVJ@X?Vm?k@UKmVˉLVV?n±W??m@Ub@JlLUl?@VLk?@lmVVn@bnV@V°IV??aVJXI°K°V@XXVlVVU?n?KVlU??bWXnV@bV`U??@@?m@@??@nxmn@bXVlL@¤nb?Ul|?VVUnJVU?Vl@@bTL"], encodeOffsets: [[118418, 34392]] } }, { type: "Feature", id: "3413", properties: {name: "宿州市", cp: [117.5208, 33.6841], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@@UWU@bkW@aWU@aUIkWV?lLXb?lVIUVV@?mn@V_n@VaUK@I?@Ua?anJVU?@lV?UVnnKVVlaUa?I@wnK?Lnll@nVlk@wVKXkl@@b?bUJ@V?U@U?UUyVk@aVUXwlWXX?WU1@aU?@WUI@mlU?n?J@Il@?aXbV@VKl@XxVL@W?I?Jlb?@?al@?IUUm@@aVK@¥ˉ?@mU?ˉbW?k£Vm@a?km@Va?@UVWa?@U??JWk?J?U?bWbU@Ul?Xk@?amV@Kˉnk@?lU@Uxmz@bU`?bUb?Vm£U@Ww?x@akLUK@UlakwUJWVkLmaUal@n_?mVUnKVUUm?XWa?@kJmx@XUJ@bVLXxl@VVUVV?UbkLWbU@@lUVV?VVX??K@XkJ@nU@@bV@VxUVlb?U@xXLW?n@UxVbV??V@b@XV`mnkJ@kUKmb?aU@Vbnb?x@XU@@`k@@bl??@@bkL@W?akXWaU@Vmkx@XWW@?@wUUUb?J?UˉV?@ˉTU@WxX?lL@bkb@?lVln?b?JW@kkU@mbkaWJ?IVlmzˉ`UnU@mb?@@??`@bkVl?nV@b@?V@?aVxn@Vx?KXnl@nbVK?bVK@a?_V@V??w@W?LlwnK@UmIU@VW?@?Uè@lKnal??w?@@V°@?aUmlUUw@???V@@UXK"], encodeOffsets: [[119836, 35061]] } }, { type: "Feature", id: "3410", properties: {name: "黄山市", cp: [118.0481, 29.9542], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@lXnlWX@VUJVnUJVzXJVx?kVJlI2l?U@K@IU??LVxnLn@lmUaVU@UVKVknJ@an@@UVIV??KUw@_lK@wnKVklW@I@mXa@UlaXblU?JVUVL@UXWlIUUlKVmkU@kVKVL@y?wXLVb?JVz@Jln?@n??LXbVa??nW@?la@UVWUa@?@a@mk@WIk@VwUaˉ¥m@UUVK@ImK@aX£??kK???V?a???_@±?akXWW?L???nU@@a@ˉmK@L?J?UWwUV?VmbXX@lWLn`mzUJUb?L??k@makVWmkX?ambkKkn?a?@?a?b@?U@Unm@??WV?@??VbUbUJWIk@@lmL@°UVUVm?n??@@kmWkb@x?_m@@aU@?b@Jl?Uz?lWxXn?@?b2@l`?IVl?UlL@V?K?nVbUl@VlIn@@b?bVWUk?@@bX@Valb@bnb°Vn@?xVKlbVn?V@V?x?L@ln@UXVV?L??"], encodeOffsets: [[120747, 31095]] } }, { type: "Feature", id: "3414", properties: {name: "巢湖市", cp: [117.7734, 31.4978], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@VV@blL@?XlWnn?n???@VXXl@@W?IX@VJ@L?x?xln??@bXJVblX@VVbUVn@VbUVlb@LnJVbVLV?XL?òVL?ò?V?bVIVylUXk°W?knm°_lJ@aXL@l?z°@?lnL??V?è?VUUaVKU?@WW@@UUa@knmVLlaV@?a@k?ak±@UmwkKmk???YUUkL@mlIVmnYWkkUY@?K???a@??mma?@mX?¤ˉU?w@?@?UU@bU±±L@akm???LUKmLUUUJVb?b?w?@kUWaUJ@Xkxm@UJUUm@??k????akXU?Vl±?U@kn"], encodeOffsets: [[119847, 32007]] } }, { type: "Feature", id: "3416", properties: {name: "亳州市", cp: [116.1914, 33.4698], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@lU@Un@@anUlw@KVmUwlaX_lKna@KU@@kWKUU@ankW?XK?@@V2VVIèU@al@VaèamK@wU?@klaU?V@X?VUU?WUUbkmUkV?mk@aèw@mWU@VkIkVWKU??X?oUˉl?@kkLWm?a?L@l?LWl?zVx?VUK@LˉLUJ@bW??K@b@J?LU@Wbk@WVUU?V@n?J@XX@@`m@@L@bnJ@nWV@|?a?wVVkxVn@bVJ@V?|@??2ˉb?l?b?@m?U?U???@??|Xb?UV`@nnxUxWLkUkVWKkV@XV@@VVL@VX?@lVV@L@blL@`?L@xXKVL?@?VnU?@lwnU@ml@XnV@@UVW°Lnal?UI@aUK@a?a@U?kXW@I@mWL@UXK@UVW@U?@@k?Wn??@@V?@XblaVx?L@bVKXb?IlJ"], encodeOffsets: [[119183, 34594]] } }, { type: "Feature", id: "3417", properties: {name: "池州市", cp: [117.3889, 30.2014], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?V°°??@x??@x?X?¤?V?I?mnLllX?@l??ü?n@@J?b?L?a?T??°VVUUKVanK@UV@VL?VVn?ln@?xnklxXamk@WV@Xa?@naVk?Kl?k?@mkUWwkJWw?IWK@?UaUwWIUyVIUmVI@UXWmkkW???KUUVWm@@k?K?w@U?UUmkaUL?wm@ˉUma@akaUbW@@a?@VlUX?a@am@kJ@UVkUa?m?L@UkK?VUk?Jk_±@?a?@WmXw?kkaVaUa±??wV@Vk?wnyUaW@UUˉamLk@m??@kmmU??ˉK@L@lUXˉ?WlkX??Vb?b?VUL@J@LVKn?lJXnlb@`nXlalV@bnL@Vnb??@lXbWlkL?K@zUJmIUxUVUVmX", "@@llUL@Vlx?L@a@U?wXaˉ@"], encodeOffsets: [[119543, 30781], [120061, 31152]] } }, { type: "Feature", id: "3401", properties: {name: "合肥市", cp: [117.29, 32.0581], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?L?xV??LTk?VlVV?XaWaXwW?nU?@?anVVUX@?bXblWkk@wWmk@VUVKnb@I?y@_kWm£nmVa@U?K?wlVl@?zn@°l?IlmnV?IVmnV?aX?WmU_VK@Un?mmk@UIVaka?a?U??UK??WKU?UKUamI@KkaVUUam@VUUa@UkWUaWI@a??kmōw?wUL@`mn@K?V?IUVUUUK?Vk_?VkbW?@VkUULUJ±Iˉa?lkxU|@L@V@V@b@b@?WJXbWVXn@L?KVL@JkL??V@Vbn@VV@XU@UlV@@VV@V@XXV@@V?J°?°Xnb°@?JUVVXV`@bkXW?UbU@W?n@VLXlm?°bV?UbkK@bVJ@bVbkLV|?K?V@x@?XbmVVVk|"], encodeOffsets: [[119678, 33323]] } }, { type: "Feature", id: "3403", properties: {name: "蚌埠市", cp: [117.4109, 33.1073], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@VòXLlUlJ@UXV@n?x@bnlU?VllnVaXVV?UVW?U@V?2wVV@Vl@?VnwlI?@Xb?WVnUVmLUV?nm`k@VbnblKXUVIlxkb@VVLlK@b?wXxV@n¤?UVaèaV_@anyVwV@?kl@°m@LnU?bl@?WVkV@Xa?a?V?IXl?IV??@XbVU?@XKWwUkmW@_UmnIlJXkWKXmV@?w@_XV@Kl@kU@KlX@?@UUUUKWL?m@klJVUUmk@mXUWmX?w?`m@?zUbYakbW@??m@UU?éUIm@Ub?K??@?kKW?XmWUkaWU?JWUˉL@W?L?wk@mm@_???l?UVkmWUn?V@VWLUb?b??ˉl"], encodeOffsets: [[119543, 33722]] } }, { type: "Feature", id: "3402", properties: {name: "芜湖市", cp: [118.3557, 31.0858], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?bVaV@XllLXU°?lL@V@VUnVlˉIk??VUVU@@b@lUXUWmb?n@??b???LT@lVXlmTUnkJ@nlKVV?TXklWVaVI@aUKn?lL@Kn@?XXwlm@mn?°@?V@?Wy?wX?lWVk??@aUaVUˉ£kKWVXVWLUkkWlkkwmJUam@@aULVa@U??VaUaVI@m?@U?UJUIUmmV@bm@UXVVUl?VmImakKUU@UU@VmU@@kma@KVIXUVK@U?VmUkV?m±£@JkU@nl?k??LUlmb?@WbU@@XnlWb"], encodeOffsets: [[120814, 31585]] } }, { type: "Feature", id: "3406", properties: {name: "淮北市", cp: [116.6968, 33.6896], childNum: 3}, geometry: { type: "MultiPolygon", coordinates: [["@@lnnK@|n@@V?V?@@VV@nIV?V@VW2a@b@bVnUVVV@V?z@l?@°U?V?IVaVV@x@?XX@WlwUnV@XblW?b@XlK@a?@k?@al@@_V@@W?wmaUaV@?bnaVL@llInmU_@W@a?UU?UaVwm@X?WK@w?VkaVUUwU@@aV@@mlI@W?LW?UUU?VU@kV@XalKVaU?VUUUk@WwUK@aVI@W?Uk@@UUU±xkb@lV?@xnL?bUbk@@b?VUJ±U@U?@WLX?ml@bVVXL@lV@@LmbkLW`kbVxUn@LkxmV@bm@@VkV"], ["@@VVVkV@?¥@UV@U@VUUJ?kWakKU?lXVJ@bXV@blX@aXV@V"]], encodeOffsets: [[[119183, 34594]], [[119836, 35061]]] } }, { type: "Feature", id: "3404", properties: {name: "淮南市", cp: [116.7847, 32.7722], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@°k?ī?aVaXK@U?UVmnXUl?V?kVKUUUmmU??kU?UYl?KU??w?K?bU@UxW@@l??mVUUVmUU?m?w?aW?kLˉK@?m?ULWl?Im`X?WL@b@?@V@xkV?I@b@l@lk?V°?1?W"], encodeOffsets: [[119543, 33722]] } }, { type: "Feature", id: "3405", properties: {name: "马鞍山市", cp: [118.6304, 31.5363], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@??nllLnxV@laXLVKma?aXbVI?bVKVVVIVyn@n_??W@@??UnJlUVVX?lLnaUWl?V@VV?IXW@_W@XK@K@UVUUwVam?Xmmw?w?KUnUK??U@?J?Uˉ@m?@nknWx?Wm@@LkKm?VL@bUJUbkXWl"], encodeOffsets: [[121219, 32288]] } }, { type: "Feature", id: "3407", properties: {name: "铜陵市", cp: [117.9382, 30.9375], childNum: 3}, geometry: { type: "MultiPolygon", coordinates: [["@@?òV¤@?V2@aVV@?@??x°V?£nW?@nbnaVXVW@k@aV@VU?Ul?°JUkVm@U@UkKˉ?WVkKWkU@Ub?akwml?wm@?kUm?UUKU@@VmLUbVLUVˉU"], ["@@?LllUL@Vlx?L@a@U?wXamK"]], encodeOffsets: [[[120522, 31529]], [[120094, 31146]]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/ao_men_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "8200", properties: {name: "澳门", cp: [113.5715, 22.1583], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@HQFMDIDGBI@E@EEKEGCEIGGEKEMGSEU@CBEDAJAP@F@LBT@JCHMPOdADCFADAB@LFLDFFP@DAB@@AF@D@B@@FBD@FADHBBHAD@FAJ@JEDCJI`gFIJW"], encodeOffsets: [[116325, 22699]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/bei_jing_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "110228", properties: {name: "密云县", cp: [117.0923, 40.5121], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@vIHZDZQtDLNMXIbHRCXXITbJ@H`LGPRDDJNCLHTOCWFGvGBUJMKGFO^IHWXITQCI?Y^AXGfR?DXF`DJOLB~G\\DZIHHpErUVMhHb]\\M?BVF@FTP`@zTbD\\@~M\\K`H^EVODWICAakAQXoIcCOCIgGYNWFWNGGKKGaJEGMEIKYJUT_J_Go@_SyQaSFMEGTcYOQLIIi@EKAUPCV[EEXQCW|aMUMAaYCYNIDGGACIMGGSKDQGaF_C[GaB@GOIiOKAYL?mI@CN]F[SWWAcKKI@HMUimEKbeYQYISNUOcBKPIFBNgvDPGZYFSf]CMSIWGEUFgDIQ[MeDMJS@RR@LphFPCHaBAJKF@J]IBJO@HlO@@RKAMPJHCNDJTHFP@ZGNANBRFH@J_fM^ONJNF\\VTDJHDON@X?RND\\XRCPVETCLBVKDFJINHRGPRV@\\CLJN@VbXbLVT"], encodeOffsets: [[119561, 41684]] } }, { type: "Feature", id: "110116", properties: {name: "怀柔区", cp: [116.6377, 40.6219], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@JHTVHXCHPfnDJGHNDJSB[JSBGVSAOH@PMPuDEHHXZN@PHF@ZLJ@LHVYJA\\OFWP]BMtMBSRGV[JeVAPQVIFENMD??@^NV\\JH@NNL@NM\\kTQ\\I^FNIpBHGTBFFAZQfKDIXQTLXFXNNVMVHRGpCFLlRLEVBBH`IVO\\G`RDPAXLXBXORHZEHTDLLN@VGTMrQNFPeASKG@GMOAKBYMK@GTUHUXSHMVDNMOUEOZMJML@^KRACMZEZMRQLUHE@OFENPR@DI\\ChMHIDG\\GJMDWHCKGMDCIQCHO_K@GaIJSWWQDaGWJMNCKRsCYGYuJUSaKaW@UIMDK@[QUHOGQJMEILCAUDKFSOUQD[WMC?Q@WPMGCCIUSE[IMPMN]`e@IEGAQBMHM@YEOSGCIDMIGNOLB@QP@GkP@AI^J@ILEBIbADGEOog@KQQWSekWQQUOFKZLF@PUNmIaHIUeBCTSHENcJa@_IWSaGu`GLSBKJQFOXGDXVQVOBIHcDSJWBEFGTMH[^mLaXcHiKElTRKtFXZ`MHMPCNRDxZ?B\\ICIHK@K?HbIVFZ@BPnGTGbDXRDJaZKRiGEFSFEJhjFNZFjn"], encodeOffsets: [[119314, 41552]] } }, { type: "Feature", id: "110111", properties: {name: "房山区", cp: [115.8453, 39.7163], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@h@bl@HRJDZ``TA\\VVD^H`\\pF\\J?`JGv@ZO\\GPSTEjPTR`FnEbDTDHEhLFMTK@ETSPULKEI@OVISKSJACEQNQbV?IXGDIN@dMB[IIBcN]ZHNLP@XOWCFW?CNRHTpATD@^NVNLED@Rh@jCEF}E[OOHUEW]W@QGGDIQSH_MmFmCUT_K]i@MH?CMW?FCF?E{BMHMPOHKS]CFNGBELDH_@BcAKOACESAOBELaXAROB@FODMEDWJAG[aE@UM@DImEWJMC@OeCA{aE[@{L@MINUCQXKfUJORCHqJBF@TCXWNQX]M[EAJO@@KMBQJIC]EWMCCUBEBFHKDOTMBGNGF]MWDBRDdMDQVyE@LPVHDCP@JVVMTG~HNSH[CmRUvHPHBbA\\PTNRC\\YNJ?PRARPJDDR"], encodeOffsets: [[118343, 40770]] } }, { type: "Feature", id: "110229", properties: {name: "延庆县", cp: [116.1543, 40.5286], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@^AXOPEB[ZIGU@KKI@YGE@OYMGWFGvCNO@OPGTBHUTA\\ITACIGMIHmCOeDGGWSUIGimYEEMgiFITEFEjHLQbYCIWQaCSHmHAOY@UEaJ?G@LGLDJ[J?AwYQCDMNONGY_EWLsSQFkMO[NWAIGaIYL@HMBOKiOQDWEUDMQSF_QIUBWdg@[NaAKQ@M]OQ@WhgLUMMFYQDIRCEUZOOCIOJ[KIUMKL@HIDKVEBM`HJAJSJUdBLGNEdMBMO[BYEWJSNKNaD]PE\\SjOT_RQVEZPp?NQXf?NA~lNG`@PNLp?RFLfbdKbATUh@FSNWjGFZVLFHVA~X¨PPROfFJbNJPLFbENJPrEFNPFRHDDJdENJLVEPBJTVTHGHFRFH@PXP\\ORQHW\\BjWFDERLPPBbB\\E`B\\D\\L`@F]FCnJ^AZL"], encodeOffsets: [[119262, 41751]] } }, { type: "Feature", id: "110109", properties: {name: "门头沟区", cp: [115.8, 39.9957], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@V@XMnGPY2?JQNEhH\\AZMPDVTTDZCPiJkHSHCjIdFtEHITCNITQEKUAMCEIKCECABYESKFWAKBEIIHABGDCKCAIHMHALKEI\\CFIBILIJQZS]BBEECS@E@@C]COKI@CABAAEEDMG?CH]A[M@CJWH?JaUMRFRBDTITLUJ@PFJKLOVST@FSLENgKGFSCaCmF_ESQiOSFOT[HYPu@IH?_[IoE_[]GUC[USB__CYQI@Gakg@qZeHQNMNV\\FVLPgJAFJPRLCH[XcPELUT[JiV_EELFTADBXRTRLJC@fHXHHbPd`fR@NfT`@TLplHMpCEJHJBVLF?@JT?VnG^KXDXHNVGRLRXFJVdDHSNWLGfEzA"], encodeOffsets: [[118635, 41113]] } }, { type: "Feature", id: "110114", properties: {name: "昌平区", cp: [116.1777, 40.2134], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VNLJI\\JPPDYPFVQDCJZRNEVNhKXgR@^P@NLRbB\\Mh@XcVARJE`RTCNFV?XRCjPPLNA@GZKbJJHXB\\MNPjLdGbWnK\\]NGHSFEXATIdCJGPARUWUHCPWRELITAHKv_E@iYCaW_BQ\\Y@QIO@QDCIGZCEMWGFMFAFgHEDOCSqKCCFGAMKEAC@ODGCGs@WH@KQA@EE@CE@GEA@EH@GGUEEJEAYD@JM@@DAA@FHD@FTJEHUC@JUBKCKG@G[CIIQReAYhO@OXGDO@@FF@IHJFCPEBACBIAAKDOABXARHP?NEHGbQAAKQFGIAM[C@WHKaGiCEGOA?HUKCIokSCUSOCYN[BgGMFIR±?OZmHWNU@ShbbXDHVXXGJ^lZ@PZ\\Nb@\\FHJAD"], encodeOffsets: [[118750, 41232]] } }, { type: "Feature", id: "110115", properties: {name: "大兴区", cp: [116.4716, 39.6352], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@F\\E~DFN@BDFEpHFCHBBEGCDCJBHUDSBB@ELCPbF@B\\J@BJVAFJ\\ADKTCBGECFMT@BMN@@FH@DaNBEnvB@FPBATK@FHEFIAKFBFL@@PKBFJHC@FXBRAFCDMPDTOL@JIVFDHH@DDH@BGRFCDLD@N^@@CNA@KNOAEBCECFEGCFGMGFIPMOEJOLBADBBHGG@GCHIECY@INC@DMGS\\AIOZAAEYA@GT@KKMBEETCGMVINFxA@MJADB@FlA@HJA@NND@DFA@DVAZBBOFKH_JA@K^GBC@EFE?G@gAENMXKJigC@IbSJMqGOP£RGSMGE@kbQFDPEFiBSGGSBK]I{CDWCIDOic[C_G@SuSO@EWKCO@MNY@\\uZOPENQD[LKESSKGBKEG@EJGAGHoH¥CqhifeJkX_XFFGHFNEDFPENKHM^IFIVL^S`DVEnNnG`RTCJHH@R^XFXGVPP"], encodeOffsets: [[119042, 40704]] } }, { type: "Feature", id: "110113", properties: {name: "顺义区", cp: [116.7242, 40.1619], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@EhEBENXHFNYDJHCD@RJP@R[ZARX`DbjZF@bHXT`Jb@dIFMTGDSfAJVbGnJVM@OKELYPERVXRflXTT@NIfC\\NJRhCVEHFJXNT^DTeZEHYCOhuAMJELOdAVPTMOWBWNMNEJgl]@WGUFIC[T{EEDEHGCIGMI@SECUQI[D{A{GQESPUH]CsiMCmHUeoHENcAaDGCMDGMQCACCBaCGLMAHB@DIEQLOAAEEJ@CW@CDINGAAGKQOCgV@LG@BEGDKNeREFBNCFIDOPKD[@YRW@GFWDAFE@EHDDrLDTCPGF", "@@KrJEH[\\B@FF@CHFBHUN?AJKADGECBCMAG^E@EbI@BEGP"], encodeOffsets: [[119283, 41084], [119377, 41046]] } }, { type: "Feature", id: "110117", properties: {name: "平谷区", cp: [117.1706, 40.2052], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@ZJZRafFLjn?VGNJ@LLBdXX\\T^EDMJ@?nZKLBjPPJ@HbA\\H`DbERHLCFK^BZaFWXQLAGMHa\\OLO@SBIpBdCL?VQfElO@GSAKEDQTC@GEBKG@ORIJBDAPDFA@CaOq@GGQAAEJK@KMUGAAGEAa@MGMBGCGSIIW@WSUCMDOJeWOM@IUF{WMWaDIMgIoRoCOKeEOEAG_I[cg@wLIFENQFDVTFJ@HNDJGHCFFFS|D\\EJHV@Xk^IhMFMNAXPX"], encodeOffsets: [[119748, 41190]] } }, { type: "Feature", id: "110112", properties: {name: "通州区", cp: [116.7297, 39.8131], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@FDAJTGDNDCTDDEDBBE@DT@@EHCDGJ@EIZ@@FDBR@ATFBBVFFE@@HNA\\VE@CLIFNJFNJBCP]A@LJFA@HJEDD\\C@DBCHLAEPF@@DH@APHAERDF\\GIxDTM@CFLBBFJ@CNUPMHECGDBF]BMFPDLRBHHBJMDCX@@DFIBFPBRKJF@CGANBHKbDDABDRDHNNCHDbCdBFMpGHiOYMefKJMC}HWAUNW\\NNBNA?kNU|]HMTMN@MZBLFFF@RIRUT?BMFIEGaAGGAOIIUGTSFcYKS@MSLYPKRUBU]EWDOI]CKGASgW@MTWKIMCS@uMAKKADMECGAKVUTSDy@IjWLMNBF@h?HEF@FAD]H@LIBG`ELAPYAUB@CEB@CMC@MIB@GkB@ECAIB@NwBMEUJHNSDFFNALLS@@HZBBFYBJP[BHTCND@JMZ@FDGJHDH@GHAABCKAIPPFONEJNHEHHDEFFDADBFMP@L"], encodeOffsets: [[119329, 40782]] } }, { type: "Feature", id: "110105", properties: {name: "朝阳区", cp: [116.4977, 39.949], childNum: 2}, geometry: { type: "MultiPolygon", coordinates: [["@@bFGHBHFBFIVFHHG@@FFB@HDFF@@FRB@LXGt@DHCH@PBDLFBNF@BEXCHEX@ZQ\\@LCPOJCDEAMFEfQLMHCAFH@@KhUNE^AAEHCFDNGVODMI@AEKADEN@CSJw[HCEFQGBBOG@@CE@FOKBDGCAD@C[FCGIB@IE@K^BDOIAEMMIJEDKF@[UMB@GF@EEAUEABSQ@CA@EY@FJI@CHGD@FS@@CAFCACFSCCDCMSHBIECMB@D]@@MKCDCQEAHG@CCG@CGUEIJK@SPOCCNEDQBDNDB@DJCDLFCBBALJB@BVGPBKVO@KHCCCD@FE@BNA@FNCTDDJA@FGB@NBDW@CL@hT@@ZHHQDDDAFSAANBC@HG@EFS@@DE@@PCB@Ue@CADNJB@FCBWA@LI^ix@FIHrH"], ["@@HUN?AJKADGECBCMAG^E@EbI@BEGPKrJEH[\\B@FF@CHFB"]], encodeOffsets: [[[119169, 40992]], [[119398, 41063]]] } }, { type: "Feature", id: "110108", properties: {name: "海淀区", cp: [116.2202, 40.0239], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@plDJVL?GPBFHjDbHGL@X\\DBNHJREBLRBHaFG?MGOBQAWPBLCBBAJBDFADOIEJGE@@EP@HCPWP@ZgfBRQJJ\\D@HLHLDVA@IVDFGSI@EGC@EBB@CN@@IZCAGHGaEqGJG@EjwJ]@K@GSA@e_I@NE@CA@Kg@KC@ENCF?AKQAW@WIMK@V?@I@@F@^EDFB@HcIaDYCBRRDCHD@EFLN@FE@CJUPEJOJMTBPEDIFCMIAKNOGMRFJNDVBFLSRMJSDGJsFcEiJGDGTIlOjYD"], encodeOffsets: [[118834, 41050]] } }, { type: "Feature", id: "110106", properties: {name: "丰台区", cp: [116.2683, 39.8309], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@hMN@NFTQCFRCBJFA@HJ@@HJ@HJ\\FTACD?@@UNLXJX@@MA@@IECAQlDFEHBDI~D@GXCFMVDFCH@@NF@ANJC@FnAB@AMF@@EDCDDLGP@LUOAUH@AIABKAAEDCKID@CCACMWA@EGDEILA@OK@AELEJBFEEGL@BSOA@EuAFmMACbG@@EM@ANS@ENFDAHSDCL[BEIUBAII@A[E@OaKD@FAACTGVIACDHDAFGAEDoGEFACM@i?g@@QFCMKMU@]SCoBGSMQ?DEXXDWPO@MKYGM^AdJJA\\cNB\\G^?DNHFCBFABDBJ@PL^D@DF@T@FDAF^A"], encodeOffsets: [[118958, 40846]] } }, { type: "Feature", id: "110107", properties: {name: "石景山区", cp: [116.1887, 39.9346], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@NQPHLMJBDNJEFCAONSPIFIVODIF@@EKMFEC@DGQCAQZDbCdJ@GEAFC@]@EJ@DCSB[EGII@@GI@@GEBAIQDDESRMEM@gNYTIRKJAJEJ[DFJKLGBGNBJLDCDAHGBJJAFBLEXTLZFBAFDLD"], encodeOffsets: [[118940, 40953]] } }, { type: "Feature", id: "110102", properties: {name: "西城区", cp: [116.3631, 39.9353], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XBDA@EIACM@IJAD]BC@SFABISAD]H@@O?AEDQEW@BLE?MD@FLDh@@LDBF@@M`J@fTB@H"], encodeOffsets: [[119175, 40932]] } }, { type: "Feature", id: "110101", properties: {name: "东城区", cp: [116.418, 39.9367], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@DBf@@VDA@OF@@CT@FEH@@GADBMTBBECCRCGG@YS@@gDK@A?C@PG@C^TBAJEB@TADC^IB@J"], encodeOffsets: [[119182, 40921]] } }, { type: "Feature", id: "110104", properties: {name: "宣武区", cp: [116.3603, 39.8852], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@RBX@RFFC?BFU@aK@WA}CCJGAEFkCBRFD@JB@@N"], encodeOffsets: [[119118, 40855]] } }, { type: "Feature", id: "110103", properties: {name: "崇文区", cp: [116.4166, 39.8811], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XBL@@bEV?D@BX@AC@MHA@EIBCCDSEMmB@EIDBME@@MG@EDUCENWD@H"], encodeOffsets: [[119175, 40829]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/china_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "xin_jiang", properties: {name: "新疆", cp: [84.9023, 41.748], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@@?ρ????ó????ó?????????υ???@?@ó??????óН??????????@υ????ó??@??υ??ō????ó???????????υ?ρ??ó?????ōó???ó???ó?????@??????????????????????óó???@??@??????ó????@ó???ó???????@?ó?????ó?φó?????ò???@??@???ò???ò???ó?????@φρ?@?????φ@?φ?????@??????????????ó????????ó??ó?????φ??????@???υ??????????@??????ō????@?????????"], encodeOffsets: [[98730, 43786]] } }, { type: "Feature", id: "xi_zang", properties: {name: "西藏", cp: [88.7695, 31.6846], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?ō????????ó??ō??????φ???????????????????φ?????????@???@?ò???ó?????φ????@???@???@???????????ō??????@??????ō????????ó????О?????Нφσ???υ????@???@ōóóó???ó???ó?ó????ρ?????????ōó??????ó?óó?υ?@??ō??????????@????????ō???????@???@ó???ó???óóυ?@???ρ???ó?ó??ó???Оó???????????????????????ó?????????υО@φ????"], encodeOffsets: [[80911, 35146]] } }, { type: "Feature", id: "nei_meng_gu", properties: {name: "内蒙古", cp: [117.5977, 44.3408], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@?????????????ó??@??ó?????@??????@??????????????????????????????????ó?????О??????????????ó???@???????????????@???φ?????@?????????@????????Н?ō???@????ó????ó???ó???@???@????@?υ???ò?ρ???????????@??@?ō@?@??ó??υ?ó????óυ?ó????ρ????????????ó??????óρ?@????????????О???óó??ó???@????@?????????????υ?ó??@??óō????óО????????ò??ó??@??@????ρ?υ?????ó???@?σ???ò????ó??????ó????ó???????ōφ???ρóυ?ó?????ó??ōó?????????????????ρ????ó?О?@??????????????ó????ō?ó?ó@????ō@???"], encodeOffsets: [[99540, 43830]] } }, { type: "Feature", id: "qing_hai", properties: {name: "青海", cp: [96.2402, 35.4199], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?@??????@φ?òó????????О?ó????@???@?????????φ????????ō??@??????????ó???????ó??????????????????φ?ó???óó???óó?@??????@????υ?@?????ρ????óτ??????@??ò??óυ?????@????ó@??ōó???@??ōυ????ó????????????????óН?ó??????ó??????ōó?@?ó?ó????????????ó???@óò?@???@??υ???ó???????@???@??ōó???"], encodeOffsets: [[91890, 36945]] } }, { type: "Feature", id: "si_chuan", properties: {name: "四川", cp: [102.9199, 30.1904], childNum: 21}, geometry: { type: "Polygon", coordinates: ["@@????ó????О???ō???????óó???ó??ō????@???ò???@ō?ó????????????????????????υ@óó??ρ??@????υ???ó???ρ???????φó?????????@????ó???ó?????ρ?ó???@???????ó???@??Н????ó?υ?????????@?@???@ōρ????ó?????О??@???ó????φ??υτ?Оρ???ó?????ó???ó?????φ???@???????@?????@???ó?φó???òò?"], encodeOffsets: [[104220, 34336]] } }, { type: "Feature", id: "hei_long_jiang", properties: {name: "黑龙江", cp: [128.1445, 48.5156], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@???Н???????????ó??@ó??ó?φ?óó??ó????Н??ó???????????φ@???????ρ??????φ@?????????????@??@?????ρρó??????ó????????????υ???????ó????óó?????????@??@?Оυ@??ò??????ó?ōó??ō??????óО?@????@?@?ó?ó@@ó????????????????φ?@??????@???@?ó???????????????@ó?ρ??О??"], encodeOffsets: [[124380, 54630]] } }, { type: "Feature", id: "gan_su", properties: {name: "甘肃", cp: [95.7129, 40.166], childNum: 14}, geometry: { type: "Polygon", coordinates: ["@@????@ō????@???ó??????ó??????ó????????@?Н?????ó???????????ò?ρ???????????@@??@φ?ó????ō???????ó???@????????ó??@?ō????@?ó???@??@@???ó?ó???ó??@@??ó?óρ????@ó????????ō????????????ρóó?@ō????ó???ó??ò??ó??????????Н????óōó??@ó???σ???????????@?φ?ó????@???ō@??????????ō??υ????ó????ρ?????ó?????????????????ò?ρ?@????????óρōυ???ρ?????@??ó@???φ?????????????????ó???"], encodeOffsets: [[98730, 43740]] } }, { type: "Feature", id: "yun_nan", properties: {name: "云南", cp: [101.8652, 25.1807], childNum: 16}, geometry: { type: "Polygon", coordinates: ["@@???????ō??????@???@???????@????Н??????????@???@ò@???óō????φ?????ó??О@???????????@ōóó?ó?????ó??ó????ō????????@????ō?????Н???ó????????????ò?φ@??@??ōó???υ?ó?ρ??ō??????????????υ?óō????óН????ó??????????φ?ō???ō??????ρ?????ó?ó@@????φ??@???????ó?????ó??ō????"], encodeOffsets: [[100530, 28800]] } }, { type: "Feature", id: "guang_xi", properties: {name: "广西", cp: [108.2813, 23.6426], childNum: 14}, geometry: { type: "Polygon", coordinates: ["@@????????@?????ó??ō???@?ó????????@?φ?ó??????????????@??@???ρ??????Н?????ó????@?ó??@@????υ????@?ó??@@???ó?ó?@???ρóòН??@??@ó???σ?υ@??@ō??ó???óō????@ō????@???υ@?ó??????óō??"], encodeOffsets: [[107011, 25335]] } }, { type: "Feature", id: "hu_nan", properties: {name: "湖南", cp: [111.5332, 27.3779], childNum: 14}, geometry: { type: "Polygon", coordinates: ["@@@??О?@???ó???????????ò????ò???ò???@???ó???????ó?????ó?@??óó???@???ó????ó???ōυ????ō@???????ó?óō?????О??ó?????@?óò?@???????ōó?????ó??ò@??ōρ?ó??Оó?@?ó?"], encodeOffsets: [[111870, 29161]] } }, { type: "Feature", id: "shan_xi_1", properties: {name: "陕西", cp: [109.5996, 35.6396], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@?????????óó???ó??????????@????????@??@??ó??ō????@?@?????????????ó???ó???????τ?@?ò???ó???@???υ????Н??@??ó????@???@????ō?ó?????ó@???@?υ@?????@???????ó???óó?ó?????@??ō??"], encodeOffsets: [[108001, 33705]] } }, { type: "Feature", id: "guang_dong", properties: {name: "广东", cp: [113.4668, 22.8076], childNum: 21}, geometry: { type: "Polygon", coordinates: ["@@@???????@??@??@?????óφ??@??@??@??ō??????????????@?????φ???ò????ōó????????????????ō?ò?????Н@?????υō??ó?????ó???ρ??????????ō?óó?ρ?υ????ō???????@ó????????@?ō?@?@@????О@@", "@@X?ˉaWā?@l?"], encodeOffsets: [[112411, 21916], [116325, 22697]] } }, { type: "Feature", id: "ji_lin", properties: {name: "吉林", cp: [126.4746, 43.5938], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@?@?Н???ò?ō???????????ō??ò?φ@?Н?@@?????????????òō????????φ?@???????@???@ōó???????συ?@?ρ?????????ō???υρó????υφ@??ōó?ρ?@??@????ρ??ó??????????????????φ???????φ?"], encodeOffsets: [[126181, 47341]] } }, { type: "Feature", id: "he_bei", properties: {name: "河北", cp: [115.4004, 37.9688], childNum: 11}, geometry: { type: "MultiPolygon", coordinates: [["@@???ō????ó??ō??ò?????ó??????Н?????????@??φ??ō????ó?????@????ρ?@υНφ????ρ????ó???ρ???ó?@??????@??@??@@??????ōυ??????ō?@ó????????????????ō?@?Н??@ō???????Н?@???ò@??@?ρυ????????ōó???????@?????????@???@???????"], ["@@??@???@?ó?φ?"]], encodeOffsets: [[[117271, 40455]], [[120061, 41040]]] } }, { type: "Feature", id: "hu_bei", properties: {name: "湖北", cp: [112.2363, 31.1572], childNum: 17}, geometry: { type: "Polygon", coordinates: ["@@??υ?????ó???φ@@???@????ō?ó?????ō?????ò?ō?????ó???ó???ó?????@???????Н@???ρ?????????ó????ō@?????ò?????????ρ????????ó?????@?Н??ó??????φó????ó???óò??óφ??ó??"], encodeOffsets: [[112860, 31905]] } }, { type: "Feature", id: "gui_zhou", properties: {name: "贵州", cp: [106.6113, 26.9385], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@???????????ō?????@????????ó??@??@ō??????@????ó@ōτ?òυ?@@???@??@????@????Н?ó?ō??@?????????????????υ?@????óó??ó???@???????ó??@????????ō??ó????О????????@?ó?????"], encodeOffsets: [[106651, 27901]] } }, { type: "Feature", id: "shan_dong", properties: {name: "山东", cp: [118.7402, 36.4307], childNum: 17}, geometry: { type: "Polygon", coordinates: ["@@??φ????@@??????@?О???@φН??@????@?????????????????ō?@??óρ????ó??ó@????ó???????Н??ó??ó????ó??@????????ó?υО??ó????@????????????????"], encodeOffsets: [[118261, 37036]] } }, { type: "Feature", id: "jiang_xi", properties: {name: "江西", cp: [116.0156, 27.29], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@?????????????ó????τ??ō??@???ó???????????@ō???υ@???????????ó??????????????????ōò?ρ??????????????ō??ò?????????@???????@?????"], encodeOffsets: [[117e3, 29025]] } }, { type: "Feature", id: "he_nan", properties: {name: "河南", cp: [113.4668, 33.8818], childNum: 17}, geometry: { type: "Polygon", coordinates: ["@@φ????????@@??ó?ō???????????ō???????????????????@@?????υ?????ó?@?????σ?@???????????ρóó??@ó?????ó????ó??ó??ō????????@???@???ó?"], encodeOffsets: [[113040, 35416]] } }, { type: "Feature", id: "liao_ning", properties: {name: "辽宁", cp: [122.3438, 41.0889], childNum: 14}, geometry: { type: "Polygon", coordinates: ["@@???????????Н??????????@????????????????????@@?????ó?@?φυ??????ρ??@??@??@??ρ???φ?????ó????@??????????υ?φО"], encodeOffsets: [[122131, 42301]] } }, { type: "Feature", id: "shan_xi_2", properties: {name: "山西", cp: [112.4121, 37.6611], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@???ō????????φó???????@@??????????????ρρ?óó@ō??@????ρ??ρ?@?????ó???????@??@??????υ???@???óОó?φ???@?????"], encodeOffsets: [[113581, 39645]] } }, { type: "Feature", id: "an_hui", properties: {name: "安徽", cp: [117.2461, 32.0361], childNum: 17}, geometry: { type: "Polygon", coordinates: ["@@ó???@???????φ????????ó???υ??????@???ò???ó?????????????@???????υó@???????????óó??ρó@?????σ???@??О??ρ???????ó??ó??ó??ō@?τ????ō@??ō?ó??φ?"], encodeOffsets: [[119431, 34741]] } }, { type: "Feature", id: "fu_jian", properties: {name: "福建", cp: [118.3008, 25.9277], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@??ó?????????φ?????ó?ρ?@ō??ò??ó?ō?????@???ō??ó????????@@ó??@???ó???????@??О????ó???ó???????ó???ó???????????????"], encodeOffsets: [[121321, 28981]] } }, { type: "Feature", id: "zhe_jiang", properties: {name: "浙江", cp: [120.498, 29.0918], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@????@?φ?ó?????@?????τ?????????????@?ρ????@@υ?ó@??@???ó??υó@????@?ō??υ?????????????@?óφ??@???"], encodeOffsets: [[121051, 30105]] } }, { type: "Feature", id: "jiang_su", properties: {name: "江苏", cp: [120.0586, 32.915], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@????φН???????????@?????????ó@???????????ò?φ???@ó??ó??????ρσ???????ó???ó????????????ó@?????ρ?óφ?óó???????υ?????"], encodeOffsets: [[119161, 35460]] } }, { type: "Feature", id: "chong_qing", properties: {name: "重庆", cp: [107.7539, 30.1904], childNum: 40}, geometry: { type: "Polygon", coordinates: ["@@??ò????????@????φ?ò?????υ????óó?????????óυ????????@????@@??ó@??@?φσ?@?????@??ó??ó?@?ó?ó@????ó?υ?ó?????????????φ??????@??óō??φ@????"], encodeOffsets: [[111150, 32446]] } }, { type: "Feature", id: "ning_xia", properties: {name: "宁夏", cp: [105.9961, 37.3096], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@????φ?????υ????ó????@??@@????ó@????????@???óó???ó???ó@??ó???ó???????υ??@@??@"], encodeOffsets: [[106831, 38340]] } }, { type: "Feature", id: "hai_nan", properties: {name: "海南", cp: [109.9512, 19.2041], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@φ?????φ??@???@τ??????Н?ó???@??????@?"], encodeOffsets: [[111240, 19846]] } }, { type: "Feature", id: "tai_wan", properties: {name: "台湾", cp: [121.0254, 23.5986], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@???????????ρ??óōó?ρ??О????????"], encodeOffsets: [[124831, 25650]] } }, { type: "Feature", id: "bei_jing", properties: {name: "北京", cp: [116.4551, 40.2539], childNum: 19}, geometry: { type: "Polygon", coordinates: ["@@óóó?υó??@?óó?@???ōρó??ó??????????@ó??ō??φ?????"], encodeOffsets: [[120241, 41176]] } }, { type: "Feature", id: "tian_jin", properties: {name: "天津", cp: [117.4219, 39.4189], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@????@?????????@ó?@@????@ó???@??ó?Н?ó??@???óО"], encodeOffsets: [[119610, 40545]] } }, { type: "Feature", id: "shang_hai", properties: {name: "上海", cp: [121.4648, 31.2891], childNum: 19}, geometry: {type: "Polygon", coordinates: ["@@??????????óυ??????"], encodeOffsets: [[123840, 31771]]} }, { type: "Feature", id: "xiang_gang", properties: {name: "香港", cp: [114.2578, 22.3242], childNum: 1}, geometry: {type: "Polygon", coordinates: ["@@ó??@ρ@ó??????@?@@ō?@"], encodeOffsets: [[117361, 22950]]} }, { type: "Feature", id: "ao_men", properties: {name: "澳门", cp: [113.5547, 22.1484], childNum: 1}, geometry: {type: "Polygon", coordinates: ["@@X?ˉaWā?@l?"], encodeOffsets: [[116325, 22697]]} }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/chong_qing_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "500242", properties: {name: "酉阳土家族苗族自治县", cp: [108.8196, 28.8666], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XJ°?lJX@lbl@XbV@VLnJlxnb??UU@IVK@lVIVwnJlU@n@J@L@Jn@l_nWVLVln@@blL?mV@@x???`n??xV?èLlx?LVxVV??V_U?VWn_m¥XwVmnX°?lmUUVwTaV??k@a@mmIUa@?mwk@??m@@Uˉa@UV@@K??@ykkmwkV@kU@???VkKWL?amaU?m@kyU@WkU@Ua?IUa??VaUUmUUa@aVLXKWaˉUUbmJXnWnX`l@@xkzW?@V?LU|?x@b@JkIkJ@LmbUamJ?wm@óx?nk@V?@x??VnUVmVU?V?UbVlUbkXW?"], encodeOffsets: [[110914, 29695]] } }, { type: "Feature", id: "500236", properties: {name: "奉节县", cp: [109.3909, 30.9265], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@WVXb?UnK@x@b?2kxmKklˉ_?VV°?VU?@bnKVVV@@nk?@n?bn?@?°@VL?U?@°WV@V?nU@InKV?l@nU?b?KnX?WlknLlKUwnalL?a?VlUXmWk@UU@UWWIUy?1XaWW@?X??KUIVm?U@W@UVU@KV@n?VkUk?mUmVIUmULUbm@?wUa?Kkkm?ˉ?UL@bWVnx@VmxUI@?klmkkK@a?K@IlJ@Iˉ?k@mak@mnkJVL@bV@Ub??W`UUUV?I@V?U@VVbUJVLUVVbUX?VVxk|VJUnVxnVVU?JV@Ubl@@bXV@L"], encodeOffsets: [[111781, 31658]] } }, { type: "Feature", id: "500238", properties: {name: "巫溪县", cp: [109.3359, 31.4813], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@nLWbX?VLVU?V@K?IVl@b?@lb?U?VnU@J?U@V@n°K?Ul@VbTK?V?@?_?V?KXU?U@KX?@wlkkU@mWKUU@U?J@XV@?aVmTIVaVL??@?km?@?UkL?U@aU@WW?LUUU??Kkb?wWa@KU@ka?XmW?L?amVk@U?mL@JmVU?U@ˉX?@?VUKˉ@?nWK?LkKULWK@UXK@wW@?LkV@bVL?lXn?`ˉxU?°Ln?lV@n°Lnl"], encodeOffsets: [[111488, 32361]] } }, { type: "Feature", id: "500234", properties: {name: "开县", cp: [108.4131, 31.2561], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@n@na?I?w?@@VVK?LVbVxnV?UnanKW?XamKmkˉK@mkUm?ˉKV?°w??@Wm@UIUUlKUU@aˉKWanwmUXamKk?U?WUnU@K?kUwWKXaWLUWkImaUUU??Kka±?k@l?ˉw?wmbU???kXm@UJkIW?XX?b?m??UJ?XUV@°?Kl??lVX?V@xmbnV@blV@V??U`UL@V?a@bULlb°VXbü?@V@b?L@J?xnLVb@lVb@V?@@z?bXW?X?KVLV??@@bUVVL@b??lVna@ll@?zl@@J"], encodeOffsets: [[111150, 32434]] } }, { type: "Feature", id: "500243", properties: {name: "彭水苗族土家族自治县", cp: [108.2043, 29.3994], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?Jlb@nVV@bXb@?lL?Ul`n?VKU?VxkbW?nlUxlXX?@?°°WnnJ@VUn@J?k°L@VlV@nUJ?x@bVVVz@VnLla?KnalVlIU???@nV@@anKUwVal@U?lJ??lI@akU@UW?XKVI?ˉUak@@KmkXWükX?WykIWwXw@?laXamkVUUym_XmlkkmmakwmIUKU@Wak@kaW@kIˉ?WIk|V??UU?maUV@XkVUV±aUbˉbˉ¥m@@ImJ?@m?mL@kUKUkkJ?bV|"], encodeOffsets: [[110408, 29729]] } }, { type: "Feature", id: "500235", properties: {name: "云阳县", cp: [108.8306, 31.0089], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@lb?LV?VVnblJVXXKWbXLVx?l@LmVXVV?l?nLWbnVmxXb°L@bVVkLVVVJn@@X???_Wm?kUK@alU?KX@@xWL@VXLVKlL?KXL?m@?m??a@ml?@mU@UUmL@aV??UUˉ?U°`lknLlw?±@a@wmL?VWaXU@KWU@ak@VaU@?IUVmUUwVmUIl¥Uw?UVWUaVUUKVIUa@UUUUJ?UUm?k??nl@?@VWV@LˉaUb?Ulx?@@b@VULUx@VUxVV?U@bU@mxU?U@mUV?klkk?@Wxknlx?K@amL?KU??K"], encodeOffsets: [[111016, 31742]] } }, { type: "Feature", id: "500101", properties: {name: "万州区", cp: [108.3911, 30.6958], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@??VI???n?aWWX?lJVIn@lW??V?na?x°xk?l@2??LV??LnK@b?LkwlmXw?@lllkU?nVV@V?nwV@@a?VUUVw@UVwVK@U@a?@kw?VVa°b@KXU@U@?mk?????aml?kUVmn@VULU?m@kUVkUa?wUWm@Uwˉ?mKUUmVUUULUKU?W@XbWVkaWwkUU???k@maUbmbVlk|?xUVUIWVU?kJVVkL@UmJ?UUVU@lLUVU?lx?@@?Vb?J?U?Lˉ¤@V??"], encodeOffsets: [[110464, 31551]] } }, { type: "Feature", id: "500229", properties: {name: "城口县", cp: [108.7756, 31.9098], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VK@wˉL@m@U?V@ImV?U?Vka?@@aUk?J@L?UUVUKmLmb?VmUUwUa?KUL@U?@?x?Jmbm@?nVJ@X@VkV?n?l?LXx?@?b@bUV?LU`Un?bU@@?mVVX@JX@VLVV?klV???`@bUL@V?LVKn@?U@?UJkn@lmLmK@X@Jn@mb?nTWVXnJ?k?K???@VK@knaümX?lU?W°k????@a@yT_Vm?UnU@K"], encodeOffsets: [[111893, 32513]] } }, { type: "Feature", id: "500116", properties: {name: "江津区", cp: [106.2158, 28.9874], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?InWUUlU@LVa?lX@°2lòXxlK@Ul@@Un@UaVJ@I@W@U?UUVUwVIUKUa?UU?Vwn@üx@XUlnn?b?J@¥VklKUUlk@ynU@kV?UUVWnI@¥V£VWVIUKU@UV?a@n@Vm@@n?lUaVkUw?J@blLkLW@XWmXkmmLn?@m@U@UVm@??UV?UUlakUVa??VkV@@wnaWUk@Vwk?lmVIkUUxmJ@U??@K?Ikx±V@IUm@K@IUKkbWKUbn?m?@bmVnbmb@xkxUJ@?ULW`@bX@WVXL@V??ˉ?mkˉ@UJ@VmLUaWnX@WJ@nkKkxW@UIV@@KkImmkK@UW@XaWIU@U??IkbWb?xX?lLVbnV@bWlX@VxVLnl@n?TVü"], encodeOffsets: [[108585, 30032]] } }, { type: "Feature", id: "500240", properties: {name: "石柱土家族自治县", cp: [108.2813, 30.1025], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@??@kl@??UbmVXJ@bV@nxVIVJULVVk@@LWbnJVU@bVbUJ@blLXnWV?@mbnV?@V??bn@VJVLnaVanbl@??V?lVXxlbXUWaX@V?UUVwUUVm@I@WmI@a?mlL??lK@alwnUV@kóVa?Y?k@UlbVK@?VU??V?U?UVWU?@U`ULkwm@@KmU@knK??V?kJkUmb?LkbmK@UUyUU@a?wm@@XXJ@VVLVVUbVnUJVX@K??k`WXXJWXUbmW@bkL?Um`Xn?b@JVL@LU@?°VVXKVnUxVLUbmJ"], encodeOffsets: [[110588, 30769]] } }, { type: "Feature", id: "500237", properties: {name: "巫山县", cp: [109.8853, 31.1188], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@kV?U?bkKmbVxkLmKkllbV@@LXb?xla?LV?VV?KXXV@@b?VlK?V?@ln@?°KXa?U@Ulw°JXalIUa?YW?XW@kVU@?VUVWUUUamU?w@aVamwn@VUU?lLXWm£@w??kKklmLUòˉ?Wn?@??±?kwma?Wm?U@@LUV@V@X?VUnVJ?LW?@?XXWb?oVzXJVXV@@VXlWn"], encodeOffsets: [[112399, 31917]] } }, { type: "Feature", id: "500102", properties: {name: "涪陵区", cp: [107.3364, 29.6796], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@nèVbl?VVnL???@?x?V?n@n?J@L?UVVX@lbUJV@@nn@VVVK@z??V@nzVJVUlmX@@_VVVbnaVal@@knW@wna??VK@aVI?J@£kUVW@??wXUVJ?am?@Ik????_X¥?@WwkKkwm????kUx?n?mm¥???WV?@Um@UlVL@JU@@X?@UVkKVk?KVk?Kkb@bmJVXU?VVUbU@@`W_UVˉb"], encodeOffsets: [[109508, 30207]] } }, { type: "Feature", id: "500230", properties: {name: "丰都县", cp: [107.8418, 29.9048], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@Tè@XUK@LlV@blbUJ@??V@bnV??@VVVXU@?lbXal@VXnKV@maXUT?@amk@aVKXV?anb?£°mnIVaUKVwUmWLUU?ˉV@@KUK@I?aWmn_?VlK@anXVaXWWIXWl_??@LUWVIUmVaUUUK@UWI@Wn@VI@mkU@UˉK?l@ImV?L?wU¤óbUU@wW?Xkmm@LU@@VUIWVUL@JUn?a?x@Jn??bUIWV?x@?UXlV@¤?IUJ@bUL??mb@xmX@lk@UbmbUaUU@`W@kn"], encodeOffsets: [[110048, 30713]] } }, { type: "Feature", id: "500232", properties: {name: "武隆县", cp: [107.655, 29.35], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@l??w?bVm@IVKXUVJ@UV@@KnnWlX?@xVV?aV£?x?KnUVm@UmIXmˉˉ@?W?kWVwmkX?laUwV?ULm?k_?VkK@?Wa@aUU@mka?I?b@?n??nm??_@mmK@U?LUV?VmI@aUJ@XWJ@?U`UIkm±kk@@lULmUmKUnV?nlUVmI@VkVlx?bkI?VmLUxkKU??X??n|?n?mVw?l??n?lxlLXx?@W|?`??"], encodeOffsets: [[110262, 30291]] } }, { type: "Feature", id: "500119", properties: {name: "南川区", cp: [107.1716, 29.1302], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@V?UbVJVUn@VLX@WVXVVI@VUVWxU@m?@?X@@?V?°aVUX`@_V@VaUUV?UWnI@ala?LUl?LUllLVU?@@WV@@IUKVkn@@VlLVwnK?UlJ?akwlU@UnJVUmkU?VmXa@wVK@UUw?@V?VI@ak?@alInwlKXUmaUW@wWLk??KVak_?aU??V@?Xb?LVxUlWIk@UK@V?@?kU@VbUVUlVn?LUV@lVXmxkV@L@V@Vk@WbUwmL@JUI@xVxkx"], encodeOffsets: [[109463, 29830]] } }, { type: "Feature", id: "500241", properties: {name: "秀山土家族苗族自治县", cp: [109.0173, 28.5205], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XlV@lzn@V?nb?bXKlL?U?òV@@llUnxll@z??@LU@@V°b@Vn@??l@V?U?nK@U?U@aUa?kVm@Kˉw?klmnn?Ul`nI@almkIUwmWVkUa?kkJmUUa@K@aU@@_m@@wUyVUUa@Um?@a?wl?@Wka±?UkUykIWV?b@bUVk@?aU@UXU?UIWakUWmUxUV@nUVWb??@XXVV?mXX?@V?bVLkVWx"], encodeOffsets: [[111330, 29183]] } }, { type: "Feature", id: "500114", properties: {name: "黔江区", cp: [108.7207, 29.4708], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VX@V@LV@VJUL@lVnnxlb@VXV?XV@@W?@UIVK@kUKna@£VWUaVUUalIVJVIUW?_lm@bXKV@mn@J?UUw@KnIVll@VanLVmUkVKXLVKUIVamw@?UaU_lw?KlwUWV_Ua@aUa@KU??wm??_?ó@wU@?nkK@am@UkUKmXk`m@@I@K@I@mkVmIUxUJ@kUL@JVV??lnklWnn`VzUVnlWbkb@?WxXxlJXzW??lWXnl@Ll@Vb?°UJWLX?@VlV@bkJ"], encodeOffsets: [[111106, 30420]] } }, { type: "Feature", id: "500117", properties: {name: "合川区", cp: [106.3257, 30.108], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XKVXlK??VL@UnV@aValXXK?U@WVwUaVU@IV@@aVW?L@U@anVV@@bVK@UVL@bnJWL@VnUnb?@@JnIlV?l?@@bXIWbn@UKVLVKXLlaV@VVnK@bVL?m?IV?@KmknUUWVI@aVJ@_?WU_VmUw?U@K??Va?k@amˉmJU_UJUkU@W?kIV`UI@JV?@LmmU@@m?bUz????@?VK@nUK???b?akb@UWK@bkVVbV??@@`?Xk@W?@n@lXL@bmb@VVJUn@JnUlnUlmX@`XLlbkJW@kzlb@`@b@b"], encodeOffsets: [[108529, 31101]] } }, { type: "Feature", id: "500222", properties: {name: "綦江县", cp: [106.6553, 28.8171], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@|?@X?lVX@@UVKl?VUX@lanVlUVbXWVXV??VVUnKVUlwUwU@UJ@nmVkUV?lwXam@VaUUUw@W@kk?mV@UmKkwVKVUU@@LUKVI@mV@XVWxnXVKUUUK@wWU@UUWnUlLXa?mUI?am?@w?I@K@amIm?UUkI@m?akUkKWUUan?@w?amLVxk@UVmUUL@Vm@kV@I@ak@@bWVXJlLVbVL@?@bn@@`Un?@WbUKULWVXb?@UVmbX?WV?b@b?VmxUKU??V@?Un@V@V@nm?nKlnnWWXX@lKkK@a?IVxUlVb?k@mn@@U@m?bVUV@VLUJUXU¤"], encodeOffsets: [[109137, 29779]] } }, { type: "Feature", id: "500233", properties: {name: "忠县", cp: [107.8967, 30.3223], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VLT??U@W??@?V??@lk@w2ml?VU??ll?VnI@VlKUUlIV?XUVJVU?wl¥UkUKUIm@?aU??@mUna?@XUWmkK@aVIUa@aUVmIXa@Kl@UUVKUIUJmwU@@aWInUVa??k@@l??ˉn?¤ma?bWUUL@bnl@bY?WVnbU@mLUWk@Wbka@?WVUU@U??mUmVkUULV?lVUx?l@L@V?bèòlb"], encodeOffsets: [[110239, 31146]] } }, { type: "Feature", id: "500228", properties: {name: "梁平县", cp: [107.7429, 30.6519], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XLV@VV@b°°n??nkb@b??nJWVXblIUV?xWnUJnVVLVU?JlUnLVK@UnUVJ?2nKVbVKla@aX?lJ?k?Klb??@U°£?K?V?IUa@??@kwV?VUkKV@VUkk??UVk?±n@xkl?@U?@???@X?VY?UJnxWb?@UX?KkVUbUKWUkVmkkLU`?b"], encodeOffsets: [[109980, 31247]] } }, { type: "Feature", id: "500113", properties: {name: "巴南区", cp: [106.7322, 29.4214], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@nxnVlJlUXL?|@x@Vl@nKVVX@V_V@@KlVXU?@lKlxXIl@è?@Vl@n_VJl?n?Vlnb?2VVVJV?VmUUk?Uam?U?@?W@@?n?V@XwVU@UUJWUXUW@UKm@UVUIVaU?UVmLUV?UU?UWWXUakVmUkbW@UVk?UL@VW@kUW??@mJUXVVU?@lmV@zklVVkLUl@|?I"], encodeOffsets: [[108990, 30061]] } }, { type: "Feature", id: "500223", properties: {name: "潼南县", cp: [105.7764, 30.1135], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@a@a@_kalyX@lIkaWK@_nWVkkmmV@IVmUI@Una@aWK@k@mkbWaknmJUk@mk@@kUal@Ua?@Wa@aXLlwUKlkk?@KmI@VUJ@Lk@@VUUmL@amJU£kKUaWakLmU@bVVUbnbWV@xkL@bUb?xUxVbXJVbUVWIUVU@kLWxkKWV@nˉVUbU@@VVX@VmaUL@VUK@VVbn@lVnI?@@lnLULm@Ub@?l@na?@lK@XVVkJ@b@zl@@VnV@bVb@J@bnXV`lXXmVI@W@InbV@@aVKUblKVLUanLlmnLlK"], encodeOffsets: [[108529, 31101]] } }, { type: "Feature", id: "500118", properties: {name: "永川区", cp: [105.8643, 29.2566], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@bü?nWVLX?lxV?VxXxlVn@@bVblK@a@UnLVJV@@UnLVU@VXaVKVX?@n`W?U?@IUKlaUUUkWyU??Y@mmkUKUwW@Xk@amUUakKW??wXa?K@VVLkl?XVlkxV?UL@bm@Vxn`?IVxUVkLV?U?l@@lkXmm?VUn@VV@Xb"], encodeOffsets: [[108192, 30038]] } }, { type: "Feature", id: "500231", properties: {name: "垫江县", cp: [107.4573, 30.2454], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@??°¤nò???aV_lKnllUXVVLValU?LVW?@XamwVIUKka???a@U@K?kVwkUU?VKlVnU@a?U@?VIka@akU@KVL@WY?UV@Vmb?ˉ@L?K?nnJW??VkxlL@VX@VxmnXVWxUb@bkn"], encodeOffsets: [[109812, 30961]] } }, { type: "Feature", id: "500112", properties: {name: "渝北区", cp: [106.7212, 29.8499], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@bVVXL?a@lnbWn@L?@XVlK@VVLUVlbkLUKVVVL@V?nX?VL@VV@UbVb@x@|UxVb@bUJ?L@L?VVxlK@?nk@U@W?UVLlKXV?@VblU@UUKVU@wn@VJVanLlkX@VaVK?ˉ@a@U@U@?VaUK?kUU?±maUkm@UUkbm@@Vk@@J?wU@Ub@I@JmwUL@a?@@KkV?Lk?Wk?@kUU@@xUVmKUnllUb"], encodeOffsets: [[109013, 30381]] } }, { type: "Feature", id: "500115", properties: {name: "长寿区", cp: [107.1606, 29.9762], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VV?U?bX?lX?¥l@XnVmlxUx?@@blVnn?ālm@aVaXwWUnmUwW@@UkKlw?UX?mI?m?L@K?°na@UUImyU@??@yULUUm@@mU@VIkaW@UU?V@K?I@m?m?U?w?@??mKUnU?UI?lVLUb@?@V@V@b?°ULUbW@klmKUbUIm@@xUVVL"], encodeOffsets: [[109429, 30747]] } }, { type: "Feature", id: "500225", properties: {name: "大足县", cp: [105.7544, 29.6136], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XUmaVaUU@anVlKXbValU@aV@@IXK?@@bV@VxVK@UXLlU?JXa@_?@@aVK??WVkwWa???wUa@am@kUWLU@kWmX@ykI@W@UV@na@LlLV@U?kwW?UKmXX`mIVl@bXLWVkbkk?x@`VXm@@J@U@UUKUxk@WbUIVl@VXLW??JUkUlUImxXlmb@X@VUJUnVb?W@UV@@VVX@bnW@LVxUnlJUV@n?@VxVIn@l`?UVVVL"], encodeOffsets: [[108270, 30578]] } }, { type: "Feature", id: "500224", properties: {name: "铜梁县", cp: [106.0291, 29.8059], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VblLV¤nI@bnKVV@Ul@@KVI@UnJ@Ll?klVLkxWK@bXb?@Vbk@Vb@ll@@nVlnIlmXblaX?l@?W@_ü@U?UalU@aXL@Vla?b?a??VL@mUL@?UU????XUW?X_Wa??U???m_?@UWULWb@UUVmK@VU@UImK@V@bkL?x??XblxXU??UL@b?@@`Wb?IkVWK@VULUwU@@a?@WL@JU@@bkVUb"], encodeOffsets: [[108316, 30527]] } }, { type: "Feature", id: "500226", properties: {name: "荣昌县", cp: [105.5127, 29.4708], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VI@U@WnaWknwVJVkVl?IX?WK@UUkVJXal@VwVL@V@V@In@UW@_?wlllaXUWK@aUknJW_??@aWaU@@UVm?UUaUImJVn?UmV?Um`kUUVWLnVU@VVmX?K@?nxm?ULkx?ImJ@nU`@X@Vkn@`@nlV@nVJVaX?VLnK@bVV@nV@lbXW?@"], encodeOffsets: [[108012, 30392]] } }, { type: "Feature", id: "500227", properties: {name: "璧山县", cp: [106.2048, 29.5807], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XzVlVVkbVL@JVāX???V???XbW`X?WVè???VV??VkV@@UXa@alK@I??U@UKW?UyUI@wVUUWVak@VUk?W1@WXI@yVIUK@kWwk?ˉ±W@?kUb@KkVVVmX?J"], encodeOffsets: [[108585, 30032]] } }, { type: "Feature", id: "500109", properties: {name: "北碚区", cp: [106.5674, 29.8883], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@X?VLV@??@JkL@bWb@VU@Ul??Vy?a@nV@nn@KU?@IVJU_lJX?V@VlVIV`nIn°@b?lUb???KVI@aUaVw@¥@wUaVaU@@UUKW??m@UUKUUVLlKkaVUUK@UkLWU?@@KXmma@k?bWKUU@aUamLnT@VWLk@@Wm@ULU@@U?KUVWI"], encodeOffsets: [[108855, 30449]] } }, { type: "Feature", id: "500110", properties: {name: "万盛区", cp: [106.908, 28.9325], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VIV@@wVJ@InKVxXal@@U@U@KlUnwUW@kVU?KUmVkUa@I@KW@@bk@@m?U@m@k@a@a?IUxmJk@?wUL?wkKmVVX@VXV@xVLVVULmWXwWUU@@nUJVL@KV@UVULlxnL@VnUl?@l@XVxVVUbn@WbkxU?lVnU@m"], encodeOffsets: [[109452, 29779]] } }, { type: "Feature", id: "500107", properties: {name: "九龙坡区", cp: [106.3586, 29.4049], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@XK?L@V?@XbV@lW@UV@@VXIV@U?VKlL@Kn?nJ@VV@VU@I?@@mVUVWUUmL@VˉLUK@UV@UU@a@U@yU@WLUK@X@KUVmL@?@aXI@w@ammVk@W?wm@UxV??VVbVLUJVxVU?V@V@X@JUIVbm@@Vk@@VkL@lVLUJ@zWJ@X"], encodeOffsets: [[108799, 30241]] } }, { type: "Feature", id: "500106", properties: {name: "沙坪坝区", cp: [106.3696, 29.6191], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@Xol?UVl@UbVXUV@xVJVzXJVU?L@VV@VKn@@Xl@XK@UmYnKVbVakkVm@k??UK@UmIm?@LkKULV?U@WJ@UU@@VkXU@Wa?@@U?KWL"], encodeOffsets: [[108799, 30241]] } }, { type: "Feature", id: "500108", properties: {name: "南岸区", cp: [106.6663, 29.5367], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VV?JVL@bUVVnl`XIlwXJlw°nnl?IXW@U??k@WJkwkL?@WVkU@LU@U`W@UXUV@n"], encodeOffsets: [[109092, 30241]] } }, { type: "Feature", id: "500105", properties: {name: "江北区", cp: [106.8311, 29.6191], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@nLVU@wV@lV?@Xll?èKlU@L?@@bVKnx@I@JVaV@?x@Il@@Un@laVVn@m?k?UIm`k@WX?JmkˉmkxWIkxWJk_UmVUUK?@UU?@??@l"], encodeOffsets: [[109013, 30319]] } }, { type: "Feature", id: "500104", properties: {name: "大渡口区", cp: [106.4905, 29.4214], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@k@@U@w?¥WKkVkImUmw?a@b@xWJ@b@?nKVU@L@WVLXKV@@z@V@bVVU@@VVL°K@U"], encodeOffsets: [[109080, 30190]] } }, { type: "Feature", id: "500111", properties: {name: "双桥区", cp: [105.7874, 29.4928], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@WwUwU@kK@KmbU@@V@XlJ@znWlXV@XK"], encodeOffsets: [[108372, 30235]] } }, { type: "Feature", id: "500103", properties: {name: "渝中区", cp: [106.5344, 29.5477], childNum: 1}, geometry: {type: "Polygon", coordinates: ["@@VL?@VV?@VL@aUK?IUU?@@JUVU@"], encodeOffsets: [[109036, 30257]]} }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/fu_jian_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "3507", properties: {name: "南平市", cp: [118.136, 27.2845], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@@kny?k@??KU¥?wV@nk?W?zUmk@@?lKUa@aVI@U?KUamKUUVaUI??@X?@UV@K±IUVVlUbUbUL@KWUXmWk@KkXmmk??KU??a@amU?bkUkKWUnwU??wV?UU?YUKV£U?@?nKWwXLVKm¥@wUXkmWk@?@wX@lU?@?yVImaXwV??@k??nU@mbk@mlUX?mU@mV@n@bnW@bUIWJ?ImVUKWbUK@nkK?aU@W_?VUUmWmL@UU@?bUWUL@V@bmVUz@`mUUVVbXL@V?L@lmLUxmV?amXkW@xWbU?VbUxkU±@?UmmkLUbW@@`kLknVlV@lbXxlVUXVV??U?U@UbW?kIWVUUUJkI@llbUxVL@V?V?UU°ULUmWXUV@VULWb?@?xm@UaVLVKUa@??w@V?bk?mV?ambUUm@@VkK@?@b?xlxX@??n¤@X?@@lkLWV@?n?V?kb@bWJXLWx@nkxmm?bXn@VWVUn@VnJ@bVXl@??VJXnWbX`lL?UlJVI@??@VXV@Vl@bn@@?mn@V?xXU@mVIlx?V??nI?l@nVJ?aXI@mlU@aXkVm°klmnVV_na?°@V@xü|XK?V?nnUlVXbVK?LXKV@naV@@?VVl@@lXblX?WnLlbVK2n?@@?VLUnlV@l?X?x?°?V@UnaUUlKXLVUVVUbVVlUnJVX?@VW@an@lb?@n?l@VU@an??UVW@k?aUm@InVVKVU@?kUW@Uam@km@kVa@a@?nw?U@WlI@mVI@WXaW_n?@?n?lkkW@U?¥@kV@Uw@wU??@@IXK?¥VIn@nU@`@Xl@VV?Lna?W?bVaUwnU?@VI?KlV"], encodeOffsets: [[122119, 28086]] } }, { type: "Feature", id: "3504", properties: {name: "三明市", cp: [117.5317, 26.3013], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@lL@Un@VVna?bnUl??a@U?x@?VbULUKVbn@?w?@XaVK@UVUXWVnVKVˉ?V?U@UUKVwka@klJVIVVXUlJX?VaV@V???UUVWkUWwkaU@UklmlK@_X@ValKnn?V2@lVVwUaV?Xa@wlXnW?bnUVwnK@k?K@UWKUaVUnV@_VynU@a@UVKVX?aV@@VnKnXVV?UX`V@?blL@mVLXaVLnU?JXIVJ@amX@a@mnUV@?nVWnkl@naV@?ml??@@Km??KUam@UU@?@UlKU?Vk?U?K@aVaUwV?U¥UIkJ@wmI@?mbkwkVW@UX?KULU`?IVKUa@L?kkVmUU@WlULUW?U@I@?WW?nU@@w@a@?Uam_XyVIVWkk?@mwVKXUV@nw?VXkW???U@?a?UˉKUn?K@?ˉ?mU?LX?VLnWVbVbUVm@Ubˉ?W@?am??`kb?amLUUU??aUXV`@x@XmJ@n@L@xkJUU@kU@mWm@kUUwUUVWl@VUkI?y@kkaVUUm?IWVXbWxU@k?mVkK@nWVX|WxU@@bkx@VU@W?k@?kUbmJUUmkUW@_kKWK?@knV¤kIUKWLUbV??@Wbk@@VWL@VkI@lUXVxUVU@@mWI?V@aˉnUa?aUV@??J?b@bT°VbU?@X?aUVmL@?VX?bl?nV?°?n@Vnx?@VUUUlK@InJVb@?Vlnn@V?L@VWJU??x@XlJUVV?Vl@LUUUJ@L??@lUL°|k?V?VnV@?xV??l@blLnl?LVaXll@?nVUn@?xn@nml?°?X@lb"], encodeOffsets: [[119858, 27754]] } }, { type: "Feature", id: "3508", properties: {name: "龙岩市", cp: [116.8066, 25.2026], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?a?I@?VU?bVb°m@b?UXJ@nV@VUUwVW@klJ@UXK@Ul@Xa?@U?VaXKVLlJU£lm?@XLlL@`VXnlVVnIVa?ll@X?V@@Ulw@aV@XwW¥XU@mlLnUl?V@XwWaXU?JVnUVlb@l?zlJUVk@UXVVVxlVn@nXV@@lVVlI@w@K@mnI@W@wU_VW?bV?VVnK?bla?_n??bX@°?Van@VUUaUamXUKW??K@a@Uk?@wWkX?WW@wUU?K?w@_ly?wUkU@@U?@kamVm?Xa?UVUka@?Wk@?UUUV?KkbWU?VUbk@mk?xk??KnIVUmW@kUKmXUmVaU@kU@?m?@K?UWVkIWJ@?U@UI@wUUUa@KW?nU@mVkUmm@XwWU@?UUmL?@?w@mn?V?UU@aWak@@amxU@UxULWVXbVLU`mbUImVU??bn?V@@bVn@bnVWx?LmyUb?IUK?@?a?Vm??akbV?UXW?Ul?KWbkV@?WLUlk@@n?b?b@lkKmU@?UIWJkwˉUUVVxm@@XkbWx???X?K?lUzWJkUUL@bmKkV?@@VUIUlWV@X?K@VkbWx°xUb@LUbk@@VWb@LXJ@VWXU@@bUVV?VVn@VVlLn?@l?@?xk|Vx@bVJXb?n@JlnXxV@@?nJ@X@V@lmx?bUn@xVL@VVKlL@l??nLVaVL@xkl@L?xVl°??X?WVX?Vl??JW?nxlJ"], encodeOffsets: [[119194, 26657]] } }, { type: "Feature", id: "3509", properties: {name: "宁德市", cp: [119.6521, 26.9824], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@@LVKVaVaUkVU2J@LVU?@@W??VJUbVVnLVb?L@VUJ@bVbkL@?l@Vn?y?XmlU@?xV|?L@??lmz@lnL@bVV?bVb@l?n?KVk?Vl¤@zXV@?l@XJVLVKnXVK?VnU@wUm@??KU?@UlVlw@U@U@?UaUKlU@kXKlmXIWKXaVIVUVK@KU@@k?JVUnLVJUL@V?IVa@VnL?KUnl`Vb?V??V@??Vbn@Vzn@lKnVlI?VVKUalkXJl@XXVWVLVUUmVU@Unm?£lK@Uk@WUXK@U@WVwVk???k??°aU?Uwma???U?a?w?±V1XalK?x?@?UVaü??Vób?L?Jm?ˉVk|??k@mamXkKU?UL?akbk@mV@LkJWb@Vk?mXk@UVmaUV@amLUKUamI@KUaU@WbU@UUU?UIWJUkm@???w?Kk?VJm@kx??V?UK?@mUVUkmlkkVm@?amw?LVWU@UbVLk?Ub?@V?mK@?XaVWU_VJnwV@@kUmWakx?@kwWakIWxnbUJ?z?@kVW@@x@?XllnVW@xn|ULWKXxmL@?V?U¤VL?TVVU?èxV?mxXVlLlV?anV@b?bV??Ll?nnlW@LXlWnXV"], encodeOffsets: [[121816, 27816]] } }, { type: "Feature", id: "3501", properties: {name: "福州市", cp: [119.4543, 25.9222], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@lxna@?nJ@xlIVJV|U?VxUb@b?L?VUlV?kL@V@?VVn@Vb?Ln?@LU?lJXblx?@lwXbVn@lU@mxUIV`UXWb@?nLU??@Val?UKVaV@UX?Knx?bn@lUkllnUVnV?@VLU?è?lwn@UIl??L?x??n@VlXIVJV?VVV@XaV@Vb@LnJVbVLnK@bVUnbVUl@nWl?@UXalI@KnUl@la?bVKV?lLnWnbl@??l¥°Un??I?K?a?U?a@UUw?WǔIUWU?Vk?m@?@£@KmLU¤UL?J?kU?V?UU?@?V?KUk@?°w????@ī?é@??¥mī?km??@?V?Vó°ō|U°?n@bVJXVVL@bU??akLmx@xmxXzW`XbWnXV@bWL?@?a?@?aXbWVkaYwU@ml??WKkLWWkLUKULW@kVmVUUY?UamV?¤?n@xUVUzkJV|lJU?"], encodeOffsets: [[121253, 26511]] } }, { type: "Feature", id: "3506", properties: {name: "漳州市", cp: [117.5757, 24.3732], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@@bl@Xb@bVVU?m?@n?x?@nKVV@?XVWxn@VnUl@nmVX?@LVbVV@xVJV@@?XIlJXU?V@Ln?@?lVV@UbVnnWVL@lnXUVmJ?Ll??wnll@Va?UXVla?LVUVV@?Xl@?lbUV?VWbn?nUlb?@@VV@?aVU?ml?Ua?Uny@kU@Wkk@WaUVk@@ammk@@U@UlU@aUa@wl@?mXLllnL?U@anVnU@L@VVV@KlXnWVnVanU?w@w@wm?n?@w?aUam@Uk?mU?l@@a?a@U@¥?k?K?wèˉ°w@?kwǖa?K???k@?ō??£??UKW?k??LU@Ul?w@¤Vz?VUbkKUbmLmlULU?UxmbXl@bWV?b@bUnV?U?VbULU@@VkbVL@`U@WX@?XV@b°?@bˉ?@¤@Xm@@b@`U?VVUL"], encodeOffsets: [[119712, 24953]] } }, { type: "Feature", id: "3505", properties: {name: "泉州市", cp: [118.3228, 25.1147], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@Vl?xkz@`?x?LVV@xXXW?Xl@xl?@V@bnV°?@??LVm°L?V?bV@??X?Wl?UmxU@WVULnx?@llUXUJWzn`Vb@?@b@xV@?mXX@?@J?VVXVKXkV@nVlU?l@KVbUL?JV_VK?LVWX@lUV?kIU¥lIVyVU@w?m?£nUVWU?@a?m@U?mWw@UX@@am?VUn@@aUUlUVanaWUXWmUnk?K@V?UlVVUUw?@XLWWX?ma@knm?bVb?VXbVL?@XJlInl?L?w?mXó?w@?V????a??ó?óK?°n?U??U?W@?ˉx?°??l?V?n@ll?a?@?L?b?`?@??V?XV??Vx@V@bULVJU?k??@???XUKk@mmULkaWbk@?x@UkL@a@K@U@UmKmbU@kV@UmVUbUmmXkW@LUU@U@KmVmU@b?VmKkkWK?nk@@xVb@bkV@V@Vl@nn@bl@VUXbl@XlV@@lmz?VVbk??nUV?b"], encodeOffsets: [[120398, 25797]] } }, { type: "Feature", id: "3503", properties: {name: "莆田市", cp: [119.0918, 25.3455], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@VbT?VVnUlUX@VKVLlKXXlKXL??nkV@TxlbXUWa?b?@?bü@XK@aWUXmWaX_Wynw@wnwlK?bV?@aUKWUUI@a?mVˉ?¥?ˉ?U?U?@n?ˉa?é@?ˉn??YK?óó@??U?@è?xW??n?x?KmkkJWI?@UKWa?UUa?amn@lnbW?XXWK?@VxUVkU?V@U?LmlnVWXXVmbUbkVVV@bm@UVn?@bW@@VXx?n@V?n@bV?UX"], encodeOffsets: [[121388, 26264]] } }, { type: "Feature", id: "3502", properties: {name: "厦门市", cp: [118.1689, 24.6478], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@VlUV@nanL@V@V@L@blK@V?wl@XalbVKnnl@VL?W??è@l?V?UIVK@a@UUw??WUU????@?_?a?K?@?bkkm@U?k????xóL?l@|@V?b@bk@V??nVln@Vb?b@xm?n?@x@x?x"], encodeOffsets: [[120747, 25465]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/gan_su_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "6209", properties: {name: "酒泉市", cp: [96.2622, 40.4517], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?n?a?@?Uˉ¥?U???£?WUyUU±JkkUw?yTI?x???ˉ?¥?Uk??U?ó±??IUxˉU?ò??Y??°?KYn?°?U@??@Vn@t??ˉ?Wn?°XLWlnVnbWn?VXxmb?a?bóU?lǖUUa?IUmlU???¥?k?¥?wkk?Y?a@ˉ??Uˉ°mV?k?V?nKl?ō???U@kl?U??kU?nUW?@?ˉ??k???mWV£UKnU?mUw?w@?UIVaX??wm?èmmwnˉ??ˉL??U??JUal?ka±V?a@U?k@????ˉWmn?Ua?¤??m?n?ˉm±x@wóx?L?òUxˉV?è?JUbózY??K?ˉōlYU??W??lˉn?bY@ˉ??L??mV@?ˉ?k?m???kV?L?mYXó°@??bV?óVY|?@?a??UV???èV?UV?wmb?J?wˋa?Xm?ˉKkkm??bX?m?V???2¤????????n????L??U??x???ǔ???n????°??????Tü??ò???b?è?è@?ˉt???°Vāˉb@lè????ń???K??????ǖy@??ǔ?ó??ǖ??w@????èVV?V?ó??@T??V@Tī?@°??V@???°Xτ??@èaü¥????n?ó?V?U??????a±V?U????"], encodeOffsets: [[101892, 40821]] } }, { type: "Feature", id: "6207", properties: {name: "张掖市", cp: [99.7998, 38.7433], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@èò?òk?mLU?l?U?ˉnV°??@°?b?T?aè??l???LVUè@??@yUm?@@??V?ˉTm?L?ˉT?????°VVw?J2????Vl??V?|?°???wYJ?zVxll2IVVVt?X?¤???V°|?V?@?bèmǔL???ˉ?a?ˉ?m??U?l??k°?Xy?UǔV??nmV??a@ynK°?n@l¥@????¤m???@£?U@m?mVkTU?±21°??w????U?ˉ??Vˉaè???????n_°x?Klx?klx?@Tw???@?m2b??2Llk?WXa?ˉ?a???K±w@w?U??V±Uk?@@?ˉ?ˉx?U?±±UU°ōxVx??ō°óˉU?Y|óbYt?@?èóUV?Ux??@?V?UVYw?è??óVkkˉJ??kmmL@??K?x@bk??@U°?2ó`?????mnˉ°?Uwl?kU?`?|?????z@??n?°U?ˉKmVk2?J???T???¤UL?@mn?`???nUx?@???U@??k??@x?@m?óJk??¥V???óò?l?°??U??ü???@?x"], encodeOffsets: [[99720, 40090]] } }, { type: "Feature", id: "6230", properties: {name: "甘南藏族自治州", cp: [102.9199, 34.6893], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@T???nKln?wX¥WYXk?xTUn?°a?VnUUKl?T??WXn?¥????@?nmVL@¤°?Vz?J?anU@a?wna@k??Uˉ?yX_?a?b???w?éXkWw?a?ˉV¥m?ˉ?U??I@??@?m?b°aè??U?¥@??knw??°I°?èmVU?ˉXa@w?W@w??Vˉ?¥lˉUwnm@k?aUaóKkk@??a?b@??òWaˉI?x?am??VU??x?òl?@zYòˉbYa?V?w???W?z?J??mJn2müˉU?ˉ?@?¤?b@2n?ml?@@???U??LVx?V??U??lma?b@??°?l?@WIU?ˉ@m??@??ó????@U??z?y?X??U??VUUVLkbWakVWmUbkk?KU???n???°Knk@a?UVm?nk?lˉ??lw@_kKVU@?na?@lUk@ˉ¥mV@kmb?W?bˉ??a@mkU@?k???kU@??`@?óó?bl?Ux?n???lVè?x@blVkVVn?`Xè?è@??K?£YJmUUnU?mlU?mKUn?V?aUw?U?`ˉnˉwW?nxV???@b?n??kI??kXU?±ò?x?è@?X?°`l??V?Ièˉ?V???VVan@Va?UVa??Vm?blkèW??WIXa?alL@wVb???V?|lL@l??nò?U?nk??L@?Tk?T?K?b?tW|???V??ULUokèl?Ux?xTUUx?ò?x?@Xb?L@l?@?òlXVln@?bm??J@??n???x@bn??m?xVXmbèè@??£?W?w"], encodeOffsets: [[105210, 36349]] } }, { type: "Feature", id: "6206", properties: {name: "武威市", cp: [103.0188, 38.1061], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@±ˉ?¥@klwU???TYmw?Km?ˉ???@??kV?ULˉlV?UK???m@a@U?@X£°l°L??@aōVYw???KU?????WJˉ?lm@??VWa?@kl?Uma?LUana???kˉJ????±KkXóü?x?2??@??nUò?b°@??kL???X??@xYn?xWx??ˉ¤?I@?n??VV?VlU2?è?V@x2x?L?ò?b?°Wb?XklT??@l¤?X?`?wl@?è?m@b?nV?Ub??@è???L?è??Uò?|l??`°???ǔb???????n?é???ā?|?@@l°l?|?|?T?K????????m??y????@???ˉm?U??n???UaU????Y??"], encodeOffsets: [[106336, 38543]] } }, { type: "Feature", id: "6212", properties: {name: "陇南市", cp: [105.304, 33.5632], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@?èT@l`U?mV?????@nn?wVlnVVa?LV?è_??T?@n?a?x?@?l?_?@VxnK@llLnxmè?JnbUx?I°?l@n|?lèIlmX¥?k°@?k?J?k2é?@k?laUaVaU@@YnIW?nmnx?k?oT??aV?°?V@nw?K?x?bT£?V?U?b?t?Ln?m?Vw?I?J°?@?nb@°°I??Uk?KV???@?ˉ?l??Lnm?£@anK@?ü?n?@?mL@£?yk?UUmbUTY@ky?bó??XUx?WVz?b±mYbXa?wUamLˉ?@wUKVwmˉ?J°?UWVk?KVk°wèV??V??lU??¥??kmVamkn?Uwˉˉ?b?¥?K?k?Kk??V?Vk£kKVw???a@kóy?ˉ?Vk?ów???Xō¥??ów??ˉU±?k??@?x?I?ò?Vmèn?ü@n°?bUbYV??UnnJˉ?@?m|nVü?@??L°JXb??@??aèb@?ll?LVb?b@lmnVxk°?|U°??@x?X@xWb?°UV?nˉòˉJ??mx?l@?"], encodeOffsets: [[106527, 34943]] } }, { type: "Feature", id: "6210", properties: {name: "庆阳市", cp: [107.5342, 36.2], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@kw????Vam??Vˉw?IóVklˉ??Km??VōˉYWkL@bYKō|@???@??L?x?@?b@l?a@km@@lˉnm@Ua?@??óWUXm¥?n?w?`@UUx???°?|@?VJ?_n??IV?nalxkX?JWnˉ?nV?L?xl¤nnVbklVX@xnxmV@bUK@nm@@x?V?°±a?n??kUWnUa?x@m?n@?ˉL???mUālU@l?V@blLUblxklkI?xˉ°?UXb?aV?Un?V@°?LUlnb?X@`°?nVmbn?m?V?kLmK?|U?@X?y@kl@U?°K@?XbW???@b?WnLVa?V??Vz@xlV?¥lbUxT?lV?U@n?W?n2?VJlU???LnmüLXa?n@m?w@wlUlV2m?blw?Vè?lLT??±@?lVnUlxnkma@m?k?J@kXV?U@mn@??VXU?V?lLnmVb?aV?nWV?èUl°èˉ?In??U@kk?mKk???kˉ@?m?k?ˉ@ó?l?@?Vykkl?UmlˉT?@w"], encodeOffsets: [[111229, 36383]] } }, { type: "Feature", id: "6204", properties: {name: "白银市", cp: [104.8645, 36.5076], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@VKUè?l@??è°?n??LnxYT??V?kx@l?|2°?ó???????@èx?a?xlwèV?a@ˉ2a?£?Jk£l?nUT@°???@y?wl?lIX¥??nw@?TWla??lL@?Uw?ak?l?@??ˉmwna°J??VˉnUVóT?m£2óWaU??@óYU?V?èkkW@ˉ?xV@X?lK@wX@Vmm_@wèY?KUˉ?wVw?KˉV?k?J???XkWVa?Im?ˉUk??lV??āV°mxó?k?@?ó?Wx?üU@Ub?z?J?k?@??nVl??@k??x??@?WLˉ??K@a?Imm?@?IUa?@??U??êU¤??Vò?xˉòV????lk@Wb?|UbkWV_?yˉL?aó?k?@b@nmbkx?°"], encodeOffsets: [[106077, 37885]] } }, { type: "Feature", id: "6211", properties: {name: "定西市", cp: [104.5569, 35.0848], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?a?V2wVJV_@??Llan?ll??üó?_?ln?Wa?k?xU??bmV@?è°lè?nk°l|?`@nnL?@èlüI?yVaV@??Xw??@?l???nwUˉ??U?èkl?°Vn??JUblX?W???I?l°U??V???@aVVVmnL@?l??UUw?mk??£?bV¥VUVw????la??YT?mk£?LUyˉL@?WlkKW_XaW??m???U@a?k???akXkmVwm??V?U?b?W?ón?mwnWW£?KènV¥?¥???_k?lW?bUˉ?V°a?bnaVwmaōIn?mwkK@kmLUw?@?`?k?@?w?b@mY??ā?`U??KUbmUUk?xmm?@????nUV?k_Y@???|?V?èˉb?a?n?@@??JV?°?n?U|?°?bXxWl?ê?x???a?bW`?zV°??@lmb?x@bmV?b?I?`?|@òUVUI@??L@b??@???@??lmxnL?°UL???T?T?°kLU??L?°?xV??n?KV?l@?zX@"], encodeOffsets: [[106122, 36794]] } }, { type: "Feature", id: "6205", properties: {name: "天水市", cp: [105.6445, 34.6289], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@Uyè?V?VUnn@?VU?`Ublz?Jnk?@Vb?KU?°l?w???W°?nkV??Uèl?£°V@?n¥?V?kl?kU?±U???n???lwˉUkwmKU?lmkUmnkym@??@U?mW?èU°l°an?lJ?kUKlU?ˉèm@kmWV?kkYLUWUx±b??@ˉma@?ˉ??I?JUxn?m??K?y?a?V?UY¤óa?w?LmxU@ˉ?U??bY??1?lmwmnX?mJ@TV@UbVbkbl??@±ê?l?I?lˉ@?lW|kn?J?km¥k@ˉ??Jmbóaˉb?UV°?akXl??`???|U|?m?LX¤mXnxm????X?a?V?Un?UxlnlW?b???l@b?V???nX?WbX`lLXk@?°KVz?Kl¤?nTY?èkb??ü?"], encodeOffsets: [[108180, 35984]] } }, { type: "Feature", id: "6201", properties: {name: "兰州市", cp: [103.5901, 36.3043], childNum: 5}, geometry: { type: "MultiPolygon", coordinates: [["@@lW2L????°I?l??mbVb?Knb?Vlk?@XbüU@?kn°?XI????V??L?óTx?Ul????b°K?zU`lXVa?¥Xal@?k??U?°?èwU???V£èéV????@Vb?J?@nnüJ@b?L°?XK@ī?ó?wl??@kómU??mK@m?_k¥lˉ?mk??ˉ@?nU?aV??wólXbm??k?`???èkkm?kb?K@?U`UI±x?U?bWlX?mbVb?òólk??IWJk??@?z?K???@?xUxó???ˉLWb@??ò??±|U`nb?āU?Vb?L???U"], ["@@?ˉlwna@mōèˉKˉkW¤?@@V@b?n??VLU?°k"]], encodeOffsets: [[[105188, 37649]], [[106077, 37885]]] } }, { type: "Feature", id: "6208", properties: {name: "平凉市", cp: [107.0728, 35.321], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?LUxèxV°?L?T@xn`ü@X?@n???wnJmwUx???aUk?w@V@w?aVmlLXYl@X??V?mV?°@nl@UUUWK@w??VI2òlm?@nY?yVV@n?J°???U?m@k?V?nK??è¤?K?bl?nKllVk2a?¥èˉ?óVw@V?_?x?mn|VW?X???@Vbn@°m@kn@@l?b@k?a?@?w?K@???@??UlKVa??WX?W21ló?w@_°?n@@_lK???W??@?mLUW?n???@?l?_?`???mm°?bWb@??VWb?UU??K???a?lmk?U?l???L?l?Um|@?ˉU?¤?k?VU?mlˉ??X???xˉkV??LUa?@ml?IkyVa?_UV@?mmUVU???VzUxUVU|?a?¤l??nVx?Vk?@?mKUnUU@b??U???", "@@@???@?mlk??k"], encodeOffsets: [[107877, 36338], [108439, 36265]] } }, { type: "Feature", id: "6229", properties: {name: "临夏回族自治州", cp: [103.2715, 35.5737], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?@???L?y?@l?XI?Jl??k??UanaW?XkW@?yk@U??L?mU??w?ˉ?KV?lK?ˉ?Y?Y??VK?ˉmKnw?k@???@???@a?K@?VJVU@??¥?_Uyˉ?@£UKmn@???ó??|Wm?XY?k?VLmV?Uˉbm?YV?wWlXTW|?xkmmL??Y???±U@VT???@??èW°X?ü??yU?n?W?nXYxUx°lV?XJl??V"], encodeOffsets: [[105548, 37075]] } }, { type: "Feature", id: "6203", properties: {name: "金昌市", cp: [102.074, 38.5126], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@??è?????°b?U°?V??ń??ǖ?n???ō?ǔa??ˉ??_k??¥V?è???üK??@???VaU??m@aōn??k@?x?_?Wk£?@Y?±K?è±a?n?@??Yx?@kw?lkwōLˉwm`"], encodeOffsets: [[103849, 38970]] } }, { type: "Feature", id: "6202", properties: {name: "嘉峪关市", cp: [98.1738, 39.8035], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@ll?x?|?l?|??kVVn?JVbǖV?k?V?a?bnaWw?UXmmamUXkWKōˉXm°??????@UV?K???k???b"], encodeOffsets: [[100182, 40664]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/guang_dong_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "4418", properties: {name: "清远市", cp: [112.9175, 24.3292], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@l?ˉ?k??aVˉ??VaèU?¥???Ilx?mnb?U?xl??U?l°k???Wl??@??VwUanUl@?xVk?aX¥?kU??a?ˉ±?@kka@?UwmUkw?Jk????±k@???L@?YWUwVY???x?Uˉ??X@m???@@y?£VmUw????Un?lUnWUˉ`Uk?@@??x??@b?xX??VV?ˉL?āk?YL??ˉ@V??āˉln?W|kV??kU??UK@??U@a??óü?UU??@?|k@Vx?KVb?n??@?????l?@x???bW?nlU?lxèlV?è°??@???@x??Wx???V???K°??¥??n??k?@è?m??K@¥?k@??@?n?V"], encodeOffsets: [[115707, 25527]] } }, { type: "Feature", id: "4402", properties: {name: "韶关市", cp: [113.7964, 24.7028], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@W?Xk±?@?Uw?mUw?wlmn@?wn£m?kI?¥??@¥?a?ón£nWWw?£V`T@??nVml@x???IV¥?kUmkamUkVWw??mó?£UV?Kmn@x?@kbmmˉa?Xka?V?aUbY??2??l??IlxnVVx@?lb@l2??°?bV??lW|?bUl?wk@mVVbUxó??@k??X??ˉlók?Vk??w?Vma?nkw?J?è?|?VUb??U°?blā°?kè@x?|?ü?°@?°??|óa?VU?lUlbX?l@n?üV??nKl?nIVT°W??°U@bnm@¥?IV?2Ul?°VnalzXyl_Vy?|l??Llx??@?Tb?Km??knVWanw??Vw?o?@n_TV?aV?üI?l@??Kè???VJ@a?£è@??@??km??aV?ˉW@_?aˉKmbk?kLmw?@?¥"], encodeOffsets: [[117147, 25549]] } }, { type: "Feature", id: "4408", properties: {name: "湛江市", cp: [110.3577, 20.9894], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@@?kX??@a?UU?lk?J?k??@wVJXUWk°W@?nKnwlUl?2??blU@?lI?l@?XbW??xnm@?lW@w?wU??JXˉVU°`?óˋkYYk?@?m?è?mw?a?V?xU???°???nymóX¥????@°2?U?±?U¤?°?āˉ?n?U???V?@è??@??òU?l¤n??b?êV?°?èy?zVaV?nU?L?a?bVl?w?@"], encodeOffsets: [[113040, 22416]] } }, { type: "Feature", id: "4414", properties: {name: "梅州市", cp: [116.1255, 24.1534], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@??n??lW??x?|@l?Vl?lLkè?a@z?¤????UxlnUKUbYlU?lb@?Vx?V?klJèwVˉ?@?l???n?bk???T?Uè?klm?L?¥?L?W????nKUkVa°V?x@IVV@x°bUk?a?a@mV@??@y?w?L??UwVU?V???U?bTVVann?@Xw???ˉ2aVamkXa??@?nw@¥?UXa??kbWaˉKUw@¥m@kwmLU?UU?J@kmU@UUWU??@?y?anwm??lˉ???ˉU??mKUm?wV?kmYX?bW@XWYb?kˉ@±??w@?U@Wˉ?@???¥U?U@???IU??akJ?ā?ê?°?t?Xkam?@??_?J°?m?@X"], encodeOffsets: [[118125, 24419]] } }, { type: "Feature", id: "4416", properties: {name: "河源市", cp: [114.917, 23.9722], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@°VlmX1la?òlm?@???V?£??@|?klyn?n?lW°z?W??°?VbèV@l?bnn?J?kX??V?a???W@??UUw@?kaV?TkVaVLkmVw?????£@y?bl?kKk??U@k?¥?wX??kmó??@Wn?ˉ??I?`@?n?lb?W?y?ˉ?é??lI@?XUmWUw?@@?UJU???mKUV@x???kˉ?ˉLW??nUx?K@?±?Vw?aˉ?@¤WX@??|@¤?Iè?WxX??@Wx?w??UnVb?èmV?a±2?UWl@?k?lè?¤n?ü?XxlUnVlbVn?lU|?Jó?@wnkmU??Y@U_?¤XxmXm¤???b@|è??|lJn?"], encodeOffsets: [[117057, 25167]] } }, { type: "Feature", id: "4412", properties: {name: "肇庆市", cp: [112.1265, 23.5822], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@l@?¥?@V??V????@b?V@?VLè?lVèólUX¥m?°k??U?°@??TKl???°KU??UW?èw@a???w@??@nm@w?£kóVUVn?K??k¥?£Vam?@nkKkb??ma?kmLU¥?Um??wmVU?mU?J???aUx?In`mb@Tˉb@?nJ@nl?U?V?lVU??L?Wˉ??`?_ˉ`m?ˉI?b?W?z?x±J?x??ˉ?U??_k@???J@Umb??X?lL??n|@??xlUX??xUb?L???UnV?wl?U??b@?lW?X??m2??@TWxX??Unb"], encodeOffsets: [[114627, 24818]] } }, { type: "Feature", id: "4413", properties: {name: "惠州市", cp: [114.6204, 23.1647], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@lb?W°bnnla?@@wnm?LVUk?l?@?Xk?V2±?bnU??UaVm???xXw?@W?Xw??èJ@£ü¥@?XW@£°??bUx2?@??LVw?mX?°K°??l??@wVUnLè?V?VIky±wk??KUˉ???k???X????lwUwlm@m??nKWa???m?ˉ?ó?m?bˉal?Uw?bmb@lTòVn??mā?@V??bV?UnmakLm`@x?kklV?VJVn?lV?UnmJma?LUbl??zm?kL?a??ō@@z??V|U?V2kJ?nüU@?VXU??L@?lJ?L@bY¤UnV??b@xVnlK2?Vx°V?xlI?lkVl2k¤@n"], encodeOffsets: [[116776, 24492]] } }, { type: "Feature", id: "4409", properties: {name: "茂名市", cp: [111.0059, 22.0221], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?Ln?lk?Knk?L???Um?èxlU?Jló°n@??an????a@??@X_@mYóóU@a?aUˉmLˉ???k?Vˉ??Vwkw@?V±?£@???@??alw?±Vk@m??mˉ?????I?`ō?ˉ_UVW°?IV??x@xkX@?mn?wX?Wa@??kkJ@?kV?a±?k?kVmxmL@?ˉXXlWVUI@x???l?IklV??V@b??lW@?@nUxVb?lVxk?lx??n??y??nI???°?aXwlK?bVn??Xb?L?¤?k?L?è?VV???2Il?VX?ynz°KVx°@Vl?LlblK??"], encodeOffsets: [[113761, 23237]] } }, { type: "Feature", id: "4407", properties: {name: "江门市", cp: [112.6318, 22.1484], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@lUXx°JWnn??XV??W?X@??oVLVˉnU?Vnb???x?aXmW?XI??Ub°xlK??lˉ?K?xXT°??Xè¥ü@??T?U?????nó?Vma?x?ˉU?U¥Yˉ@???@?@???UmU?±??KYxY_?J?kˉ?ó?ˉnmèk???Wx??mnUü?°@|?@?x?Lk??aVnUxV???VlnIlbn??KX|"], encodeOffsets: [[114852, 22928]] } }, { type: "Feature", id: "4417", properties: {name: "阳江市", cp: [111.8298, 22.0715], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@°?nKV°?b@b?VT?@n?Vlò??Unlnn@lmkmVk?aèk????k¥??T??KXkW¥?Lm?kamJUk??U?VwUmèbl??K?w?@@¥?ˉV?nm??Xw??l??@kbW??a?@óL?lˉ??@???Ln°??@nUl?2kx?b@???@?ō¤U2@?lxUx?èU°l???"], encodeOffsets: [[114053, 22782]] } }, { type: "Feature", id: "4453", properties: {name: "云浮市", cp: [111.7859, 22.8516], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@@V?I??l@?`V?°????w2I?w?y?X?a°Jn?°_è`ü_°??X?KV?kUU?V?k?@mmI@?°a@Ynam_èJVwl?X@??lU?óma?UmVU°UK?1@??W?XU??Wm?XmˉIWwkVWl?LY???l|?????l?bUllnknm@kmVmó?k??UW`?@@??b??m??b@?ˉmk??IkV?wn??V???Kml?Lklmè?K???V?K°2?`n??¤n?U??bWl?xVx?LUx@°nXm`V?klVxmnnx"], encodeOffsets: [[114053, 23873]] } }, { type: "Feature", id: "4401", properties: {name: "广州市", cp: [113.5107, 23.2196], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@??VxUn?¤@z?@??@nèW°?èV?w??UTVxTX@??K??l@T?Va?b?U@ml£k±lU?kkJ?wˉUUw±?kLUm@w?aU?VmT£@a?KkI@??KV?UW@??V?mlIU±V?U¥??@y?z??????????nī±m?@?2ˉl?°@nY?ó?Ull@XnYVU|mVV°??V??J?n?b@°mbn???@2ˉ?ˉwVw?@@nmxX¤ˉL@?VLU?m@@l"], encodeOffsets: [[115673, 24019]] } }, { type: "Feature", id: "4415", properties: {name: "汕尾市", cp: [115.5762, 23.0438], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@@??@VxnXWV@??bV??J??V@T?U¥?x?£UWU??w?UU¥WVUk??nkV`°LV??w??nU@???lb?ˉ?Vnal??@@?kUY¥?aóˉ?a?L??Uymyˉ?ó@??ó??w??XbmL??@nknVxkxü??ò?W???l??V°?Ll?2xlz"], encodeOffsets: [[118193, 23806]] } }, { type: "Feature", id: "4452", properties: {name: "揭阳市", cp: [116.1255, 23.313], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@V?è|???@X°V@@??x2?°@?lTaWXX@?aTWlnU??xVnnL??°V??@k?m??l?@??ak?@mlk°aX?±?nwm±?2ˉJV2?@?wW??_m??a??V??U@mˉ?U????Jl??a?bVn?l?Ll???±wY@?xó?@è?@k?mb?U?°ka??@?mV???xU?ˉKU_ml?èVlXUV|?V?xV?VX?¤?wV|Y?"], encodeOffsets: [[118384, 24036]] } }, { type: "Feature", id: "4404", properties: {name: "珠海市", cp: [113.7305, 22.1155], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?è@?T°V|V??°?wnb?U??n???@?nxü¤?2llU°VnèJT?°U?é??Ukl??£VV?KTV°£n¥?£??Yyˉˉm?kwˉb???@Ynˉ??V??ō????J@?", "@@X?ˉkmèVbnJ??"], encodeOffsets: [[115774, 22602], [116325, 22697]] } }, { type: "Feature", id: "4406", properties: {name: "佛山市", cp: [112.8955, 23.1097], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@èb???InVV?nUüxn??VV|nK?lnb??lalL@mn?Ub?¤l|???LUmUVl??¤@xmnVl°_XVVm?kVmè?@kn@V?UK@?°KW£nw@m?@Ux°x°?@±??m?na@ˉ?a?m?IU???UˉnUV¥TUWmk@Vkˉ??Ukn???WY????@?|?Wˉ?WY?w?Lk°??kLˉwVa??WJX?Wn?b?wkV??W@k?"], encodeOffsets: [[115088, 23316]] } }, { type: "Feature", id: "4451", properties: {name: "潮州市", cp: [116.7847, 23.8293], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@°?üknèmx?b?z?@V?VX@VnV@l?IVVV?nKlxn@@|Vx°LXbla??Wb?V°£ˉ?W?@?nW@??aU?V??wW???@¥??UYǔYóV@ń??kUVm?IUw?VW?X1???@W?ˉbkl@nl??b@?k????n@l"], encodeOffsets: [[119161, 24306]] } }, { type: "Feature", id: "4405", properties: {name: "汕头市", cp: [117.1692, 23.3405], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@?@U±°I?±n2mx2??@??WoXè?UVx?JUnlVè?@??UǔTV?n?Vy??Vm@?kaYU??ó??è?K?¥X??¥Ww?k??ˉ@?w?K?kUm?a?bk??I??Vò°?@n?VU????bn??`X??x"], encodeOffsets: [[119251, 24059]] } }, { type: "Feature", id: "4403", properties: {name: "深圳市", cp: [114.5435, 22.5439], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@TL??@x?bV??V?K°?X?°K?¥Vw@anU?è????lk?l@wn_lKnbVmU??aU??@n???UmY?ˉU?bk?@?kx?@?a?X?w?J??ˉL?YU??ó??óêWo@b2nm???"], encodeOffsets: [[116404, 23265]] } }, { type: "Feature", id: "4419", properties: {name: "东莞市", cp: [113.8953, 22.901], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?@???blKn??yk?Va?KnbnIVmU??kUmUIUó??????mV@bUxó|ˉLW?ˉ??L?UU??a@w??YK???????è?y"], encodeOffsets: [[116573, 23670]] } }, { type: "Feature", id: "4420", properties: {name: "中山市", cp: [113.4229, 22.478], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?X?òlm?V°???T?@m?ˉ°k?±?@@aX1ˉVY??IUmVˉkk?±?£mw@???mè??m????èV?"], encodeOffsets: [[115887, 23209]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/guang_xi_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "4510", properties: {name: "百色市", cp: [106.6003, 23.9227], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@lklWXL@V?I?l@XnJn@VUUal?k@mK@kny@UlU@a°???UU@VmaU@Ua@UWw?@?n@KmL?m@alk?mnI?m@an@VIUamW?ImwU@@a@K?X@JVL?UVmUaVkUa@m?@@Ulmkk°?UaVUlKXbVwVIkaVmUk@KVk@a?aW?ˉm@w?¥la?X@Kma?kVmnUl@nxVK?InU@yVaVIV@na°KlxX@@_lmX??UV`VIV?V@??n@l??bn@@WUkValK@?2yl@??VUV@@K°L@KU@@UVaXIVVV@naVkVa@K@UUK@UUa?LWa?w@m@K@UV?V?@mV?UUVKnL?mVL?K?bVK@UUIk?mI@mUIVK@IUK@VkL?@WU@m?U@WmUk@?I@V?Jk@WwX_@amK@UUWkI???K@LVb?@mVmakL@J@bU@Ux@x?bmI@`?I?wm@UbmKUa?UWaˉUkJWV@X?JUUˉLUmV@ma@kkamK?w?LUUmWVkkm@aVUUkVKnVVUm?XK@UW@km@Ukkm@@W@U?kUy@I@aUUmb?¤U@kUmL@bmJU@Ua@wkLWWkL@U?@VaU@?LUakKWbkUWVkKkLVLUV@JVb?z@V???@?VmUU@kVmKˉ@V?U_?VWakVmIUKUaU@@bml@XU@@V@LmKUV??mVUK???K?bkaUX?KUL@x@V@l@?mxU|?V@?lL@V@Ln@@VV@?nlKUaV@nLUbmJnL@VWLkbmV?@@L?W??XLlx?VVIVV@x@V2blUVm?LVU?K@kWWXUlV@Xl`?LX?l@@V???n@VnbV?@lV?UVUèVb?@@`UXU`l@@XUVm@k?@xmVknUJVXUbmKULmb?x@VlJ@LVbkKUbVL?UUV?UVmU@VaUkUK?VUwmLkUUVVl?bka?Xmw?KU?VVU@@??V±Uk@VWUUm?XamU?b?Kk??`???U@UnWW_kKmbUVUVmnUV@?nJVUl?UbU@UV@n@JmI@VmbnVUXlxˉ?kKmnVV@L@V?bkV?Umm?@UbˉLml?U?L@VWLkmkLmmn£WmnKU_mW???bnbmx?@U|UJU?@Xmlk|@?mnUUm@@Jn@lV??VJnIVW?I@a???K@I@aVK?Il?Tnnl@nl`nb?X2l@xV?@llbVn2?VVl@nn?V@IlW@Un@@kVa°K?nèmVaV?XUlaV?èU?Vlw?UlynIVa?an@lVXb?I?@n¥la@K?_n?@b?x@XnJV?nKVz@`VXV?U`@b?|UV@V?Ilx?UnV?K?Xèb?Vll?bVbnVn@"], encodeOffsets: [[109126, 25684]] } }, { type: "Feature", id: "4512", properties: {name: "河池市", cp: [107.8638, 24.5819], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@lLVl?bVV@nXVlI@JVX?m?n?W°b?IVV@?ln?@nalVUb?nW?@?kVkòlbVKn2°bU?lV2@?X@`nb?aUI@?°wlU@aXJVI@aVK@wUamIXm?@XUV@@bV@Vm?Im?nUUwVaVKXU?nVK@ak?VwV@nL@UV`n@@X?lnIUJl@X|?V@aUIVm@an?V@UwnL@VlbVL@KVVXUW??wUUVUka@UVJnUlbnalbVVn@°??LV`T@?XVxV@@bVlUVVbXnWlXnml?@XXWVXJmbUI@V?llUVkn@@VWV@Vnb?@VXUJVnn`lLVk?a??lV?Lnw@WV@lInw@WnU@U@m?knUVó?K?wUmUXU?U@@wVJVIl@XKVVVbVI?J@Un@l?VLnm?b@U@Ul@nU?°VUVJnnVJV@??@mVU@?@wkUVwkKWk?yUUkU@alkè@lJ@x?Il?@UUWVkUw@Kn@@kma?VUl?UUL???UUKl@UUmL@aXU@mlUUwmK?kUUVKVU?a?KU?nK@U@Vl@XUWU?KlwX@?b@K?@XkV@UwWJka@aUwmV@U?@@U@wUm@?kLWVkIW?XnmV@VkbmK?LUbk?Va@a?a?@@aVU@aVak£@?±UkVUˉV?UU?JV?UI?@kxmUmWUb?L?w@K@aU@@aVU@??Kma@aka@_VWkk@UWVUKULWKULU?@KUn?wVaUK?xU@U?ma?L?m@kVmVa@Uk?mI@?@KmIkxU@@K?U@mmakI@V?LkmWkkJ?_U?@V@L@n?xXb?KVb@VVL@V@LUbUlmbU@UUWJUb@VV@@LˉK@LU@UV??k@±z@?kLUbVl@Xm@?ak?m@??U@U?UJU_?VW?kn@`W@kwˉLmbU@UJUb@zmV?JULmwk@mVUn?lnb@L?Wkb?|@x°nX??b@bUl@LVlUnlbUJUxWakLUVVbˉ?llkn@V?@@nVbUlVbUn?VUK@I?W@L@bV@nx?JnXVbUJm@@b?nmJ?nkl@b?nnK@L?m?@Xx@VVbV@nb@UVV??ˉ?@bkV@Vmz@lnLl@k?VbUVm@mI@W?k?J@UWKkXkl"], encodeOffsets: [[109126, 25684]] } }, { type: "Feature", id: "4503", properties: {name: "桂林市", cp: [110.5554, 25.318], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@nU@J?X@`XLm|Vb?`l?VXXW?@Vbl?nV??lanLnmVL?K@_Va?¥@kUa?@VmVb?aV@XVVzlVVK@knKVmX£VK?Llbn?@b@llL@x??XaV@°è@¤?bn?V@@Wl_?V?U@W?nVamw?wVbn@?K?V?LX@VmV?UxlV@?nVV_nK@m?I@Wn@@I?U?@@wVWX@@I°VVm@wmU@m@IU?V?k?lk?Ummk?V@@aV@@Wn_UKla@k?aV??lVanb@k?@@KlVn@@aV@nIWW?UUaVU@?kKmwU@UImKk@UU@w@W@???k?@?UkW?@mk_W@Ua@a???@?ˉ?mV£@m?UUam@?kWak?Vama@UUm@?nw@alaUmnUlVlI?V???LVyk£Vm@k@UUJk??K@kmKUw?Kk?WK@UXImyVwnI@m??kUlkUKkUVm?w@kkJWUèm@_k@@a?aW@U?UJUwU@@IWKk?mUUV@nVl@bVb@bU?UX?akw@?WUkbkK?bm@?xUlkLm@@wmKUX@???UaVW?XVmU@@UUU?xkmWXkKkUWaUaUb?L@`UL@LV`UXmK@VmakLVbkL?xUJUIVbUVVbˉK?V@Xnl@?lVXbmònV@L@VWKkVUIWJkI??UamUUbm@U?kU@JUbW@X?WxUam@kbVVUnUJmUUV@b?U@UUV?@?Vk@?b?mULV|U@V?U`VLUL@xVbn@UJ@nWJXXV?VV@bkxVbUx?L??@x?|@?U?lXUVVlULV@@?n?U??b@xl?nJVnlVknUlV?Ubm?U@?bV??x"], encodeOffsets: [[112399, 26500]] } }, { type: "Feature", id: "4501", properties: {name: "南宁市", cp: [108.479, 23.1152], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@lKnbnU?@Ua@K?L??lJVX@VnL@bW`Xxl@?I@U?Jl@nV@X?V@nXV?@lK@UVL@JULVJ@nnJl?VJ@VUL?a?LUK?nmKULVVU?@nU??`lIXlln?K@UlJnb@n?V@LV@lwnJ@L@?nJl?@VUbUn@l?n?KnbV?V@?wVLUb?xVm@LV?VKXLVKVLXU@VllUX@`lb@bnb?L@?UV@bV@@b@L?x?KVanXV?UUmVUUUaVUky?UUa?ImK@mUUVUkKU_@W@UVVVIUW?UVaVU@UUKn?@k@al@ll@bnL@b?VUV?X@V?@@b?Knblmn@V_@aUalL@a@akK@kVKUKlwUUn?V¥VmU_VWVIVaX@Va?al??K@LVJnalL@LnK?wlVUw?mX@VX??lLUVnblaUmVUVwXU@WmˉVa@?TKnw@w?m?k???UVW2a@_mW@U@I?y?LVUUKW@@??LX@VUV@@yVU@UV@nwUUmJka@IU@?m?VkaW@UwUX@`?@kLWUk@m?kUUm@k?UUWkU?kWxk@@V?K@n?V@UVa?UUJmIkV?@UamLUbkVmamLka?@???kmLˉ?WI@w?Jmw?x@akU@aUKmbkaW_nW@_U@Wm@a@wkwUKm?k@?bkb?w?@mKUkkU@J@bW@kVWz@b?VUa?VUx@?ULkJWbXVVX?`@?mJUVU@@Lk@WbU@UJlnXlm?Vx@Ln@?b@K?LX?WJU?UW@k?aUVUbmV@nnV@n@lVL?VmLX?mXkV±@kx?L??Ub?JWI?J@I?mXalkUamKk?kL±aVw?K?UU@mTnbWJX?m?@l?bmKULWUUVka?bnn@Vl@VV?V@V?bVbnLWLXJWxXLV@@VV?"], encodeOffsets: [[109958, 23806]] } }, { type: "Feature", id: "4502", properties: {name: "柳州市", cp: [109.3799, 24.9774], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?wU??aV@n?VaU?VklmkUUmmIk?@w?aV?m?@?U@VKUkVUkWV?@??¥@w???KVwUalw@aUUU?WWXI@mVIm@Ua@wVKUKV_U?V@U¥VK?n?al@?U?@VU@V?V@aVUnVVIVmUUlan@VbXwW?X@Va@IlVV?n@VanVVb??lJXIVJlUXL@U@KmUn?WakU@?mk?JUI@mk?@wUmmUV?@JXaWIXWmaUI?J?kk@W?nJ@??aUak@?kkJ@kUKU_?@myU?óWUkm¥kUmL@KUKm@k_UmVa@?k@@UmU@mm_?JWIUVU?WLUl?bV?UJ?VUIVw?KUVk@mU@n@lUL@Km@@l@L?V?z?JmUU¤m@UbV2U`U@@?Vn@x@V?@@VnUVx@blbXIVxU@Wl?@@L?aW@kx?LXVWVk@@U@VmLV??L?bUVULVV?lnLVxkV@nWV@bnKVVk@VL?V?èVK?VVk?Unb@lm@@LVxUlVX@Vk??J@wkI?@kl@blVVV?zXllLUxlV@x@?UV@n??U@UImmUIUV?ˉmVk@@V@V?amnUKk?m@@V?IUJUaUUWLk@UJUI@xV@V?VWVn?x?LU?mVV?@VkVVVUnV@UVkL@VVV@bVxla@bkXVJVn?`nU@b?b@bVL@VnJ@?l@?V?aU@@_lW@UUU@Un?lll@XLl@@UX@°bVWVanLlknVV@VVX@VV?nU?VLmbXJ@nllXX@`VX?lma?XVWk@Wk?w?J@?VL@J?bnU@bn@@bVKUnVJVIVVVL2a@bV@@Vl@nUVakalm??UL@VUL@V?a@mX?l@nK@UlK?L@Vl@@nkllb@??Vnn@??nV??V°l??VInwlKXxlU°?n@@??I@UnVlak?UJWkUK@anUWK@_TJ@U"], encodeOffsets: [[112399, 26500]] } }, { type: "Feature", id: "4514", properties: {name: "崇左市", cp: [107.3364, 22.4725], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@@JVz?l@V@Xn@ll@VlnX@@VWLn?UVmUULVlUV@blnUlnXVV?K?xnLlb@lnbU@Vn°KVV?I@WXUlI°VXb?VVbnLVan@?x?J@_nJ?a@wVwV@@a@IU?@UU@WKXwWIXKmKUa?a@U?UUUk@@Umm?albVUXVVKnL?a@kn?W?XImanYV@?V?LUx2blKl?nLVbklWb?n@J?IXJ?IVa???Klw2@lUnWW?nK?UUK@k@mmU@mnUVaVU?b@lVXV?XIW??K@L?am@@KUwn?WkkmVIV@Xal@@KV@VUnI@??_UWWUkam@kkm@ka@m?k@wkJWIU?U@WXkW?XkWWLUU?@UakL?W?XV±VIVWUU@anUWaUK@IU@Vak@@UUKWa??@m@ak@@wUkla@mUaUklakwV?ˉˉ@WWUkLkKma??kLUnV`UxWX@Jkn@bml?akkk@?b@lˉbm??b?J?b@VXn?bVV@??b?JUkkKWVU@m??VUUW@UVUJWXkVkKm?UL@WW@U?Vl@XXKW?XJ@XVlmbUxnnm@UlVnV@XVm|VJ?b@?mLkK?bXblVkn@l@bWnX`V@@IVV@?V?V°n@@_na?VVbUVVbUJnzlVUl?XkV@Vlx@X?Vnx?b?KUK@bˉ?VVUV?L"], encodeOffsets: [[109227, 23440]] } }, { type: "Feature", id: "4513", properties: {name: "来宾市", cp: [109.7095, 23.8403], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@nVlw?@VJU??IVVU?V°lU2V@?l¤Ub@bUV@b?@?b@bUbl?Va?KnLla@UnUWmX?lJXUlKV@V_U±Van@V£nV?I?y?U@K@kn@@LVK@k@mnVl@VU?LUxVJèUVIU??aVkXKV?VUXJ?In`@nnV@Vl@@?UbVnl`n@VL@LnKlVn|Vl?XV?nz?@V`VL@llI?ll@Vb?b@?mIX?l@?l?IVJnbWXXJWb@IU?nVVn@xl?@nVJ?I@W?U°LUaVUUaVJVI?wlKUalKnb@UnLVWU_@KVK@_?KVa?@VKUˉVLVKn@la?aUkU@maVU?J@k?@Um@XmbkyVaUIUU@KV@laVn@KXKWUkUk@?aW?UUVw@aXKm?VaUUk?mI?lUU@wUa?xUmmU?ˉ?U@W?LU??mVIUym@U?VmUa@wmw@??m@aWLU??JUIUamKmL@??a?xˉ¥?kU¥U@±?k?UVmKU_mJUbkKm??L???_@WWUXUmaVUkK??UWW@?nVxkU?xmL@KkKmbUI@K?Lk??bUbW@UbUJUXV`UnU|m?VVkxVLUL@llL@b@bkKVb@bU`m@knma?L@a?@@U?WVU?U@amK@akkk@@b@lm?VL@VUVUb?VVXUJUU@V@XV`lLUVVV@nnL?JVb?VlzUVVbVVnUVVU?"], encodeOffsets: [[111083, 24599]] } }, { type: "Feature", id: "4509", properties: {name: "玉林市", cp: [110.2148, 22.3792], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@VJUXVVXlWX@V?xVnX@@`??ULW?UX?bWK@mULUUmJ@nˉb@l@VULVx?x?XU`VXXJVI?V@nm`@nU?VXn@lWVn@b@Jn@nU@Lm`@Xn@WJ?|U@@VnL?lV@@Xl`nIlJnkVL?w@KVK@U?aVL@bVKX?lUUKVK@I?V?L?a@U@W?LUlVL@bU@@blb@VlbUxVbXUVJ@xVL?U?lV@VU?bVLnKl?XJ@L?b@an@VanL@`VL?KV_UWl@U_?a@WVInlVUUUVm@I@W@wVakIWm@U@?XwlaVbnI@?m?Va@aXaVL?U??@aVa@k?KkL@KmU@W?zUK@wU@VWUUVUUKUa@?mKmbUK@_nWVaUkVaUaVUVLXKV?VUVmVI@UkKkLm`UkW@Uw?WW_??UaU@WakXmK@xUX?Jk?UUWUk@Wl??mJ@km@@aUK?zmyVk?a@kkWVUUˉlmU@@w?kkmV@Vk@m?I??Uk?a?@Ub?@m@UUU`m?UbWa?Wmb?X??XKWIXUWm@???@y@UkIUJUUWLUW?L@UkVUxW@kaWb?KWnXxW|n?m`XLVlUbVbUx?I@JmLUKUb@VW@@bkL@b@VlU@xk?@L@l?xXxWXX°V@VVVbUVV@UVVbULVnVJUb2b?aUb@VVVVInlV@VnXaVU??lI?VUb"], encodeOffsets: [[112478, 22872]] } }, { type: "Feature", id: "4504", properties: {name: "梧州市", cp: [110.9949, 23.5052], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@VbXblVlLXWln?wVV@VV@Un?WUXVb??@?VWXa@kVK??UaVaVk?UlyX@Va??VmUwUaVU@UèymI@aU?°@??nWV@VaVa?w@IV@VmnLVK@kmmna@???VbVI@aV@XbW`U??LUVVx?@VbUV@bl@VLXblJn|lL?°°@n?@K@UlLnK?a°LWbnJ?|UòV?UllLlVnKnbWnn?V`?w?@@?Xa±?n?l@XKV_?WVkVa@kVyUa@wU£UW@?UIVW?@@a?wWaX_WKkVmUULmak@UJUI@±m???k@m?VyUIm?nmmwnkUmVaVIU?n_mW@?Vk?@VwkmmUXa@I?aV?m???m?@Wm_U@??mIUWóLmUk@laXmmkUK@UmKULUUmWUL?@VakU?@Ub@b???VUKWb@bUbn?@?mJUakbWx@?@VXnlJUb@x@X@JUnVVUVmkUJ@X?bV`k@VXU`?LUK@_mKUbm@@b@?U`@nlV@b?UnbVbn@@`VbUbVVˉbm@@?mJXb@bVnUllVXUlbUl@LU|VVm?kLVb@b?l@V@XlK@V@nUJUz?°m??wmLmlXbWVU@UUUl?IU@VVmV?@@|?bXbWxX?WlXVWL@LUmkbU@@LVVVJUblzna@WVn?@@l?IUVnbV@Vl?bkbm@ULUKV°UL?@"], encodeOffsets: [[112973, 24863]] } }, { type: "Feature", id: "4511", properties: {name: "贺州市", cp: [111.3135, 24.4006], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@nL@xn@lKVk?wn@?alLlaXV@?lx?bVWV?@aUa@aUk@mVUnVl?XL@JV@VxVIV?X@?b@bl@@`?nXVlI@l?xUnlVVLkllV??@nmJUxnzWJ@VXLl??LVxnL@l?Ll?VI@V@lUnl¤Uz?K??@?Vl@??L?l?Ln??b@VnVVU@k?a?Knxn@VkVJ@??UlakmWIUaVanm@_UK@UVWUa@kl?Xam?U@Vm??VIXW?@lUVknVlKVLX?VX?W@b@Vl?nnVL@KXL?Kn@lb@UnW°@Va?X?WVb°aVa@IˉaUkUaVKVw?aXk@a?a??@wkm@alanUVw@alK@?Umkw@U?aUmU@WXUaUK@UW@Ua?VWI@¥Xa@w@?WW??V?Xw??U@mKUXUWVU@aˉkl?@akU@UULmKˉVUVW@U_m`U@@xVbUz@lUbUl?XU`WLk@m?2?Wb@??@?xU_m?XmmamLkUkKVkU?V??¥mIXaˉK?bmLkK@V@Lm?ˉ@?ˉkKm¥kIWaUKk@@aVUUa?@UwVU?KV?X_WaU@@bUJUa??@?mbnn@lULmKUnU@@J?xUbUbU@mX??ˉ@V?@bnJ?z@VUVVbVxUn??UbW@kz?VUlUbVb??UL@lWb"], encodeOffsets: [[113220, 24947]] } }, { type: "Feature", id: "4507", properties: {name: "钦州市", cp: [109.0283, 22.0935], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@@IlVVlnL?@?xla?al@n?VLlx@x@bXnV@@`mXX`lbnaVL@blV@b?wnx?I@xXJ°?nK?l???@lbnKnblUVanKVb?@lUnJVI?VUb@V?U@m?L@Ul@Xw?llVVX?V@lVnlVn?l@XVlK?@@_VWVxX@lb?U?nV@@JlbnIlmnVV@UwVK@U@k°a@mnIVVVK@nXL?aVWX?VK??@_W@Um?w@UXWWkUUVWUIVa?UkJ??UVWbUmU@mkUJUU@UVa?b±aVaUIUmVKUaVUU@VUUaUUU@WˉXWWw?w@k@Kl?@wkV@U@alK@aX@@UmIUWUI?@mmkXU`U_WJUnUJmUk@@amLU@UVW@UkU@@V?bUWVUk@@wmKkUWLUW?X@JmI?lUkkKWKkLWU?@UKWa@bU@@a@_UKW??UUUmJmw@?n?V_@??KóLmbU?V?@xUX?@Um@wklVnUn?lkaUV@?lV?2WVklWXXbWlkVkIm`UU?L?UU@UW?x@XU@@lWLU@kbUbV`UXllUV@bmb@LnKVbULm???nVVIV`X@"], encodeOffsets: [[110881, 22742]] } }, { type: "Feature", id: "4508", properties: {name: "贵港市", cp: [109.9402, 23.3459], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@n@VzUJ?nV??K@X?V?°nVVn?wVb@xVV?knJl?VVUbn?WL@bUxVVX??bl@lVXkW?XwWa?a@¥?@nUUUV@?JVkVVV@XUWanknK?xn??ˉVyVI@m@UkL@W@U?k@aUalKn?UUV¥@KVkkaWVkUVkUm@aWanI@?n@°aUUVaUa@_m@Uama?V@akU@mV_@??a@KWIk?mLUK?aUVU@?k?VUK@wUIWVUaVwka@Uka@aV@@aUKVk?K@X@V?b?K?U@JULVLkVW?UL@aUK?b@VUL@L?xUKmlkImJk_@WU@?kmK@UV@?¥XIm@@Wn_@KmVm@@I@aUmkXm@UWV?@mn_@m?UUJWIUWV_?W?wU@mUknVVmxU@@VUV@zU@UVW@?K@?X@VLUV?K?z@J@VnX@`±bUX?V???l?n@xmxYL@?Ubn°@XWVUxUVVnkbWVXV@X?`?è?Kn?lLVanIV`nLVUl?2?V@V|?l°|?w?b@?nKnLVbVJ?IV?XK@b?n@ènx@xVbUnV?"], encodeOffsets: [[112568, 24255]] } }, { type: "Feature", id: "4506", properties: {name: "防城港市", cp: [108.0505, 21.9287], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@XV@X°°U?lxkbVlVb@nkbVl@xl@@b@n??XbVL@Vl@UbV@@JVLXbmV@bVVUXUJU2?W?XlKVb?@VVXKlX?WlXXWV@V?XJlI@x?l@nlbn@lln@lbXalIVK@?Vw?UVb?U@aXylUX@@aW@U_UJmU??n?VKUamL@Kna@aVUkkVWU_ValaV@XK@kV@@W?wVXV@?V?KVVn_lJlUXkWaXWlkXU?±kU@?VUlb?kVmUmlk?ˉY??W?@mb@|VxULm?kJUU@?maˉw?mkX@VóJ±bUVUXYWk??lWXXl?xUa?b?I???@U@mVUKkkm@UJm@XnWV@x"], encodeOffsets: [[110070, 22174]] } }, { type: "Feature", id: "4505", properties: {name: "北海市", cp: [109.314, 21.6211], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@VaVLnK@I?JVwUaVaUkWKn_m?X¥WwXm?LXalbU£UyV???@Y?wm@?°?l?L?U?mk?mw?a?LYUUm@???V_?ó@£U??U?V????U°W??TVbXb?x@b@bmV?@???UY@@?U`m?@?nxnIVV?VX?VL@`@bV@@aXbVL?@XVlKXLlLVl?knJ@I?WVXXKlVnL@xl@UVVX?a@UV@VlX@VUV@nK@bl@nVVIVmXIV`V_lWnn?@VJVXnJ"], encodeOffsets: [[112242, 22444]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/gui_zhou_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "5203", properties: {name: "遵义市", cp: [106.908, 28.1744], childNum: 14}, geometry: { type: "MultiPolygon", coordinates: [["@@@UnUlJn??w?JU°VL@bnV?U?wlJ@X??XVlU@klVUJknl?UllL@bUJ@xULUl??UblVkblbnw?UXmla@??wV@VK@L@UXaVKVLXW?UVa@U@Im@@W@£UKUakKWIXU@al@@llUnL@W@Un@@VlUV@VIUanKl@Xb@lmxVb@b°b?b@nlJVVn?nJ@b@L?V@ln?@LmV@V?x@blnVK?nlJXIlw?J@ò?b@nlK@Un@UL@VVVVUUUVK?l?@VUVL?J@UVUUw?@Wm@??UV?èVlbUb@J?Ll?X@@x???Lm?k@@nlx@bUJUzVJ?@@LVxUV@bWxnLnVVK@_?K2xVbV@n¥@aVI@b?@l@Va?Knb@n?`n??mmy?W@?U_?wV@VlVV@Vn@n??@nI@Jn@°|VaUU@??mV?VWVaU??U@aVKn?VbV?UmmU@a@kUw?m@aUUmUUJˉ?lakU?aXaWUUaV?kk?am?kmUnVlUL?VlJ@XU@UJWUUw?k@aU@WbkW?L@U@WU@@XUKmV@aU?VwU?UJUamUUVU?m?nIVJ@kl@XalJVn@KVL?¥@UWIXWmU@mV?UKnUWLUKUaWUUKVU@U@anUny@UlUkK@w@a@aVU??UkVw@Wmk?J??mUUVmwXalLXWWUnam@Xk?J@UVU@U@W?@@U@I@Wl@ènlw@KXLWb?lVUkalKUU?VVaV@@wnIlaUmkU?KWU@KkUkLWa?KU?UWUn@V?K@LnnWJUI?VkUWVnV@V?@@X?K@VUIUJ@IWJkX@VVJ?I?VkK@I@UVaUWk@m?@wnUWKk@mxk@@?lV@b?xmb@x@V?UmLkU?J@nVV@b@VkLVbU`ˉI?l@?U_UW@UU@???Kˉwm@?x?Lˉ¥kI????@bkb?@Ua@??m@kkW@XVbmV@?kV@bWbUbV@?|?xXlmVk@?|?bkaWL@KUImK@wUK@VUI?b@bmK@L?y@akXW@kbWlXblL@?ULUb?`@U?kUymXˉ@m?UJU?UJ?L@Lm@@W?X@lU?Vl?Xll?@l@èk°V°??X@VU@UVll@XUJVXUVm@@VXLWlnV@X??k@mVULnxV@@bm?kL@VWLUbU@UVm@?b?@?¥UnmJ@UUV?kkJU?l?U`UIW@?°kLUlUI@WVI?U@mWKkXk@??WU@bX?W?@J@x?X@l@LVl@x?LVxXX@x?KnxVknb?KVV@U?L?WlXU`@nUl?X@llVX?VU?KlkUKlI@anKVLXKVaUIVWV_VK@VnLlU??VKVL?m"], ["@@@KlKkUUVVX"]], encodeOffsets: [[[108799, 29239]], [[110532, 27822]]] } }, { type: "Feature", id: "5226", properties: {name: "黔东南苗族侗族自治州", cp: [108.4241, 26.4166], childNum: 17}, geometry: { type: "MultiPolygon", coordinates: [["@@VV@XkV@bUbWJU?Vb@Vnb@b??@J@b?L@LV@UV?lUI@a?KULVb@bkJmx??lLVxknVJk??xnKmnnL@bn`WIXlWLU@UxVbUVmKV?XI@JVIVJ@U?L@W?@@UmUXUlV?UVJXImm@K?L@UVmVXV??LXblKlV@LXV?LlVVnkbmJ@xnXl@?bXa?@Vana?ò?L?m?VnIl?T|°k@b?@@lV?nJlUn??VX_?@lVlK???V?UUxVLVWVIXJ?UlnnWlI@KUaUUVKn@VaVXV@na@?mwˉ@mUkJUamI@lk@@am@@I??UmVImUU??w??@anUVaUU@LU@Wa?WUXWW?wV@VwnU@L@ynbl@@X@a?J@nW@@Vn@?lVLlxnI?l?@@UWKU?nIlJXIVllIVV??XK@aVI?V?@@bn@VKXLVKVVVInw?J@UWI@mX@WKnI@KmU?UVJUL@V?KW@@k??@aU@@W@InJWUXwWI@W?@ˉwkaVaUIl@n?ValIXWWI@UUm@anwWkXWWIUbk@UJmIUamKVUUU?VVamaˉVkIV?VUlKnXVwX@@WVaUUVa@Il??aVm?kna?wk?UU@?U@mUV??UVw?l°LVbnJVU?ˉla@mX@@UWKXU@aV_V@@JlkU?ˉ@V?nK@km?ˉk?U@?WU?W@?mm?U@?kmlU@wkL@W?UkL@VmL?J@b@V@bknUUVK@UVKUK@Uk@Wa@LUVVnUbmVk@@UU@@a?VˉK@U@UU@WmUL@aU@WV?w@??I?xXll@UX?K@KXXVJna@wWa?£naUKV??m@UU@mUma?lm@@XkVm@?U@V?LmWU@kkWxU@@bVV@VkXVl?V?@UUk@@?mI@KUw?m@UmV?UUwU@lwkV@IUa@mUaVIVKVa@w@U@?UJkb@n@bmJ@Xml?VUxWXkJmUkUUVW??xUlU@?aULU?mbU@@?WXkm?L@xUV@nUx?m@?XLWbnl?nV?nnUV??U?nVVz?@lbUVVlULVb@V@nUJkwm@Ux@bWbUK@UULka?J?b?U?U@U@lUK@XUJmn?J@bU@UwWa?x@zkJWnUJUUV?VV@bXn@xVb@J?L?m@X?w@`@bkb@VmXUVˉL@mW@@n@V@??L@K?IW@@a?aUxˉ@U?m@XbW@@L?V@bnVWVkKUzlV@b?a@lnI@VV@@LnVVKUaV_VJVbnU@bn@??nX@yVIVxXKVLlUVaXU°J", "@@@KlKkUUVVX"], ["@@UUVUkUmV@ln@VXVK@K"]], encodeOffsets: [[[110318, 27214], [110532, 27822]], [[112219, 27394]]] } }, { type: "Feature", id: "5224", properties: {name: "毕节地区", cp: [105.1611, 27.0648], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@UkV?@k?W@Xn@@K?KVIV?VIn?°@nWVz?l@V?_VaVK@?kKWaXklaX@lW@b?z@KnL@a?aVJ@UVL@xnLVJ@LXKlb?a?¥l@nUWk?w?¥U@VaXa@amLkU?Km?ˉk?mkIUa?KUIW?kKm?@anw@mlwXI?m?Ukˉ@a@amU?`k?kKWVkxmUUak_mJmw@w?mXUWˉX??_@WnI@aVwkWWy??U@WLkU?aUbVV@lUVVnm@kUmVˉ?kK?L?wmV?UUaWV?a?aWwˉw?è@VULUVUU?K@nWJkI?l@Umxnbm@kbUJ?aˉbUbVxmLUV?aU?@VUUWxkVVV@bUV@XWbnlUb?bUJlbUVˉb@z?`WbXnmb?a?wUwVW?U?bUxmbU@Uam???@?V?k?V??a?wVaU?WI@mUKóz@lUl?@WI?b@xXxml@XklULWKU?mwUaˉKUXWJkaULmKkLWbkKUV?Im???Wa@kUaUL?WˉL?Kˉ@kb?L@b?x@J@bmnnlU?lzU`U@@U?b@?m?n|°bU?Vx@bkVm?mx?@mk?mVV@bkxVn?aVV@bU@mL@b2`lIVV@lXLl??bVxn@@bl@XllIV?nbV?n°°wlbXw@mVa°?lVnU@m??VLVbn@@b?@@WVnUV@Xlxn`VznJVb@L@bV`V@?Unw?U?@WUXKV@UUlmUUlaXalL?m?b?IVbnJVIlVVaUUnWVXn?VL?k@?nWnblnlb2x?xVKVXlVXLVW?LlUVJna@wVL??@JVX@`@nnx@nWJU@Vx@XXK??UblxU??°?LVKVVlL@KnbVUnJ?IlU??nKl£VW?x?IlJ@n?VTUVVnb?VX@V_°lnK", "@@@UmWUwkU@Um@@VkL@V@???V?VkV@nbVa@?"], encodeOffsets: [[108552, 28412], [107213, 27445]] } }, { type: "Feature", id: "5227", properties: {name: "黔南布依族苗族自治州", cp: [107.2485, 25.8398], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@?V@I?alK@UV@@KUaVIVV?LlaVbVWnX@?@LnUlxl@naVLXVVaVU?J@?lUUanWWI?@VlV@Xb?b@V?n@VmVVbk@kU@V?V@X?J@zn`ULW@kK@_WVUK@LUb@Jlxn@nnWlU@@b?x@XVVU@UbVb?@n`VI@VVLUlUIUV@KmL@VV@XIV@@lVLVmXV?@WLXLW@U`?nkb@Vl@UL@VVV?L?llX@`lIXb?J?IXW?L?aVL@?XXW????b@bmK@L@°@Vnxmx?n?K@xVn@VkL@V?L?akbl`VnnxVnUl??V@@VVXV`@??k°JV_UalK@U@aUU@m?IlVnK?V@U@wna?w@akU@?l@nwl@XLmV@xn?l@VXUb@V@JlL?U?JUI@UlWU?nLVUUaVwV@XKWkXJm_@amKnmmL?wl?UIlmUwkK??nwlI@aUaVK?L@bVJ?kVUU@@K?K@a@I??@ama@UUaV?XIVa@alU@WUUˉIWVUbkVUKWLUwUJ@zmW??m@@amVUaUIU`VbULmU@KU@@UmJ@k?b@akUVylLXUmU@a?U@KX@Wan@V?°@Vw?b@bX@?J@L?K@?@U@mX@@n°KVUnW@Ula@a@_?x@W?n?K@IUa@wWm@aUUU?VVVIXmlI@y?wXbVxV@@a?InmVI@WVL@k@V?V?V?a?IlbVK@VVLXa@aVwn@lxVI@m@UUaVKUkVUka?@UymUV???VUmmU??mmkXaWK@?ènVw@mVU@w?KlnXW@?V@naV?VKUk@KVIUW?@mk@KXU@Um@@l?V?k@UVJna@UWa?L@a@?Xa@kmmVUUk@mkk?amJ?ImJUUmI?m±aUUkambkamVUU@VlbUbVV?xX?WVUU@VUakU@UmUV?U@mnUVVnUbVJ@b?UW¥kLVamV?kUaWJU_UVWKk@@nl?UVVJUX?m@Vm@UnVlmbn?mJUbULU@@UUKWV?IWxnJVb@xUL@bUJWIkx?bkb@xVJ?bmU@k?W±LkKUkVa@aˉam¥ULkal?lKXUW?X??aVakImV?@ka@?UU?Jˉa?X?mmb?KWU@wUU?aUa?KmU@UXlWb??WLUKUb°?UlVbkbVL@V???J@nVlUbUXmJ@VX@lbUbU@@bWb@VnLVJ@bVVUz??VL@lnL@b?VVVULmKUk?Jkbm@?xVb@V?k?KVnnV@b@?WXU??nV?l??VVXVJUXlVXbWV@VU@Ubk@@KWbUUmL@JnXV°XJ@_?`UbkXVVl?kb?@VLXVV@?V@k?KXX@`V@@n"], encodeOffsets: [[108912, 26905]] } }, { type: "Feature", id: "5222", properties: {name: "铜仁地区", cp: [108.6218, 28.0096], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@°a@aèbVUlU@aVKnVV??VU?lyX1lWVa@?U?V?nUVU@m??@mU?l@?mTw?@?xnIVbna@KVI?J@k?wV¥?UX?VkVW@kkKWU@aXUWmnIVa°VXbmL@VVbnVVVUb??Vb?JVbVKXkVKVanU@aW?nWU?Wa@U??nk@mVIVK@wXxlLXbVJV?lK?bl@VI@m?aXalVV?VbX@@a?alnkx@b@V?b@Vnx@bVVUXn¤WXn@Vl@Vlzn@?`@I@KUU@?V£nam?VkXa@aVK?nnU@anVlK?a@UUU@amk@?k?Uˉ@a??VWnkWmkImU@akaVm@?VUV@UKnkWˉXWlkUKnIWa?@nmlIXmWUnwUwWm@wULmaUJkIUa?aWa?klwkwmJmU@bkJ@XUJˉ?W@XbWbUKUkWJUUVKnn@UmmXUWa@mU@@U?I@WmXVykwm@kaULWwU@ˉ?lKUUVU@mU@UkmaUbmV@b???xV?nVUJVn??@Jn@@bl@@knJVblInV°@nx@?mbU@UWUbm@ULVVVb@LkJmXkm?VWIUJUXUKVw?V?U??kLkU?@W`?Um?kVmIU?@k?@@aˉlY¥k?mJ?U?n?K??mbUb?@Wb?ak@mWU@Ub?UVVkLlbUV?kXaWK@Lkx?mk@@X@J@V?@@X@VUV@V?IWln@mbXVWXkKWbnxVUnV???Inl@XUxVl??UV@b@b@xlLkV@VmzmV@b@VUVVLXVVbVLXKmVVLU?@nnVWXXJ@V?|UK@LUmkIWbk@@lUImJn?VòVUnVVbVIV?UxV?@bnUVL@WV@@X@V?KlXXaV@@b?lVxXVVIV@@WkI?UVKUkVmlnn??bllU?VbXVWb?blVkb°?VInVVV@b?nVx@l@bnVVnU?Uam?UL@b?VV?UbUXU??n@?VVUb"], encodeOffsets: [[110667, 29785]] } }, { type: "Feature", id: "5223", properties: {name: "黔西南布依族苗族自治州", cp: [105.5347, 25.3949], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@VL@Vl@@IXW@kVUVbnW@XlKVVnU?VlL@b?aVb?b@xX?°?UxV@kbm@VxkxWJ??V|??@èn?VK?xW?XJmV@n?ò@xVbn@@blLk`VX@b??la2JVUlnn@U±lw@wnw@mlwVIX@@m@klKnk?a?KnwmmXk??Vm?U?¥l@nb°?n@?aVwVmVIV?nI@a?ˉ@m?U°?l@@VnI@JV@UV@b@IUbVJmX?o?zllUbVa@aXUl@?U@llLnKVaUa@UmK@U?wV??bnKV@VwVK@UX?V@Vbn@?w@U?WnX?@?a@m?I??@UUKlaUaVkˉ?VaVLXK??XaWkˉm?k?wmW?@mI?Vkw?JUI??VwU?UkVKk?m@UkmU@W?wm£?V??m¤ˉIkJWa?_?lUbmJ?zYJk??U?VU???@bU?Yn?mˉLUb@`mL@VkL@V?Ummk@UU±?Umka@kU?@??ymUkk@mmkYmUaUakImV@V@V?L?|?JUXmJX?Wb@n°??x??nV@LlbU?UbmLˉ@TbV¤nbVx@bUVlblI??@KVVUnVJUn@VlLUlmLUUUxmK@I?@@VW@@bU@UJmUkLVVUl@b@V"], encodeOffsets: [[107157, 25965]] } }, { type: "Feature", id: "5202", properties: {name: "六盘水市", cp: [104.7546, 26.0925], childNum: 5}, geometry: { type: "MultiPolygon", coordinates: [["@@?yVL@nXJV?Ub?x?bU?l?U?@???n?VbV@naVw?a?VUXVx?x?bnaWmXa?_@y°aVUkaVI?aVamkXa@WVU@aUUlUXwVV@UV??bVUnKUwVa°a?bVIlan@manw@V?klJXI@m?LVVVUVK@U???k@KUa@UkaVU@UVWV_XWVXVWlLXKlLXa?K?wVL@akKm@Uw?@@XUVk@V?UI@wWK@aUV?I@UkK@?mL?W?@kImJ?U?VmkXUW@UJkx@nmx@xkxV2m@kmUV±Ikb??@aUWl_kK@am@Ua@w??@mnUWIX??wULm?@???U¥??XIlwUwn@laU@VwˉóW?@w?aUa?b@akK?UmVUUkL@WmXUaUV@lWX@Jk@@UUKULmLUJmzkKmVX°V?UnWKUL???L@mU@UnVJ@b@?UV@X?`m_@l?@@bmbXJmnn?@°?wnn@?VLX@V?@nVl@nk@@b?l@nn°WlXzW`XXVKnUlxVbUb@?V?Xb@???VxèbVlnbmn@?kVUL@???mLUVVL"], ["@@@?@UmWUwkU@Um@@VkL@V@???@?V@VkV@nbVa"]], encodeOffsets: [[[107089, 27181]], [[107213, 27479]]] } }, { type: "Feature", id: "5204", properties: {name: "安顺市", cp: [105.9082, 25.9882], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@lL@bUK?x?LWbkKWLkKUXUWWXU`UX@VUVlb@VVb@L?l°xXx?b?bXUVb?VnU?x?KlL°?nUlVn@UmVU@kUUVa?blVXKV@??XtlXUxnU@mVK@_@ml@UU?@?blU@KnLVyUw?@@Umk?WVw@UVK@VXzVK@n?VVUUW@kVJn?la?@nKW?kaWL@U???b@J?U@mU@@_WW?L@l?UU@WUUK?@lak?UUlWVa?_@`WIUˉmW@InKVVXa@Ll@VaV@@UXUWakUVWUIUW?Uk?U??mV?XW@?@amUUm?L?l@UUa?wn@la?IVlnLVKUU?U@amK@kUK??VyUU@aUImK@UXa@aV@VakaW@@UnIVWVaUk?b?@mW?X@V?xm@UaU@W?@VULUxU@mL?aU??x@VnL@VVbUbmLkK@k?Vk@WV@bUbVakk?y?1nWUIVa@J@aVUU@@ImJ@Uk@ˉ??V@n?°@bmJU?UJUnUx?bm@ˉ?mak@?|?VUn??Wlnnmx?L?bmlkL@l@nWVnl?U?VnIlJ?@?XnK@?lL@V?JVU@bXL@xVJU?l@VU@W?@Vxn@"], encodeOffsets: [[108237, 26792]] } }, { type: "Feature", id: "5201", properties: {name: "贵阳市", cp: [106.6992, 26.7682], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@n?lLX?VJ?LVblJ?n°ln??LlVnKlU@?nUUa@WlX@l?n@?Vb?@la@a????lJ°|?K?wn@°x?LVkUmmwUmk_la?b?K@UlK@UUm@w?L?mnwmw@U@ˉ@KnL@a?a??X?WW@?UK?b?KWX?J?IWakJ@_kW?k?KUU@UVKk@@Ula?mV_X@WKXK?@WUUnUK@kU@WJU@@UnK@LVUVJVkUK@UUJm_?@UaVaV@UU@W?w@aV@Xkmmm@kw@IVa@KVLXU@`lLX@VKm_@y?I@W?U@UlVl@UanU@U?m@U?aWaU@Uk?@XJmXVbkV@??IUVUbWUUKmbk@kwmV@K@?mWUXUakb?KUUUJVb@LU@@VkL??@VXKlbX?mL?@kbm?UI@lVXUV?U@mULWy@UUL@VUx?Xnl@V?@VxUzmK@LkV?a?@VVk@@n@`UL@nmV@bmJ@X?`W?X°WV?n@xnxnIl`VbnVlwXUlLl??_nV@b@bl°?V?nWJkx@nmx@b"], encodeOffsets: [[108945, 27760]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/hai_nan_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "469003", properties: {name: "儋州市", cp: [109.3291, 19.5653], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@à??jpnr?``?pRVHê?ì¤?Zt^J?A?[?CalTébQhRPOhMBcRSQiROE[FYdGNOEIH]MgEAMLLIAG_WMCSL@ED]PCLYC[ZIHgjSxJTMbHNEFCMEE_HSDFHSLECRNSFDRICHNADGPI\\RZGIJTIAHLDQOHG`GTNCOIC@eIGDWHIS[kiE[FMbEC?ZS@KKS[FDWsCeRuU_DUQNOE[LKGUBM¨EDQP@HWHGDIm?X?Cog?_~?I_fGDG|QDUWKBC\\ore|}[KLsISBHVXHCN`lNdQLOnFJSXcUEJMCKSHOUMDIm_?DI`kNDIGEYFM\\YPEEIPMSGLIKOVAU_EBGQ@CIk`WGGDUM_XcIOLCJphHT_NCISG_R@V]\\OjSGAQSAKF]@q^mGFKSW^cQUC[]T}SGD@^_?aRUTO@OHAT??"], encodeOffsets: [[111506, 20018]] } }, { type: "Feature", id: "469005", properties: {name: "文昌市", cp: [110.8905, 19.7823], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?h?¤īˉLQDaF?L[VQìw?G?F~Z^Ab[?1ZY?pFo lN?D′INQQk]U?[GSU?S_-c?}aoSiA£c????EiQeU?-qWoESKSSOmw???Wk?àmJMAAMMCWHGoM]gA[FGZLZCTURFNBncVOXCdGB@TSbk\\gDOKMNKWQHIvXDJ\\VDTXPERHJMFNj@OwX@LOTGzL^GHN^@RPHPE^KTDhhtBjZL[Pg@MNGLEdHV[HbRb@JHEV_NKLBRTPZhERHJcH^HDRlZJOPGdDJPOpXTETaV[GOZXTARQTRLBLWDa^QAF`ENUPBP?\\Eji`yoEv?à"], encodeOffsets: [[113115, 20665]] } }, { type: "Feature", id: "469033", properties: {name: "乐东黎族自治县", cp: [109.0283, 18.6301], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@aVLP`@PEdNRAHOPEAKHEVL`GZBJfvdTAXNNTZJFPrHHNpKTD\\ILHbEVd^J?OHLh@NNBnHP`\\xH@NBRLJTl?Nv_^CTLd@bNDVFbxdFV?UPBTKOGEOUO@OEBXQP[H_EI\\EbeYa@UO_J?MEJ_IEDKJUGMDcNUd_FMTEJSGoZ]EIYGO[YW?gEQ]a@WHEDQKUSDUGAbYBUpSCYNiWqOSQEoF[UcQISWWN?MSDe_cLQ_UBiKQOOASQAWgS-ā]Za?SPYZ]XMXS?[^oV?NgNKlE R?E?"], encodeOffsets: [[111263, 19164]] } }, { type: "Feature", id: "4602", properties: {name: "三亚市", cp: [109.3716, 18.3698], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@??hTBXTRPBRPjLVAR`dKf`TC?NXMTXRJVdE\\FpTRrPjXZMTDVoZABaVHTCLVCRGF@X^bFR?hZXP\\ZHHMA[^wBWXJlW¤EJ[bCTOF?WWMm@ILMGWQ@DQ^QNWFSHEbF`OXNbO?VNKTEPDTLTCCVTREfvfEHNbRAENH^RJXCFHNFRpVGHWISDOTMVCZeGamaLoL?D11?gsia{O?E?Tt?lé?wr}j?R±E{L}j]H?K?T[P"], encodeOffsets: [[111547, 18737]] } }, { type: "Feature", id: "469036", properties: {name: "琼中黎族苗族自治县", cp: [109.8413, 19.0736], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@bRFnHNbH?gN@NPEnbXP@bND`NT\\@\\QZb@`@J]V@Xh?DpW?n?CJGHGXO@CR§FANHVKLF\\MPVR`CvVfQtDPKpGHG@S`WJP~^dSTHWX\\RHTFACQTIAUPOU@MG__IaYSFQK?NSbORHXCZeTFJg?B`YBMNMFi~IVDV[tGJWXGDQRGF]?JrALgESLSAYDGIaFeXQLS\\MKSLSQYJY}eKO[EHiGSaK[Yw[bmdURgEK^_kcSGEOHKIAS]aFSU@Y]IWFUTYlkP_CUOUEkmYbSQK@EMWUuAU\\M@EpK^_ZMDQ^OXwC_ZODBrERURGVVZ\\DTXcFWNIAWJWAYUUFYEWLQQaCIZeDM`cLKRGpanJZQd"], encodeOffsets: [[112153, 19488]] } }, { type: "Feature", id: "469007", properties: {name: "东方市", cp: [108.8498, 19.0414], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@o?x?JYZQ?I?YXLl@dR\\WZEn]bA\\S~F`KXaDeTiNO^EEKWEDQXITBXaWaDQMUJOIaTWf@NJV@dSxGZ?Fu_?@WMKAU?}AQ@MwG_[GOAmMMg@GK?P]IUcaFKG[JSCoLGMqGEOYIMSWMSBucIeYA_HUKGFBLOFGPQBcMOF_@KO?UAtERadwZQ\\@êJògòUīRlR°K?V?LJ"], encodeOffsets: [[111208, 19833]] } }, { type: "Feature", id: "4601", properties: {name: "海口市", cp: [110.3893, 19.8516], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@ńZ?t????Fuz1j_Fi?[AOVOFME_RBb]XCAKQKRSBQWSPY\\HbUFSWSPoIOcCOHIPkYCQ]GdGGIFQYgSOAQLK`MFUIGa@aQ\\GGUFcHKNMh@\\OYKAigsCgLSF]GOQO]@GM]HyKSHKPW@Pxi@EMINYREXWRQ@MQcFGWIAwXGRH\\yDI`KJIdOCGRNPNtd\\UTMbQYi@]JeYOWaL[EcICMUJqWGDNZEXGJWFEXNbZRELFV]XQbAZFrYVUBCLNFCHmJaMIDDHXHEhQNXZ_TARFHVB@DTQIRR@YHAJVnAbKFUEMLd\\c^íT"], encodeOffsets: [[112711, 20572]] } }, { type: "Feature", id: "469006", properties: {name: "万宁市", cp: [110.3137, 18.8388], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@^J@ZTVbET^JBGLFPTHld]`FLQhcVanx\\\\ZbLHTGj\\FLP~fIZRZPVTQFSVAFJE^NDLEE[~LjsxVTG\\NZZNGlLRRGLJTV@hPZANN^@T\\NEPPbDZXO`d^HSvcJDIV\\XZAJUFCLNP@PQ¤@[?K?L?I?]?E±I{u?-Y?U?FcYUmsVeBSVgB[RO@aYYPO^]@UVaNeDShMLG\\EfFVE\\F`"], encodeOffsets: [[112657, 19182]] } }, { type: "Feature", id: "469027", properties: {name: "澄迈县", cp: [109.9937, 19.7314], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@T\\GJCXJH@fJDDPNCNJENN^NLHBNSx@DDYbBLLDRbjZTj@`XXTlG^Xr@PJLW\\WLTlWR@HDJTD@X_PO@STMDNTMVV@NLDM`M\\XM\\JNBH[PYZ?úYz?`?\\?Yd]c[NKVFLEBaUmBIZGQ@JQSR@CUAEGBQ`SWYRMFgWGCGJCbNnIDGMEDKVAZUEqBYRa^WEUFKYQMaFWXEHIFWMYHCrXVIIiaK@aMCUYNSIISTwXALKH@XWXIEIJQCG[IEQDE_XSBaa[AIPW@]RS[FWS[CD]PEBYNGFSaSyJG]@ugEUDQlGHiBKHUIoNSKqHFaPMICK]UUHIPDJMuCA[SCPIDIOILGAEmU[POPBVSJDREBGS[QXWSGcT}]IO_X@TGHoHOLCX\\ELT@LYTD?aFENF\\lj"], encodeOffsets: [[112385, 19987]] } }, { type: "Feature", id: "469030", properties: {name: "白沙黎族自治县", cp: [109.3703, 19.211], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@D\\RV]dTXELnHr]^@LETBBRTHPi^[@U`QTHDJ`MGSogDIPKdJ`WVNHCXHl_DJR@AH`FBVPUJLHKNTJOFFZON[ZEHFCJlMJ_?Cn`CJVNGPLTNDFIdVTWEIPmRKMc_kDMWGGUTAtJLK~\\f{pqD[LAVXRCH{HC`e?J`}@W^U@I@_Ya[R[@MSC_aMO@aWFmMOM@?haGGMEmaQ[@MESHaIQJQ??MckBIw[AOSKKAMPSDSLOAV_@@`KJRbKRDfMdHZERgAWVsDMTUHqOUr@VQXTT@T?fg?L^NH\\?@heTCZaESNObHP?HeZF\\X^ElM^F^"], encodeOffsets: [[111665, 19890]] } }, { type: "Feature", id: "469002", properties: {name: "琼海市", cp: [110.4208, 19.224], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@TP\\pATHTGlZDJGAQjE\\Rb@jVBDCN`JZ[NCNHNXbULPrP\\KNbMTLjJJRFP`?pNLZz^FLRHjVPZ@hxVKbHBHMNNJFRlLzGPnNHhIrHHADcPWdUAmEMVQDSKYHY\\EhBN^HpXGNDBNNBnI????_g{3So]?£@ORO@KMEDIVYB[WJUICudGTc]P_YWaCOOMFS[]@MMYBgOU@ISHKQQkKMHYY[MSHwUit}KF\\KFMCF]EIUBETSROUKTLT[NKTWREfJbCHBZKTFTKh"], encodeOffsets: [[112763, 19595]] } }, { type: "Feature", id: "469031", properties: {name: "昌江黎族自治县", cp: [109.0407, 19.2137], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@`Z?d?`òü?? ?BSPGP@VSbQ`?@]HC~T^SE]N]FkW]E[fY?GGOPaTMbFDYfS@g[?MGK]h??e@SSSRW@UVqrPVGNStCXUhBFQGYNcCeLQQaLI@_`@EUwcEaCUaMc@SK]Du`?MSkKI?~BVNL@X`?EvY?wHcTU@MIe@SXJbIPNVCRXbWbSAWJCRXFFL]FMPSjCfWb_L}E[TaBm^YF[XcQk@WK?Z?JYRIZw?1 "], encodeOffsets: [[111208, 19833]] } }, { type: "Feature", id: "469028", properties: {name: "临高县", cp: [109.6957, 19.8063], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@jD`hNd\\^dZ?dēH′Op@?ùZY\\OAGIMN[[W_NCNMKU@NUMSNCTSP@`O@WSCCI@GXQSkXKX[IK@OWqH]SkWW@_SiiYQaKCAKZaCCw@MTGAMKM]FMMIMDSM_HGHRPKCBGSJJIYH[QOJCHMBDGQJECMTDQKFGTCEGTF`NFEDMFaGSNwIiTGhYJD\\KZODC^@FTKND`XBHKJNKFBNhG^FJMPcHEZF\\QPRjQTAdgNOPgQaRSê"], encodeOffsets: [[112122, 20431]] } }, { type: "Feature", id: "469034", properties: {name: "陵水黎族自治县", cp: [109.9924, 18.5415], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@R]NC`YL]FoN@V[vBXVFNL@TRZalnVFVP`DlOZkVSXEE_F[EUFeH[NKTgfCbMVU^@P]ZObZP@\\QhATUfAtUas??iāEoI]eY?@aKmae?WuCoKüKpnbHbYfUDSNCPJTRAHJTDJSfDNLHXC``VBNGTYCQDIXMDSP@xLNEFRNXBIpVNLXah@RgF@`qOML@LJNSPLbaHAh@Jdj"], encodeOffsets: [[112409, 19261]] } }, { type: "Feature", id: "469026", properties: {name: "屯昌县", cp: [110.0377, 19.362], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@\\OnVBFKHPJCJOJTDB\\vDINOCGJVVL^JDONEbrGTLpMVJLGjAHGRkVChF@vH^zIbTETMHAZOFC^\\DXT\\EffAP\\PdAV@UIYfS|S@YPICMeM@sC[_A]VQEwyHSMuNcAUlQJMVGMS@mVBZPFO\\CS?FQK[LqDMACiUa@[QiFBRIHYCHkGSBS[oSOqB?IE^QHCRWHIXsHU\\UC}JEjMNAN_Z?AIhSEYfWDQGaPMTL?ERZTJb``NHV@"], encodeOffsets: [[112513, 19852]] } }, { type: "Feature", id: "469025", properties: {name: "定安县", cp: [110.3384, 19.4698], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@JjDNdJ\\FbKPXfZ^Ij@RZNaVSc[MsMOHQPDJcLIJ_zCG[HQxWJBHXdENRR@XQFWZQQGOFSWUCI[WCJuRGLXNMPLhCl[Ta@SqGgJMGOmyHkKEQMINMAGaGULgwY@UOGiKQ]EYyMK?oO_QEIIKiNSMa[LqOKOaVMWMGMDY\\_IKrL\\ERT?[DEPYOUA@nNTUHINkRBVMdNvGTxzRF^U`BD\\@tfNDNOJ@Z{TeTJZ@VU?cB[OBOeeQT@^OXBJb\\AbWTF`RCJFH\\RDJIJFXW@WLGBKxWTSJJMTVZND@bbL"], encodeOffsets: [[112903, 20139]] } }, { type: "Feature", id: "469035", properties: {name: "保亭黎族苗族自治县", cp: [109.6284, 18.6108], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@FJp@fxpQ\\ApN\\GNPNBM`HLMrXLXj\\PEHnI@WUCEM\\GTc\\GZYHTPBHRCPTd?H\\K\\@HXi?BJILJJAVNTOZJNtFPC`YxDPWci@IBgbGKaTOIM@KNKrP@_hE@QbgKWUMJoWAQMFEKM@wTONCJWRCZDHSAM_UD_GWMKeCITSCGIQBGXUHQoMEEGWDQIG]FMQBMaFGueFeSQDUSDSKOCSFML?UaPWM_PaEGFETMX]RCRR@HXKN@JNnXXE?SPaDI\\£FkXWIAX]xB\\GN"], encodeOffsets: [[112031, 19071]] } }, { type: "Feature", id: "469001", properties: {name: "五指山市", cp: [109.5282, 18.8299], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@TCNOLBTLBPx\\AJdl?NR?RIbJTGNF\\@RcIYbmHoLQdKN_fCJYbDRRXKZFVEZVXBXIJBXMdESW[CUYHUVQFQAqsEIMPYMSBUIIJKAIj?GW[@[LGScDOGQOAGSYZ[HSd[HFNVD@XmJFG[OWiWKNqGKN_MAMO[HoM[BoRewo@Y^HpITSFENc`MVCdHNIVCLJFI`NFI?P`@VZbaf[FFJG`O\\WRFA@PVPFPPH"], encodeOffsets: [[111973, 19401]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/hei_long_jiang_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "2311", properties: {name: "黑河市", cp: [127.1448, 49.2957], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@V?èT@?kx?nX?°Vèa°V@k?w?b???JV?kXlVUx??@?lL@xkVV°??Vb?xlVUnVxk@???Kk?Vb?Il???@°kVl?@??l?nkll@@V??VX???@V?2bUl?VlV?U?V?n@nkJ??lkVb?@?x2V@n°VUnlKU?n`@n°bWLnVUblVUVVbknV`°kk?l@@V°@nz?J@X?xlWXb°n@b??lbXb?bVb?J@V?b?a@??@lbUb?Vmn?@l?VmnIW??@WbT@?n@x°@???a?é?n???l?ˉ??èwm?@???U??mm£Xy°UV???@wè£?ˉk?Y?U???U????kV???????TU°n?¥?U?x°m°|?V???x°??£@y?U?nT??@è?°K?|?W?kWU?b??@?è?W?è£?U@?n£?UUKVamanw??m?YJˉk@J?IkaVaUU?bka??kWm?YU???Y@??wnU±?@?kkV?ˉKUk?J??U|???@ów?a??V¥Uaó@?wm??_kV?w????mmn_V??a@U??Vw?ó??U|?L?éóX?mōLǔ??xYk????k?makbU?°@W???@b??è?@??L?l@?°Jˉ?m?klˉLY?±L?amJ@????V?Uó??UX??bˉńVbk?YI@llx?k°V2?V@UxT??L@b??@b?`???zk?ókY¤@???ˉ?W??L???Lmm?n?VkbUa?L@?ˉ??bU°?LY?Y@"], encodeOffsets: [[127744, 50102]] } }, { type: "Feature", id: "2327", properties: {name: "大兴安岭地区", cp: [124.1016, 52.2345], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@?k???m?ê?b??ˉ@@w?mY@XV@Il?l@?bUxl?ˉVlV?bV@ULVlUV?_kx?VVV?èYJ@?ˉ?U??lm?ˉx@xóò??m?ˉW?x?@Uzˉ?Wwn?Uw??@kn??W?£óV?UUw?yó|WI?Vmm?I@±kw?@@b?@??ó@ˉwó@ˉaó??K???aUwmWUw?I@a?Kó@Ua?L?a?V?wō?UUYl±I?¤Vx?x@zkJmnn?mbnz?xl??lˉ?kJl??°@?kb??mx@x?@kêmVn?Wx?X?xU°?bWLóJ?n?W??V|???UUb?b???K??k?ˉ?VU±aXm??Uw?K??k???Vxk??Kkb?I???XWlˉb???XˉK?b????TV??n??2lxU?°n°òèb?|?xVb???@ˉ?Vx@?ˉV?T?l??°K???I°¤?I??ò??n?K?|?W?è?wl?nKVXmbX`lb?w?kVW?XX??L°a???a?£n?°@°¥?zT¥???alw?k?J?a@??K?£?bU°?x?VèU?¥??VI@?XU°x°Ln¥?w°UmwXmY?V¥??°@nU@m?£?ˉlK??üw@a?U?¥UaYIkmV?2??nn@??@Uk¥VKT@T?@??kVm?a@_?Jó?m?ǖˉ?w?ó?a@al?Uw?w???k@w?WXUW?X?Wa?m@_???éXa?wVa@?YKkUWkX??k?KXx?n@l?V@?ˉ?mˉn??w?¥"], encodeOffsets: [[130084, 52206]] } }, { type: "Feature", id: "2301", properties: {name: "哈尔滨市", cp: [127.9688, 45.368], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@°`?_?JlU??@??@V|°JU???nL??ln?@@?èaUòVbkbl¤?zk°?V??°IlVUV?U?x?U??@b?ā?o@|?b@l2??UVl?@°ò?x?nXx?V??T@üx2KT?l?V?°U??lw?@2???°?lanV@??V?Ull@bènüm?w?@la@YTb°UXb?l??2??k?V?I@?nJn???°kn?üb?wna@a?kTK?ā?a?????IVbU¥?w?wk??xnL??V?kaU?±IUm?n?W??°W???al?T??ˉ@?W1X?Ya?bˉa±Xˉo?L?aV?m?kLó??bka?VUKVkkKV_@aYykk±L@??U@yV_?aU¥ów?x?@UkV?n@l?k?lw?WVwUk?mkklW@??a?bVwnWW??wWL??@U???U???L??m???@w?J???L?¥@?Y_@aˉy?UWwˉ?ˉU?xˉaYXVm?aU£ó±?ˉnw?aˉó?V?Xman??U??lUXkWa@mkI?????a?m?Ikl?U??k????zkK???lU?ō?l???@?nX°@llUx?2mK?VWwk@UbUK@bmVmI???Vmw?aWxXlW???mo?T?bUxV@?ńW??LkWUb?aWzkb?`U?±LklōwUVY£?UW`Uwk@mkˉVka?VX@Wb?L?K@X?oWz?x?K@lmX@bkVV?k?Vbk@Vn"], encodeOffsets: [[128712, 46604]] } }, { type: "Feature", id: "2302", properties: {name: "齐齐哈尔市", cp: [124.541, 47.5818], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@T@T??KVˉ?a°?@??KVbla?U?mnn?K?è?KX?°???@?T£?ll?èy???_@a??@a?KY?VwU@±?ˉU?lkw@kTJl?Ua°??aW??V???V?U??@?nI?b2KT?°Klkn?°?ˉI@??k?K@?????@a??X?ˉ@V?la??VamI@a?Y?y???J????km???@kx?@@l?aVkˉ??ī?a?k?¥?ˉ?JUaW?U@@w?a???KUk?kUm?Umw?±±UUbU?UX?wW??w?Yk?lkUanaWwnKl?kalˉka???a?k?x?aˉ@?ambˉV?l?w?ā?V@x??mêV??VV??a?V?wèx@??x?|VTˉV?lmX@??L@ˉUaˉLmV@??°X??K?V???@U?è@?¥@w???IU??km¥?w?|ˉlmn@°kxVV@|óam?n|l@nx?l?Vó?mx?n?ò?ā???t??ǔêT°??Tò°ā?ā??????°w@£nymwnkUUV¥??Vmk??mUUVa?mVIkm??lxkXTt?bl??l@?kV???V?xV@??Vò@???U??nnT?J"], encodeOffsets: [[127744, 50102]] } }, { type: "Feature", id: "2310", properties: {name: "牡丹江市", cp: [129.7815, 44.7089], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@U`lLUlVL?Ulb?a??lKn?U??b?K°12W°b?aTb?knyU?lUkam?2L@m°@l??m?2n`??lK?x??üKnxV@??l@????XyW_k@?wm???m?X???????l?°???è????????_WW@U?al??wU@@w?UV??@V?XI@w????T??aU_@mUkly@?ˉóV?XmWUXUWmn?m¥nUUaWLk???2I?a?w?aY°ˉnUa±a???@?|????@??@?b?xUü?n??lbˉ|??ó?m??@±?U?k@Ww?aˉxU?V°?xXb????UV???K@1?KUa?@ōY?X?a?l??l?kal?U??????akbY?ˉnl?ˉ?@??VUx@xˉ?W???ˉ?m???ˉ??Vk???mx?°?2V¤?bUnTW°b?w°V°?Xx?V°z@bT`@??|?K???I@x??n??èèK???V??@V??XK?xX?mXUx?a?b@?kXll?nVlUx?Xkxl?k?m@U?Vl?@èw?xV|?bU`@z?V@?2KllTz@b"], encodeOffsets: [[132672, 46936]] } }, { type: "Feature", id: "2312", properties: {name: "绥化市", cp: [126.7163, 46.8018], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@?t?T@bnJUb?ānbl?????Tl?wǔè?Kèn?W?ê?KV¥????Ux??@V?bU?m`nn?????xlU?mkaV??L?w?@°?U?mb?KmY?U?wUmVknKUUlˉ?KU??Uè???nK@??kX±lX?°?L@?ˉ¥@wV_m??ˉWw?Lˉ?Ukō??V?U?l?w?Vó?±?ˉa?Vka°wVk°mTˉ????l?2??k?U@?mUkbˉ???±?ó@kx?óˉVUòk?Y?±L?wY@ó??UWw?m?wˉ??@Uk?V±?@k?a@¥?1??@a???V?wóVVUkUˉJüóèUlˉ?yk£laUaV??b@??@kmó?mK??V?ˉIU¥?@@???kV?I?`@????blU?l???bèb@x?Kk??a??ō@???V?K@z?@@¥?Kn?ü@@a??Uw?w?nU??@?_?V°?@?klV??nULVVTbVl@°?@nx?n°L???lV?è?mU2@Vm?L?x?nˉxkW?z?J?wnLmbXbW°?????2?@???x@??JVx?L?ā2?°Iˉo?è@ònè"], encodeOffsets: [[128352, 48421]] } }, { type: "Feature", id: "2307", properties: {name: "伊春市", cp: [129.1992, 47.9608], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@?K?ˉkWW2?l@?mL?????VV??Lk°VVmLUlVn?x?VnT?LnaV?ˉ??@?x?KUālb?n?`n??x?@VbU|???b?x?@??V¥???IVl°LU?ll@?2?mV?x@??Tü?TVn?lX?òlbèaVVUblb?J@I°lTIn???mxnbUbVL?Vm¤@??V?¤Xè??@?è??aXVüaXbW?nz?a???K?b?Ulw@ˉna?KnUUˉüa@mkkVU?m???Y??ǖ??K??°L2l?I@?ˉ¥??VaTk@YVa?lnUVw???óma?@?w?@?a?V?x?amX@a?@Ua?L?aVW?_nWm£nWm_?Vˉ?m@m?ó¤??Y|?ˉ?almX£????VWU??w?m?@@IV??WUw@a?I@??k@w??W?????Va?K?Ika@¥lUkUlw?wVyèwWU@aˉU°m???@U??aVaˉmV??wYUl?Uk?V@k?mUk??X£?w°@@??aYI???am??am?ˉl??m?mI@??J?U?l±?ō??kWaˉVYa@Tkb?@?x?n?m@akkōVōl±?k?????Y°ˉnUlˉxlb?U°b2????U?x?k?VèU??Vl°??KXx?°n?U`@x°|@?"], encodeOffsets: [[131637, 48556]] } }, { type: "Feature", id: "2308", properties: {name: "佳木斯市", cp: [133.0005, 47.5763], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@n??b??TJ?b@èˉ@?xW¤??Vl?n@l?UVlk?TV?xU?°nUb?bVèè@??nIn??@???ml?Uw°????VUn@lnL@V?b?w??l??J???l?w?w?xV?VU?????x?L??è?°`nn?w?JT??w?J??@¤Xnü??l?n°?è°l???U??b?x?@?l@TTèm°?l?w?L°???°T2n?@?wT`?I?V?ò?U??@?VJ?b??2@°??K???J?a???@?¥°n?¤?b?U?@Vx?mUw@aY???????@??īUˉ2?@??mV??ˉX¥??@???U¥Y??KWV?kUVY?Um??Yxˉa?x?UóLˉa±óōbˉ?????V??_???a@U?K@wm@Van@UmmLVa?@VImmXUW?YU???KUwYUU?kV?k@lˉX???_?Jˉk?Jm??L?a@¥U@ˉV?zˉ@?`@???mx???K?k@±la?@@Xm@??@x?@W?n????@@a?@@nYb??ˉ@?_U?kUW?kb?wYU@??Wlw@anI?ˉly?X°m°V?a???m@??mVwTK°??XlaXmm_?@U?kwYK@?VI??XmV??I@a?ˉ?W?b?aU_ˉJUˉ??????k?ō`±nY?k??bó?ˉX???X?mVn2JV?lbUè??mK?wló?x?xV|Ua?J?????b??YL?l@bmb?x"], encodeOffsets: [[132615, 47740]] } }, { type: "Feature", id: "2303", properties: {name: "鸡西市", cp: [132.7917, 45.7361], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?L?KVVnk?bV?èb??2U°VnklVlaèL@anU°ümXV`?n?L?è?xl??LX??L2a?VVmèX@??lnU?èl`è1?@??°U@x?KnnV?mlnnUl?lVnna?wlVTò?@n|?LV?°l?wVk?L?aT?l?nò??@xmLT¤Wn???WèLVVUxlè???WVaU_VK?KXU?bn??n?K?bTw°b?WXam?Vw?K??UwˉWUk?UlJUwV?Ua?@@kmy?zm??w@kVw??k???Wˉ?KU_Vm???x?U@aW@@?kK@w?a@K?@@kVU?aky°_Vm?knaˉK@??L?w??k@@I?óX??wVakmV@mwXUWan?l??@??Uw?K??ó?????m°?@?w??@?±bˉW?1?WVw??ˉkVmōbˉw@a?wmV?UUb?V?IkaVw???xk??b@VXXó`ó???????ó?ˉ?k?ü?????W?n???n??xl@X`Wz??"], encodeOffsets: [[133921, 46716]] } }, { type: "Feature", id: "2305", properties: {name: "双鸭山市", cp: [133.5938, 46.7523], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?U??Uwó?m?T?UYYUkmm??yV?ˉī?¥??U??ˉm?kaWb?XˉaYx?aóL?mm??aWV?LULV`Ub?Xó?k?VwUU?K?X??XmY£nK@w??m?k?Y??b?KUl?xˉkU??Km¥?@Y?kUōxmbUm?kVkmmnkU?mm?L@wˉV???@?ok_??mV?k@?Vx?Vè°lLkll?Ubōw?n?VW?nlUxˉXmWUnY@?xYUó?ˉJ@LVbkJWnkb?Wˉ?YLUx?n@??n?ü?bˉUˉn?Wkz?°mJ@bkx?X@èTV?xlaX?lVV??`°@è?Ta@m?@@b?@??m?Xō?@@w??n@@Wü@kb@2ül?L??nw??@??_°@?y°UV@@|?b?Kn??I°l?I?`??°W@k?llUV?TVVx?L??TVX?WVnnUJ?@UbnKVnm@Ubn@@x?L@V?b???`Uā???ò°??a2?°b?KüV?w°bTwè?VnTōVU?lXU"], encodeOffsets: [[137577, 48578]] } }, { type: "Feature", id: "2306", properties: {name: "大庆市", cp: [124.7717, 46.4282], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@m?@???°1ˉJ±????KUw?I@??w???@?±????XˉWanamK?x?I?ylX°w?m?w?KUn±@nV??U??k??ˉK?mmw?@@ˉUkYaUUVK?mU?lk@?ˉ??U?`?@V??m?xVxü?@b?@m??L@|?@@y?L?U???@???bl?èL@w?a?a???kkV?a??@óˉ_YJ?w?a?Xny?Uˉ¥??@w?bYa?Lmm?@@??VU?lb?Vm??ˉX?m_?`ˉ_Ux?m?L?aˉb@m?aó|?k?¤V?@bóJknVx?VXx±a?LUbVxkLVl?LWl?@nX@V?bWlèn?x?bW??bm?@x?bml°b??XbW?XVmnn`?Lm?nbmb@?k@mwU@@?ˉJlbk°lbk?mLXxmbVbkll??T?xX??xVWV?Va2Vü2nx?VVn?lVl?L???b@xV@X?Vb?I?°?|?l?b??°?Ul?b@k?@lw?@?üln???ó?I??"], encodeOffsets: [[128352, 48421]] } }, { type: "Feature", id: "2304", properties: {name: "鹤岗市", cp: [130.4407, 47.7081], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@T¥???£n?n@°??Un`mXn¤mX?`UX?b?KVb?@@bnW?b?w?U?b?@?x?@nb?WV?m??_mm@?ó?Um???WXk??2ˉ?ˉn??w?@???K°b?Un??K?|??èb?knJ???U?V°I???V???w?aV???k??ˉˉ??m?k??Wm@£??óI?xY?ōI?xmmˉ_?????K?w????UVU??wóx?x?k???Ik????xóa@UmK@kVm?U??ˉ?Vxk??n???@m?mJˉn°V@bXV?xUz?xkxlVkV@|lb?J?LUb????X?ō?@x?l@??J@bVx?XU?@Jè@?n?xV?UX????W¤kn?b?°"], encodeOffsets: [[132998, 49478]] } }, { type: "Feature", id: "2309", properties: {name: "七台河市", cp: [131.2756, 45.9558], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@2m?_l???????V°°IV`?b?a?X?°@b?JU?Wn??UJ@?TLlxV??@n`lIUa@K°I??TV?wT@VmnX°WVwmkX??U?m?xVak?lkkK?ˉ?UUw?WUn?U±b?KW??Kk??w??óK?mU_nWˉ?mV@b?KkbkUmlˉU±V???aU??amlUU?L?K??k@??U@mw?L???wkLó?m_?±?nk?ˉ@@n±Kn?lbkVV?mz?lW?Xo@??°"], encodeOffsets: [[133369, 47228]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/he_bei_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "1308", properties: {name: "承德市", cp: [117.5757, 41.4075], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@lLnlmxn??IVVlUnb@VVxXJWL@LT?VnnV?J?_@wkm?K?b?x?wXk?WXX?Klb2K@nVVVb?L@WlU2?lKVnUJVz@VVb@l??mVUVnb?aVX@°Ub@lWbX?@b@bVb°x?@VxèLVl?a?@Tb2k°@lVU?@Xn@VW?LXb@¤VX?KVVVLnm°_?¤@aUIVa?alkX?°k??V@?alwU?Vy?U@kó?°?na°UVUUmU??w@mkLVU?WVI?W?Lnn@xlVnK??myU@?U°UXaV@U¥?U@U??@aVUkWUˉ?aU@WLUV@bkbmKULmKkUVUkmVIUwlWV?2?Uml?°U@W?LUwVm@UUK@_?KUUüaXw@?VKUU@mVIUUlmnIVVVbèVlKnbVK?@nI?@nVnwVLVK?K???Vnb@aUIVW@In?°@lVnI?@lW?@°UVL@b?@VyUU?a@w?@WUnU@W?ˉ?K@?UkkJWa?bmk@mVaTU@amk?W?@mXUKk??£@a?kl@Um°UXwla?al@nmlXnW°znW@a?wV??@?akb?¥VmU@?I?V?U?J?kUmWU?K?bmkUa?KkUVU@KV@@klw??WaU@km?XVènbmlUU?K?XˉJkb?I@JmIUWU@?Lml@XkJ@U?k?K@aVK?wWa?IWw?m?U?@mU@J?@Ua?U?aUU?VkI±?k@UU?@UbVVm@UV?K?L?lkIWaULUW?XUJU??@WbUb@lkXUxm@@JVn@J@b?n?b@Vkx@b?LU??n?J?aVXnKVVmzX?°V@_lJXxWX?Kˉb?amU?@?lUI?b?J@L?KkI?`kxWL@??@@bUVUbˉxWKk???VlULW@??n|Ul@I?lmUUUVm@?kW?nkKmaˉXUKWmnwVwYL??m??VUbUVWb@Lnxm??xV?mbXx?|@?nb@`???V?@kb?LU?mVUlkbVXkomnm@@xk|?b?ül?"], encodeOffsets: [[118868, 42784]] } }, { type: "Feature", id: "1307", properties: {name: "张家口市", cp: [115.1477, 40.8527], childNum: 15}, geometry: { type: "Polygon", coordinates: ["@@k????al¥@wn@nml1UWlaVknUV??Kla?@?U??@_ma@??¥WwnaU??wn?mw@KXaVUVa?Un?mWUk°?l?nUVUXWVw?IWVóKUI@W?X?xUU@mma@kUKWLkw@yk@?aVkUU?aUU@Wk@Unm@UVmL?m±IU?kJ?kW?@a?I@m@U??V??Ula?@VXV?XmVwnkWK?KU_k@m¥?mX_?JmnU@km@U@KmU?V?U@U?@Umk@@L?mW@?£W?ka@wk?@a?I@mmk@mUa@UmU???I?w?W@aWU?bU@kb?@kw?@makVUk?U@a?m@aU@mxkU?b?KUXU?±KXVWLUK@wkU@V?@WXUa?@WbUx?J?I??@|VèVVX@±êˉKUI?`ˉUULVx@V?@UK?I?VkLmVkKm?@nUJYbkIUJVX?VVxVbU?VJ?Un?°bV?mlU°?XnK@Ul@lVèVUX?x@W?@VX?V?KTb?n@VnbV?m`?U?x?kW@UVkL?Km?@lUnUJVnV?XV@Vm@@LV?kl?Ikl@V??Wl??ULWKUL@?mJ??@blbUVUlmzUJUxm@U?Ub?ük@Ub@V?LVV?|?bV?m?UKUkU@m???@VlVn?WbUJˉ@@?°?nIllèl?@nX?WlL?k?J@bkxlxkxlXUlk?lJ??XL@bW?n`@n??XxlL@xl@Xb?L?KlVlIXblVUbUJW?@lX@VL@VV??X?J?w?n@WnL°K?bVbl@VI@K??@U@?nmVmV@XUWI@aXm@?VUUkWmn@lmUUk@mUmK@UnwV?@??mU_V@XJ?VVU?LVUn@?llUnJl_n@?ml@X?lLlw2LVJUL@VmbVb?lVXmVnl?@?|?nn@ü?@b?l?@@XV`?Unb@VlLVb2J?Xn¥??@¥T@"], encodeOffsets: [[118868, 42784]] } }, { type: "Feature", id: "1306", properties: {name: "保定市", cp: [115.0488, 39.0948], childNum: 23}, geometry: { type: "Polygon", coordinates: ["@@VbXW?@@UlV@xVLXKWU2LV?VW?L?alVnwV@@b?n@b?VVllUnb?@lxè@laV@?aXV@b?X?x?J??nV@VVb@nnl@n?J@bl?l@?a??U_VWUwVU?kUm?Ukb±mVw?U@?VIUW@UWk?@VU@ynL?m@IV@?bnK?LVaVmnIlaXwV@@WVL°@@xnX?@V`V@VbUVVLVKnwnL@ll@@_V@VVna?@?KVX?@n?@w?KmU??Wm@?km@küKXU@?W±nIUwV??Kla@I°wU±k??kmmˉm?_?J?n?a?w?W@IVaUama@w?U??mU@mVw@aXk@mWa@£km@a?_kVmUnWW@ˉb?kUmk@??V?m@@kUU?KUU?@UVUamVUaWIkb@xU@@amUkK?Vkam@@kVUkUWm?KmUkLUb@xmJ??U@UImV?VmnUw?J?U@V?X?@UWm@Ub°|U?mxklmX@`ULU@@UW@@xknˉ@makV?UmxUb?°?lU??bUb?nUJ?UUV?a?LkbUU?JUU?@mUUU?Jka?@?xUIWJ?U?n?J@V?z?@kb@`@bln@l?b??@X@?@??@Xl?bnbVb?@??VJlInl?bVw@U?K??l@lbnan@Vb?J?Ln?UzlV@lèLVbVK@LVx?VWXX`WxXz?bV`UXV¤nx@??bVlVnVlUL"], encodeOffsets: [[117304, 40512]] } }, { type: "Feature", id: "1302", properties: {name: "唐山市", cp: [118.4766, 39.6826], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@?@VVl@2?lJ?UVV?b?VVb?@@InV?@?V?nXx?JXb?xUL@b?L?l@VlI@Wnk?KV@VXnJ@I?Jla°I?W?LVVnkmaU??WVk?aüˉ?@nV°wnJlaV@VUnUUaW?ˉwXWWwna@£UaWKUˉ?ˉ@aVUkKUamUU?n??an??IVwUWlk?@?LlWVakU@K?_l??bTU°@?y°n?@?KèkWW???¥?ō?k?WUwˉ£ˉ??w?w?@kK@k?¥Yw?b?¤???V?l??W°@??x@VVVULVLkl@V@X?`Ub@Xm@UW?b?k@?VbnLWV@lnXUbl?@XˉlmU?VkKWLkK@_UK@U@UmmUxmVXLWVULkU@`W@ULUK@XlJXzV@@xml@VU@UX@Kk@WbUK@Xn`?XmJn?m?kxU?VbUVlVVxUbV@nKlL?kVKTbVKXI°KV?mVUIUKULVxVJVLkV@V?@UbU@WUU@UbUK@b@n?V@VkLmb@b"], encodeOffsets: [[120398, 41159]] } }, { type: "Feature", id: "1309", properties: {name: "沧州市", cp: [116.8286, 38.2104], childNum: 15}, geometry: { type: "Polygon", coordinates: ["@@@ln@Uè??l@Vn?l°aX@mXnVlU?`@bln@¤Xb@nWl@bUx@nnV???V@xnbVbUb@J?X?x?b?mXa@k?UVwlW?k?K??Vm@w?kkK@kl?è?m?VKXkla°@XVV@VI@ml@@Vn@VX@V@J?@VxUzVV??2blVk|@??@@??@VK@VèLlK@XnJ@alIU?l??a?VVb?@?n@a?U@WUIV@mUn@mKXml@lL@LnW?b@XV@@a?VVb?V?@VV?IVWèb?Iè???lW?aVU?U????Um@kVU?WVk?aUwmaóU?JUUˉ?U¥mk?ˉUa?K?n?yóXmW?Xˉa?b?a?J??W?Y?U?ˉ??aóó?Um?@I???VVl@b?LUJWLX@@x?XUxl¤V@V?nVUV?XVbV?@??@@VVn?°V?@??UˉV?Um??UWV@mUX?a?bUKUwUa?Kn??Vk|Wb@VnLmV@bkV@n?xW`?_UV?V@b?UklVX@VmlU??x@VVL@x?VWV?L@VW@UUm@"], encodeOffsets: [[118485, 39280]] } }, { type: "Feature", id: "1301", properties: {name: "石家庄市", cp: [114.4995, 38.1006], childNum: 19}, geometry: { type: "Polygon", coordinates: ["@@la?@?y@U?I?m?VXIVJ?w?@lb?IVVnV?@VV?IVVla?K?bVU?VVI?mVa?aV??k?ˉVanw?VlUnb°@lm@wX@@VV@VK@_nWlknwV?ˉ¥Van@VX?@?W@U?V?IVxnmüUnUVJV@??nI@wValKnV@k?mU£na@mVk°K?LVa@UU@U?mknWWkXU@aWW?@@km@UaU@@klK@UkaWaU?namm@U?aˉwW?U@Uk?L@?Un@x?V?lUXVJUb?LmU@aUWUkmKkLUUm@mW?X?a?mmkkWU?m@@UˉJUUm?kUˉ@mK?xYwY¥?L?Uó?mwkUUUWVkKm?kKmLX?lxVLVxXJ@nVJnz@VWL@`nX@??x?@kVUUmJmIXx?JV??nUV?@UVV?@LU??`UXVV???lXL@l@b@VmX@b?xn°?U?bkKWLXlW@@b?K??mKULmakLUlmb@?Xb@xmXU`V??b@`lL?x@nWVXL@?°?WlXnlb?KVK?XVb@?X@l_lJ@V@Xn??I"], encodeOffsets: [[116562, 39691]] } }, { type: "Feature", id: "1305", properties: {name: "邢台市", cp: [114.8071, 37.2821], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@nKlLn?lLXUVVlVnx???V?KT|Tx?wnL°@lVn?VV°I@Vn@V?lXnl?n?b?WnXn@VVlKnLVlVX@bnV?KVaUIVW?k?U@wVm@?ˉ@U¥VmU_°l?K?k?w@LX?Va?U@w?U?UUKlUóW@UVU?Ul?°K?wlKU_na?KVnlKkk?WWa@I?JVa@IlJnU@??KVUUmV?laXUl@lm@kXWY?nk??±?k?@w???@@U?@mK?LmV?J@zmln?WL?UYJU_?@@?mJkXUVlbklY@Ya?bˉ@ˉ?±J?w?aUU@?kU?@mV?I±bUK?L?WUX?Jka?LóKULWbUVkKmnk@@bmLU??l@b?@mnmJkUUL?a?bn?mn@lVV@|n@?l@b?znx@`Vz@b?xnV@xl?lbnKVx"], encodeOffsets: [[116764, 38346]] } }, { type: "Feature", id: "1304", properties: {name: "邯郸市", cp: [114.4775, 36.535], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@?bVKlVnInm?@@a?kV?nK@al@nmlLVUXaVK?L?Klb?IVW?X?KVL2a?JnU?@lV@?VV?b?x2I°?°@?aTbT@lkkaVUlWnI@??@V`TI?VXKm?nk@y?InU?K??kUUamUUk??@aU@U??k@WUwVkVJVkkw°a@???mK@UX@VV?LVW@w?wVa@ˉX?m@@lUIWaU@UWkXWmU@UwmUkKmn@lkV?2?V?aULUVmJUUUw?Lma@?UmkIUm?L?mV?mx@b?LUamK?L@VmbkUˉKYamzkJUb±Vkb?L@lU@WIkJ?zkKmK?nUa?lWkkKW@@nkbk@WWˉXUVUJ@XlJ@X?@XlWLkU?`VUnaWa??UV@UVI?aUxUUmV?K@I@W?@??U@@U@b??@nmK?Xmx?@UxkVWUX?@`VLlL@`?zX?Yb@b??@VUVkIUJVz°KVlnLlKnL?xlLVVUVlXUJ@nn??I@mVUlbn@@?m?@bV?nV"], encodeOffsets: [[116528, 37885]] } }, { type: "Feature", id: "1303", properties: {name: "秦皇岛市", cp: [119.2126, 40.0232], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@lnV@Xb??kx@lU@@LUVlV?LVbnl?a?LXVVn?l?I?V?U?JV@Un?|la?b?@nJ°Um?V@?wn@VU?JVI°bnWlXnWVLVK2b?akk??lI@aUaV?UwVUUalaVwnUVak¥?X@W?k?LVóm??mUK@_lW?@n_UK@al?@?????Y?m?@????l?L?@ˉm?zˉ@YV?ak??`@LlVUbkX?K?@klVXUx?Jm??bm?V?nVVblLUV@b?°V°XLVb@¤mbXxWX°xX?VbmVUVU@kbmIˉxmU?@?°óbUl"], encodeOffsets: [[121411, 41254]] } }, { type: "Feature", id: "1311", properties: {name: "衡水市", cp: [115.8838, 37.7161], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@?KVlV@X?°x?b@VnnmbV?Xblb@VkL@lV@Vbn@@l?@XX@bWVXlmXnlV?V@@VUb?KˉLUl@nmbV¤?n@l?LXnlVUV@ln@lb?UlLnV@bV@@wlaXJVbnUVbVU?@VV?LVVn@VVX@@U?KXU?U@wUK@U?wV?nk@UUWlk?V@a?UVU?`X_?w@mlU@anUmK@UXal¥?Um?èLVbVxVL?a?bVW@nXU?Vn??V°U?V@?U??ˉUm@U?@@?U?Ua?WVUmUU?U@k£Vw?W@wW@XK?IUa@wU@@al@UK@_mKXK?bUU@aVKm??@Xm??±@kb?akL??VaUw@a@?mkUJ?k@ykw@£??WX@lknk@WVkbU?VnUV?L@?mVkI@JUb?I@JXb?XllkLUm?LmbV`kL?xˉLk??VUV@V?XkVVL?V?V@x?VUbW?@K?x?l?LˉkV`UnV|°@"], encodeOffsets: [[118024, 38549]] } }, { type: "Feature", id: "1310", properties: {name: "廊坊市", cp: [116.521, 39.0509], childNum: 9}, geometry: { type: "MultiPolygon", coordinates: [["@@la?U???@?UnL@VWbklWxnIVV?V@X?JlbUl?XVbn@@K?mV@@X°WVInJmn2@lmVbnL@amKV_kwlmX@@LVamaXa?aVU@UnJVanLlUkaW@UaVakK@IlKUU@an@ln@alKU?kIVa@a@klaUKUV@UkUVˉ?KV?V@kUm?U@@aˉImJUU@VV@UL@U?@@WXUWa@Ukwm?@?X@@w@al@@aVIUmVUUUVWUknK@I@?l¥kU±a??UUVyUw?@@I@UUWm@@Uk@@nUJU@WUˉ@kbWlULn???k?@llL?l@xUnó??L?lkXUx?V@lWb?I?`°nnn?ll?V2ˉx@Jkb?LU?VxmJX2@òWV?L@lln@?Xn??nV?L"], ["@@@kX@Vala?a@KWI@UXW@?WanaUIW@UaUK??k_W@UVUKU?@b?@UamxVXnJUbWVXLVbn@W°kb@U@Wó?mIU?k`V?@bVbl@?lX@lU?VlU?IV`lX?Vn@lUlVn@?l@UVa?IUWl£Um??VWU@@UUKlUUUn?VL@K?UnLVWUa?@?U"]], encodeOffsets: [[[119037, 40467]], [[119970, 40776]]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/he_nan_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "4113", properties: {name: "南阳市", cp: [112.4011, 33.0359], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@lKl@nVV@?bn?@VVnm?nL?LXx@???VLlKVU?IXWü@??lbl@XU?UlwnW?LTw?m@?TUVmnVl@nX?JXLm@VnnJla?I@VkxVb?@V?ln?J@knKVn?@°aVanal@XK°b???@?ˉVJXI??VK@al@nV?k?@nK?a?b?@XL@blVVKVLXK?@VaVI°mVaX@V_@a@yUkVw?V?IVa?J°?@anIlaV@nKnX?m@wUUV±UUW?UKnaWwXUWm??ˉV?am@kakIm?UK??lan@VXXa?W@???@UlUUa@a@UlwU?V@Xal@@anIVaUK@V?XmwVmUmV??LXl?@nalLnal@??nKlkV@@UnJ?UXnl@nVl|V@@VnJ@nUVVVVIn@Va?J??n@@K@m?k?a@kmWVaUI@a@?k@@aUL@mmaVIUKUV?@@IU@m?UmmL@K@U?UUU@mW@@nU@??mVmbk@klW@UXnV@L?Jm??lUnUJ?UUUW??@UnkK?xmL?a@??@@lUU?bmUVWk@@nkUmam@UakJU_?Vm@?l?LUVmVUwUL?KU@?k@U?VUlU@@U?@UaUUWa???z?J?aWLkl?b@bmL@?kK?a?bW?UV?_?@mV@bˉJmXUbUK?¤?LUU@b@JkLWmkUWIkJ@VmX@JUbVXU`ˉ?VVˉblK@LXKl?UV@Um@@Uk@kxW?kb?L@KkbmL@?UXmaU@@l@x@blX@xUJ@bULUlUL?@@V?nU`W@@n??U@@VmKUkm@VVX@@x??@bUbVb@VX@@x?LUb@l??XLlbUlVVU?Ub@n"], encodeOffsets: [[113671, 34364]] } }, { type: "Feature", id: "4115", properties: {name: "信阳市", cp: [114.8291, 32.0197], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@VllInJlknJVkVU@mX?lUT`VnV?VU@U@y?@nXlKV?nJVkXKWaXI?b@yVk?VUkVwn@?K@?nW@k?KlUXVVUlbnUV`n@V_V@llX@@V?b@bV@@nlVUbˉ?WLnbmb@?nLnK?b?U?bVWnLlaX@VVUX@Vln@`kL@ll@VXVJèIVl@XTJ°Una?LlylU@UXKlnn@lanLWWnbVI@KXKVL@LVWVL@UVKUIVWX@@X?J@In`@?lJVI@a?W??nK@UlK@UU@VK?nlm?nXal?UllLUbVV?knJ@nV@Vm@a??l@@xnV??lJVUU@?w@a?k?@XW@_mWnUl?UmVKV?@?V?XwW?X?WaUwnkWUk?V?U?U@@?@WlaUkka?IWVkmˉxmIUm?LUV?aUIó?m@?mmwXk@a?mkˉˉ?l?@w?mkLmmU@UbkUWJ@XUb?J@b@l@zn?mK@Xk@Ub@lm@?I@akmVKUUVUkU@U±JUbk?@IWmkx?a@UUV?UWVkIUaW@Ul?LWn@VkJ?I@VkK@L@bmK??kJmUUaUKWXk?VxnJ@?V@@VULV??@@UkaUlWL@U@W@IkKmL@KULUWULWKUXUJmI?b?K???2UW?nWKUUkLU?mUUam@UU?@?mUL@xkV@?VV@bmV@Vk@mwkU?VUx@?mbX??nVb??ULˉ?W?nUVLVb@xnlWnU@UVU?VVUbVVlVkn@llVUXUWUXVbUJ@bmLUJnb@nVK@bl@@?@bVJUbnX@l?b"], encodeOffsets: [[116551, 33385]] } }, { type: "Feature", id: "4103", properties: {name: "洛阳市", cp: [112.0605, 34.3158], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@VVUllLXl@LWn@J??@b?KUVmn?L@`VblLnbV@?b@JmL@LnV@VV@ˉ?VJVnXL?@nm@aT@?a?k@m?I?mVbXL?ynL?k°@°aVJnUV@UVVXk@WJ@VXLlUnJVnn?°U@?°U?wl@?b?WmUX??@VLXU@m@U?a@I?mkb?a@?naWW@_@WXUV@@U??2@?K@I±U@¥kKWLóL?l?a@£Um@kWKXU@mlLXUVKUU±Jˉ_@`ULˉ?Wmk@Wa?kk?lUn?VUVaU?@KUU@mmK@_?a@KX@VaUIm±?k?aVKVUkw?@ka??W@kbkL±UUa?K@UUKVak£?@UmmL@l?IkmU??@Ualw@U?JkbmIUmn@WK?ImWk@mUUnYV@??nYx?KmXkx?VWVk@ka???@WX?JUV@z??m?VWnbUbVb?LlUn??lUòn?WV?VWnk@@Vm@kxm@Un?l@Ll@@V@?Xn??kJV??V@nlVXx?U@l?n@a?@VLnW?|nx?@lbVKXLl@T?VL??XJl@XXl`lIXVl@Xl?XUV?K?wV@lanx?zUbVJ@VVX@b"], encodeOffsets: [[114683, 35551]] } }, { type: "Feature", id: "4117", properties: {name: "驻马店市", cp: [114.1589, 32.9041], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@n@?b°U??XnVlnLü@VL?m@n?@na@J??m@k?@lV?VxXX@?V`lLV?XVV@VVTLVV°?2@la?bnxV@@b?L?mlm?_VWnIWUna@l?L?bnV°?VL@K?V?LVUVaVLXK@m?Xna@wVm?a?@Xw@KlL@a?@Va@wU?kaW?nIV?la@Kn@V?n@VUl@nKVn?J@LnK@aVkVUUW?@VakUVanI??2X?W@UUU°KnUVLl@XaVK@a?U@KUI@W@_lm@KkLUKV_U?@?@UVJ@XV@@mVL@K@U@Kk@VwUUm@kmWL@VkVkz?KmbˉVYI@WUk?JUIUWk@@klK@_km@UVWUUW@kbmKUX?a?V?amLmK@?namaXK°?VakU@mU@@a?a@UW@kkU@U`m@U_mVkaUVWUkV?L@lmX@??Lm@UxVl?UUl@z?aWJXbWLUlmIU?kLmW?@@z@VUVU?UmY_kVW?@nUVUlmIklmIkJUk?l@n@Lm@???IUbm@UJUUVU@mmI@UU@k¥mUk@Wm?VmI@VU@klmL??k@mbkKmb?@Wk?KU?VnUnnx?W@UVLUbmJ@bk@WbU@V?kx@V@bVbkV@V??@??XWbUWm@kb??VLn?lJlb"], encodeOffsets: [[115920, 33863]] } }, { type: "Feature", id: "4116", properties: {name: "周口市", cp: [114.873, 33.6951], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@l?nb@xlJ@UnLlKXUlJl_?KnV@xVL@bkbVVUè@?Wb@?Ubm???k?V?mbX?VJnUl@?a°@@b?LVb?lXx?InmnLVw?anJ?w2IlmnXVl°VVbèaVb?@lkn@VWnLlUVmTUUkl?k?VkUaVaVaUw?K@kkaVWmw?_??l@nU?VVb@b?aV@VV@zXJl@@kl@?l?k°WVn?bnbU?VJ?I?@VKVm@k?K@_kK@a@aU@@wW@@k@aUW@IUWVUnLlUlVXKVwmk@W@??VWa?¥@k@?l?n?UI?KUaU@?UUVmIUV?Uk¥?Vma@ˉk@Wanwm??@@?n@@?m@UIV?kUVamUXW?aV?U_?@?mUVUImW@aUI?K@VmI?b@lU@@n?J?kU?@K?IUmmLk@UVm@U?m@@LkbU?mJX?lbV?@xUb?@@bkK@LWx?@?bUn@xmb?W@nWLUKUbUV?K?U@LUKˉ?mU@?VV@xULU?VL@bU`W?UzˉaUamKUa?@@xkX@x"], encodeOffsets: [[116832, 34527]] } }, { type: "Feature", id: "4114", properties: {name: "商丘市", cp: [115.741, 34.2828], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@XVl@lLè??@VkV@V?Uan?W?X@Va???@èaVX@xVJXUTU?aVL?bXKl?V@?m°Vn_ny?XX?mUk¥lK@a?_@y?InaVKVa°_@WXI@?@K?VnIlbnaV@?l?@?a@_?w@?lwUKm?Xa@UV@??V??w@kUKVUUm@w±VUXUKUwmJUU?@?km@@±mXkmUI?@mm?KUwkbWakLWaUIkJm??X@l?@@VUX@JWbX@VbULWb?lUVULknlV@bVJk?mbˉKknWmk@@nmVkx?@?VmUˉKUnUL?@?JUIV?ma?aUmˉX?l?kk@@lk@WI@yUUU@?b@aUa?UmVk@???`nxUXlb@l?LVxUbUbVbUll?k?VlYVUnkVmKUXm@kl?@?nUx@xnx?n@`VX@V2x@V@b@?Wl@zU`V?UVVb?L@V?b?W@bkXllkLWV@V?@VVèwlV?@@X?K2Llb?Wnn?L@VnJWn"], encodeOffsets: [[118024, 35680]] } }, { type: "Feature", id: "4112", properties: {name: "三门峡市", cp: [110.8301, 34.3158], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@WKUmUI°?U@@UmU@KnK@I?aU@makKUa@_?KnmVU?L@a??@IXm@KWkkKVkUU@aUW@UUIVa?ymwkbU@?x?LVU?WWkk@WUkJk_WWk@WI??UKY?k@WKULka?@mw?¥mXUK?@@b?m@k?VWwkU@m?UU?lI??Wm@?@Uk@@K?kVmn@lwn@@Ul@Xm?UXUm?V??km?kV?KUaVamaUXn???@ykLUK??@?Ww?KmKn?Um@Um??aU@mUk@kL@l?x?xUnkVmnXxWb@`kzWJ@V?LmVUn?lmU?L@lW@Ub@V?XUb?`VLUbUJ@nmnUlUUm@@bUJlnU???U@lxkb?@@X?JUn?@kbˉVVVmlXXlJlzn@VlkVW?@bkK?bm?k?UbVb?l?XVx?Kèn?wTl?Kl??VnKlwX@lL@xlUnVn?@?l@lmX@??èb°?èwVJlx?_°x?a?l?UèxlUnbVxnL@lll?bm?n@nb?@@V?L@V?@@?VL?JnIVVlKnV?_"], encodeOffsets: [[114661, 35911]] } }, { type: "Feature", id: "4107", properties: {name: "新乡市", cp: [114.2029, 35.3595], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@XVlL?K°bUblbUb?l@nX@W?XVVKVk?@@?mb@?Ubn?W`kL?L?V@VVLnKlVXIlV?@@a?@l£nWl?k?Va?@°bnUlLVlna?bnUVUXKlU@?@?lk@a?I°y?@?kUU@w?m??nkWakml?UkVmkUlmUUm@nkUKWanamU?LXW@U?VnUln?`l??blL°KXV@??J@L°??J?UVw?anK@UUImm??kK@ˉ±U?m@IVmUmm?n?WaUKˉaUk?w@W±k?V?x?U?V?w?n?JUIWaYJóI?bm`Yb?ImJUIˉ¥ˉ@mUˉU?JmnUVóUkl±V@zXl?bWVXL@bm?mo?@@XmJUXU°llk?@nWJk@U?@|U`m?ˉ?Wx"], encodeOffsets: [[116100, 36349]] } }, { type: "Feature", id: "4104", properties: {name: "平顶山市", cp: [112.9724, 33.739], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@l¤UbVL@V?LVb2VlKlaX@??lb?@lxUVUL?b?ln2VJUbW@@L?b@`nL@nVV@LV?UbUVm?kVl??lXbl@Xn°?VK@_°`2IVVV@VUVJnInaWK@U?@?K?L?@nmlXXWVUUw@klKVa@knyVkVanI?JXUl@XbVUl@@a?a@mXk?bnK@UlK@UUUVaXaWmkUm¥n?WmXaWa?kl@VmTb?KVL@aVI@mUwVm??@K??méUL?KVaUk@kUK@U?WXI@VlKXU?@VVnInVV@VLlK@UU?kKU_@?WWUwU?@kl?n@??@Imb?@@m?nUK?@mKUkWVXxmbVLX?VVU2VV@x?nmWmLU@kbmJ@bˉ??IUb?J?UUxVl@z@bU`W@UbˉnUJUb?@WLUKULkU@aWK?@?a?bmL?@?lmUk@@bUL??WJUI?°?@??ˉaWLk@mbUbˉb"], encodeOffsets: [[114942, 34527]] } }, { type: "Feature", id: "4101", properties: {name: "郑州市", cp: [113.4668, 34.6234], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@@nWVUK?@W?nVnI??V@?k???wV@?nn@lxTln??J?zXJl@nalU?Vl?l@2Ulk?VVUnm?I°VnV°@°|VJnI?JTan_VmU?@ama?@kU?¥kaUklw@?UIV¥kVUI@?mmU?mU?l?wVU@amU?JWbUakV??VéˉIm`?k?@?wVWmLkUˉ??XkWmLmx?@UU?bm@@x?J@L?bW@UUVWUkVK?@ka?IUamKUkkmmL?UkJUVWXkWmn?@?K?L?@@VXLmbmJUIUVU@ULWVkK@nWVXL@lVn@¤?b?k?KXKlL@|2V@J?L±@??@VU@WV@X@`XXmb@??bla?n@J?b@V"], encodeOffsets: [[115617, 35584]] } }, { type: "Feature", id: "4105", properties: {name: "安阳市", cp: [114.5325, 36.0022], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@°kVaV¥k?VmUkWk?WVkVKUwkkmKUU@a?wWWX?WakKWkXmla?IVmX¥?U@a?@W?nK@k???V?Iˉ?@K?I@?WUˉLkK?ak??_kmmV?U@VWX?KnVmbXbVLmln@VVknlVUnVlk?lnXbmlmlXblnèlWbn@@n?K@V?L?bVV°VVz?ln?@V?x?I?b??U@WLUaˉV?UkW?@ˉkk?mxk?l??XUlVbVLnlULmU@l?LkVUl?X@xW@ˉmU?@UmIUW?L@aXa?kU?ˉan?Wk°@k?kKmmUIWa?ambUkkKmVˉa?@Ubl?k?mXk¤?@@b?@UbULWVnb@lUVVnm?nVVU?J@bWXX@WJkL@blVU°UV@XlWnXUbW@UVkV?VWbnLUJWLUK@Lnn@blVU??nUblxVUVJXU?a?@Ub?LnUVV@mVIVVn@UbV@??XbmbUV?_lVXUWanJVI@WkI@WVIVU°WXXl@la@mX@lLXl?kVb?m?X?ylIXJV@@k?Kla2UVa?IVyTb°LlVna@U?KnLVb?K@anwU?"], encodeOffsets: [[117676, 36917]] } }, { type: "Feature", id: "4102", properties: {name: "开封市", cp: [114.5764, 34.6124], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@lUVbXa?InV@bUV?x?knVV?nn@?VJlUU|VJ@?kxVllb?|lV?@nb@bV?Un?a?JTIXbVJ?I?m?x?U?V?w?U2l@X?xVl°bVLXb?`XklUnmVblL?@lm?x°LVK@UXIVa?WlL@Uk?°Kk?VaVUXmmI@U?Kmm?Xka±K?L@W?@kU?xUU?@@UXUlKkklW@a?X?a@U?KUaVUU?V_@yXk@?@a@U±w@UUW@_?mmw@wVw?mUa?bUaˉUUkmWkn±J?xmI?bUxmKmn?JWw?kUa?K@aˉ@?bk@mVUIW??Lmwm@Ua?@WJUb@LUl?@UUmLUbWJ@V?L@VmX?WWzUJUê??"], encodeOffsets: [[116641, 35280]] } }, { type: "Feature", id: "4108", properties: {name: "焦作市", cp: [112.8406, 35.1508], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@V@VL@x@bX?WV@Xk??lU?WX@J?@nI@KlL?K?UVaV@?JlL@KUk@KTL?l2_?@nWlL?UVV?@nLWVUJVn@anV@a?wTUVLVx?b?@lW?@lbXn?Vn@@??L°m?KVn@bnl@nVK@blb?L?W?U@VWLXV@nlKn@lVVbXw°?n?V_@¥V?l@XI@ml?kkVˉVWnI@W?@n1n?@aWKXU?aWk@yk@k??UkVmbk@WI?yóIm?Ykkwm@?mU@?x???lU@??mJ?X?ak@?xˉV@?ˉVm?UmmIkVWK@UXIl@UWVUU@mVUIˉbˉ@?lmK?zWKUa?n?J@n?l?bY@@b"], encodeOffsets: [[114728, 35888]] } }, { type: "Feature", id: "4110", properties: {name: "许昌市", cp: [113.6975, 34.0466], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@lI?VnKlnVlnLVb?Jlb?@ULVlUXVVX@?a@K?I@wn@?aVV?@nwnKlX?W°?lVnKUX?x?@?ln_°JVIXy?XnW@U?K@UXIVanKVV?@Vk@KVaXI?@Vbn@nx?KnaU?l???n?Va@?Xa@?V?UUla@aUK@wmU?Lk`kIWVkLmK@V@XUl?n@JXV@nm??bU?óI?mUa±@@?óVUUk@U?lKVU@akWVUU?lUUaUK@UUKWbUk?J@XWa?@XbmJ@nUJ@bUK?LYaUnk@?lXbWbXnm?n|lVXnWbUbVV@VkL@VmL?aWl@n?b@bk@UVWak@WV?ImJUbUlmz@lUbkL@lVx"], encodeOffsets: [[115797, 35089]] } }, { type: "Feature", id: "4109", properties: {name: "濮阳市", cp: [115.1917, 35.799], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@lLXbW?XX?x@bVVnLllVxULUl?XXlVlUnl?U|Ubˉl?n?K@V?bVb@?XbVL?KVxVVnIla?b?a?¥lU@wnalLnVVlVLXnlWVXn@@lVI@WnU@m??W¥?aW_k@WwXy@km?@wU??m???|?lUxVLV@Uw?J°x?@VX?@Vb?@?`VX@VX@ll?IVbnJlI?b?V?l???J@???m?ˉLóa@??KUa?k???X?@UK@wU@?lWUUYˉImWˉa?LUKU@?k???k@m?w?a@UnKWI@?UU@akVWK?k@a±??bóUWKXUmk?KU?mL?bUx??@lmLX??@@b?VW|Un?JkbWnXl"], encodeOffsets: [[117642, 36501]] } }, { type: "Feature", id: "4111", properties: {name: "漯河市", cp: [113.8733, 33.6951], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@@L??UnVxnIWa?@Xb@W?IVlXaVL@VVLVbkVV?UVlX@bUVkLV?l@VV?U@ò2@Vb?n?JV??an?@mWU@I?mVk@WkI@wmak?@wlW@w?@VbnLVb°bVyX?V_@aUKV?VK@wUU@??a?K@kmbXVmJUX?`kn?n?K@aU@mw?akb±@ˉ?UUYKUUU@WU@VkLUKU@mUmJUU?@WVkL@UWJ?X@VVL@lVlUb?LVKnê??"], encodeOffsets: [[116348, 34431]] } }, { type: "Feature", id: "4106", properties: {name: "鹤壁市", cp: [114.3787, 35.744], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@ó??n@xVVól?@ˉz?J@bkl@?@?kVWLUVmVXbVJnnlLl?ˉ@Xlm?°bV??lWb@b?KVXnJ@VV?°nX@@w?WVklU?K@knVVKmkUKUaVk?Wk?l?nwl?°l?@lX?V°UVbXKV@???a?J?w@Um??kUyˉUUU?a?K@U?L@mm@Xa?kkmWank"], encodeOffsets: [[117158, 36338]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/hu_bei_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "4228", properties: {name: "恩施土家族苗族自治州", cp: [109.5007, 30.2563], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@VK?bX@lbUVnL°?@VlVnUl@VUX@?aV?maX?la?UUU@wmaVUn@V?nmmk@m?U@kna?aU¥Vam?X_@W?U??mW@_k?VaVKnL?l?@V?Val@k¥@kUW@kUKVUlUV??W@k?aU?Va??lmkUVUVak?@a?Vˉ_@W?UkmVUlU@a???alI@akkVWUaW?XUWw?WVb?@???l?alIVK@U?m@?UU?W@al?2a?ˉUa??m@?bkk@w?@@W?aULmx?IU????bˉ@U`UX?JmLˉa?K?X?WUL@aknmK?@?aWUXaWm@I@U?mVU@??aUV@b?V?I@WkU?bXkm@VakwUKULWKX?mJ@XUK@?mL@KUwVaUI@KU@mmn?mXka@?V@@UUa?wˉyVk@?UUVmmk?èU@mWUnmx??mlUbV|Ul?bWVUL@UU??IUm?KV?VbUVVxkn?LUxV`VX@???kJVVUXWaUVVlUnmKUbkI@WULmK@L@LVl?LnmUIWV@akn?`VXUJ?IVlUVVbUX@¤mbnLm?m@UXk@mm@Uka?¥@kV@@KkU@aUKWbkLWVkIV?k@UbVlmX@bU@@mmL@bn`@Ln@llVLVk?@XVVU@`VXU???k`V?ULka@VllVIn¤V?U@@blü?bkx@bkL??kK?n@bn@@b@JUnV`UnVbVKlVXUlbn@°?Vx?@@b?nVbUllVn@V?VK@UnW@UVU?lnk?VèT?xVb?VVI?xVa?@@aka@UVaU@@a?k@Wl@nbVI??@Jk@?L@VlXnlla@?VJnw@UmwXU@aVK°òn?llnLlb?xnKVaV@l|2nVl@llL?x@XVV?????@na?x@U@al?XUVa?LètV°XxWXkK@?mLnlUb@b?xnLVlVVkb@?UJ@xWXX?"], encodeOffsets: [[112816, 32052]] } }, { type: "Feature", id: "4203", properties: {name: "十堰市", cp: [110.5115, 32.3877], childNum: 9}, geometry: { type: "MultiPolygon", coordinates: [["@@@a@w@kV@nbVK@?nUla?@la??l@nlVakwWX@WkL?aVm?wV?@anK@UlIXmWkk@@mmLkWlwk@U_mKXwWK@UˉK@UU@?VUa?km?kI?yUUVUmanU@mlwk?@_mWXa?UWU?@??@U@aUaVwUKUI?VkK@UWIX?maV@k@Vm@Unwl?Uamk@V@?ULUamxUJkU@I?`WkkKˉXWak@@W@IUV?LWJkXka?VUK?@kUmbmUU?UK?bkKWUkI@?kKY@@a?Um?nI@m?U@UnWV_@aUmWbkLUlˉb@a?kk?k@WkkJm_k@UV±@?J@b?nU@@WYIUJVbXL@nlJkx@?Wn@VkJmb?LmU?`VbUL@xVn?@XV??@?mVVnnJVbU??x@?V?nVUbVV?x@?n??bUK@b??@b?J??m2?VU?lbXzVJV??JVbn@@Xmb@V@bVJè@?Vnkn@°aVVV@?X?KnalLVm?UnnVKVlnLWlXX?Klk°???X?W?kLUVVV@nU@mlˉnmbk@W`?@mb?LWmˉU?xnêVèk@mb?V?nUK?@kKmXk@@JUI?l?LllnbVnlJ@LULnl?aVLn?V@nkVJ?@lk?@2b?m°w?L?WV@VX?K?VXI@W°??V?K?b°U?JVIVV?|XKVL@l?InaVYnUl@@bX@??nmVL@lVL?lVLVUnbVW@xXn?b?U°¤V@???a@kWKUUn@VlnL@UV@ü?@mX@V_?akaT@VK?ˉ@kkW"], ["@@mUkUUm@nllVKXXVK"]], encodeOffsets: [[[113918, 33739]], [[113817, 32811]]] } }, { type: "Feature", id: "4205", properties: {name: "宜昌市", cp: [111.1707, 30.7617], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@°`?U@bl?UbUVlVkn??UbV?èb@l?XUòkVUVVL@lVX@ll|k@UbU??@?kmKULUbl?@`nX???V@XW`n?UbV|?bmb@l?V@nnlmnU?m@UVnb@xVV?VkbW?nb?Vn?Va@an@UaVU?JXnWlXX@l?|@?lK?X?bX?V@VV?@°ˉ°xXx?XV@nV°UVWU_VWXkmaV?nWVkn@lln@lb@UVLXWlnX@?aXUmaVK@UXU?U@WVI?W?XXV?U@¥VK?@?UT????a2LlV@kV@UanKma@UVUnK@UVLXyVL?knJ@UV@@UXKWUXaV@Vb@mVLnKW??m@aUUm@@UkK@Ula?LXKWaXI@alKlmUk@wVKXL@m@?WWn?@UVa@K@wna@aW_XWWkXbVW@k@UˉWWwka@UUaVIV?kU@m±@U@@wVKka?_@VV@XUVwU¥???yUkm@?V±èUKk??L??m?mLk@ó£kmWw?m@U?Ik?WKXwWU@?kL?wkbma?bkK@V?LkmWIUKkUU??I?J?X?JULV??LUV?@UK?@kI@WVI@?Ua?WmXVVUL?`±k?LmKk??k???@Ua?XXxWVX?VbUXll@bkJ?b??@bkVUVln?V@X"], encodeOffsets: [[112906, 30961]] } }, { type: "Feature", id: "4206", properties: {name: "襄樊市", cp: [111.9397, 31.9263], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@@Xl@Xb°WlLXl?_@JlVVInwVbVK@?@UnlVbk?mx@VUnl@U@nbW?XJ@VlL?UVJVLUxVb@b@Vè??@XV?VWbnX@`l?kx@nmVnbUVVV?zlJn??lVb?UV@@V°L@VXLWxnLV`l@kxlXnK@nl@XlWn?`Xnl@@UVa@VèK?£VLVanW°U@UVU?@?`VIn??mV@?nV@Xa@aVW@U?alkXK?blI?y??XnlJXbl@@VV@nklU@`?nVK?LVKVb@V?U@UèK?UVK?IlUX@V`lIVbn@nblVVmV@@XXJ?UVV@knKVn@`@X?VnK?wlLVmUUU@?U@aXL@WlU@UUW@UmU@KkLWaXkWmXUWm@U@?nk@UmK@U@U?aU?VUUKV_@al@namWUI@KU??K@aV?@WUI?b?¥ULUJkIm??K@U@K?V@U@a@UkU@K@wVaUwlU@mU?ULmKUkV@@anIWmUK@Iˉ?mKkl@LUb±lUakLmk?@WwUKYVUIm`ˉn@Uk@makJU_@??JmaˉImwUVkK?b?aU?@wWaU@VU@mXIVmmUkJkwm@mI?lUKWzUK@VmLUV@VnbmLVbU@@lkU±K?b??Y??V?@UL@|?VWU?W?XUJ@X?VWV@VULnbWV?bW@kmWXUK@Vkam@kkm@UlmXU?nbWlUXV`UXˉVmUU@Ul@Lll@nnJ@L?n?Wmbm?@b???`??", "@@kUUm@nllVKXXVKmU"], encodeOffsets: [[113423, 32597], [113794, 32800]] } }, { type: "Feature", id: "4211", properties: {name: "黄冈市", cp: [115.2686, 30.6628], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@VVUnWVXnVJ@??U@V@VX?V@@IVJU?n?@V@L@KlIVlVanLVbnVlI??n@@a@Kl@@I?JlI@aXU@KlK?kVblJXU?VlU@V?bVkVKXn@VlxVa2I@VlVUxln@b?JXklaVWnLm?@y@k@a?I@W@aXIlVVaV@nnlKnLVW@IUa@a@K?UVVlI@wXKVV@IU?la?@lUXwW?n?nalLlxXLll°@XwVKVaXIl?nb?@nln@Va@U@k°?Um?UVaXI?JVˉ?U?mmkU@Wa?Kmak?Vm@U@aVKkkmKkVmIk?°£@aUUVaVVnKlkX??mk?@?lUVaX@@Um@????UmlUXV?UVU@w?K2¥Ua@I@UV?l@U?V±UIU?°?VkUmVI@a@U?m????ˉV±b???a?Lˉlm?kX@?óā@?m?Yê?b±WkL?n@xXx@?@b@V@LW@Ub?l?X?`kxWnX?ˉ|?V@L@JVL?xkK@V@bkz°l?lXz@J?UlVla@XUV?bVKXnW`XXV@laVV@V?X@Vˉx?x@xULVbUJ@n@LU@VmmakbUK@b?IWWUUVkUmkLm@VJkb@nUJ??@`V@kX?aUaVmmLkUmJ@Uk@U?±lkzmJUb@b?VUxVXU¤?L@J?X@VlL@JkLUVU@mnUl?|@V"], encodeOffsets: [[117181, 32063]] } }, { type: "Feature", id: "4210", properties: {name: "荆州市", cp: [113.291, 30.0092], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@èJV?lVVLXJln?K@UlL?anbla?xlK@?XVWxXLl??J@V?nXxln?¤l@nKn???èKl?VL2??Un@Vl?z??V|UxWVU@@U?`lbUL@xV@2@@nlVU?UJVb@VlbXx°XVWX_VKUwVKVa@UVKUUVk@KnblaUU@wnWl@UX@l?@@a?IVmUk???xVJ?U?bü?@Uk@WWnk@?V???Vm@I@m@Un@m?XUlVlUnJ@knJVU°@@a?LX@?llL@|nJV@XblLVa2U@UlW?@VX@`@LV@@bXJlIXml_lJ?U°b?K?LnVVl?@??V??mXaVI?llUlVnLVlX@@b?a?nnx?V?L?bn@°???Xmmk??ˉw±????U?@?KY???Y???Uwˉ?m??ˉk@W?kV@ˉUIUJW?kb?U?wk@W`@|U?nb@V??lè@VU@???£UWWnU?UnmJkU?£VWUI@aUU@WkI@U?a@JW@k£kaWVUKmnkK?b?kkVWb?VmUU?mwU@kk?@UakUUa@V@nlx@lUb±lUbnnWLUyk@Uam?UK?@mlk@Wb@VXL@x@xWI@aˉ?ˉV@bVn@LkKmL@`?XmKmVU@@bkL@V±bk@Ua?a?L?KUV?I???W?X?amVVbUK@b@Lm@UWkxULWVUnm@UlUX"], encodeOffsets: [[113918, 30764]] } }, { type: "Feature", id: "4208", properties: {name: "荆门市", cp: [112.6758, 30.9979], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@n@lxlInVUnWJ@nUVV@Xb@xV??b?alLVUnx°Jnb?I@?V`lInbl@@V°mn_VJTUVLXx?@nllKVb2kVa@KlknL°?@JVLXnmJ@bU@VlnLVKV?@nX@lU?KVaXal@VKn?@¥°L@Unw?bna?V@KV@VUX@lVXI@KW@@IXWV@laVL???KlaXUVVnkVWV@lwXblIXWVkVm?aU£VaUmVIkU@y@?WakKUamU@UUK@kmK@w?@@?mK@L?Vˉ?U@WwkmUL?amV?VUU@??I?bUKUa?km?m@UakLmxU@UòWlUL??mwkIUm@a?kèblW@U?V?UUk@JW@XkWWUkUKUIlw@aUWknWUUmnIW??aUwVa???a?VUI?w??VlUn?J@b?@@kVWk@mX@xVVkbma@LUlVVUL@VUbULVxULW`UX@V@lUXWaXlWXX`@bmb@x@LUb@Vm?XX@?@nWKUL@xVlknkL@bWJXbWL?Kkb@VlL@Vn@VV@b?nX?mLUK@nUaU@WbXVWL@VU@@V"], encodeOffsets: [[114548, 31984]] } }, { type: "Feature", id: "4212", properties: {name: "咸宁市", cp: [114.2578, 29.6631], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@T??L?@?V??2?°x??nlWn??ˉ?m@?a?K@??°?n?J?wn?VIUa?J??@w?wV?XW@aV_l@2V°l?wlaXL?wlUkalVVaX@lVXI@a?UXJ@U°UU¥VIVKV?k?lanLVa@VèIV?V@nk@aVa@mV_@a?K@klKUa@UnKWk?@@lU@@UW@@nUWUwmaVIX??lV@mLXblJ@kV@kk@KU@W?kUWV?wkLmW@UmL@lUL?KUL?ak@maUUYwUJ?I?b?KUU?@???aWK@kUWVkUwVw?@?mY@?I@wkW@a?w?w@LU¥?k?J@nVJ?IkVVnkV?UkyUIUl@xWUkaW@@°kz??WxkLUWmzk@@bVVV??b@?@XlV?@Vl@bVbUn?`Wn?@Wb?VVI@`?LVbXLV`mnU@@l?L@LU??ak@?Lk@WbUJn|@lVb@xVb@n"], encodeOffsets: [[116303, 30567]] } }, { type: "Feature", id: "4213", properties: {name: "随州市", cp: [113.4338, 31.8768], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@?@n??`lw?k???UmUVWX@lk?@VanU??V@@mX@@nVV?VXLmJVLnK@b??V@@J?@VUn@VaVUUUVWVLV@@Kk_@alm?aVkUU@WV?VUVLXmmk@wUaUKUV@?°?@kmaUaèmW??mU?VklaX@lVnxl@@UnaUk@?VUVwVK?n?@VVn@VbVJUknUmmVmk_Vw?KUUm?Vak¥@UVKVIkW@UmIVWkIV?kmmLkwmVU?@L?UU@VVXL@JmLUbmK@UUKm?kKUUmVUaUn?lk?ˉ?mJUnmLUaUJUaWL@UkJ???U?@?aklkU@ˉ@KWLUmUUWVkb?L??UKkbU@WX@JX@@LWJkUW@UVU@@L?Umb?amx@VˉK@|m?ULk@WbUb?LkVW@kVVxUb@x@LlV@V@b@V?U@L@V?Ln?lJVIVK?|?aVJ@XU?@b?LV?@LVJnXmbk@@bU`VLUVV??b@V@VnL@Vml@?@VXnWVXnWlXblK@LnV@VVX@VkV@XWK@b?VV@VV"], encodeOffsets: [[115830, 33154]] } }, { type: "Feature", id: "4209", properties: {name: "孝感市", cp: [113.9502, 31.1188], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@VnXK@L@°lVlk?b?@?V??lI@VXKVbVIVbnKVmnI°?l?èkVmVbnUVVlLn?VL@VnLVanK@IWKUUV@?V@KV?nUlxnKlnU?lJUXnJ@VlXUJUL@Vl|Ubn?VV?LUxl`UnnnmVVln?VK?b?mVX@a°Y°L?aXJV@VUnKVXVK@LnKlLUbVVX@VwVJVn?@@UU¥V@@UUK@?maU?V?UkkJ@L@K@Um?V?UI@JU@W?@U@U?V@?UIWmXUVmUU?@UVmI?lmnmakK@akaW@UwVUkKV?nUlKVwk???V?U_WKUkVW@UXaWkUa@w@?VU@?XaW±@Ikb?K?bˉL@W?XkW?@UakL@UV@UmVUmL@UXWVL@a?U??VUUUVU@yUU?IUa@wUKWVU@k???WkˉUkwVK?LUx?K@nVxUlUUWV?Umw@w?UUy?XWlX|WbUV@?U?@blbUVVbXX?l@lVL@bk@lxkVVnVx?|?`UnkL@V@L@??@@xnL@lVL@VnVVblLXb@?@zlVUJVnUbV¤?bUnUlWXkJWakxU@UXml"], encodeOffsets: [[116033, 32091]] } }, { type: "Feature", id: "4201", properties: {name: "武汉市", cp: [114.3896, 30.6628], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@nbnm?knJVUè@@U?¥VknmV@VUlK@IkK@U?W@I?KV£UWVw?U@aVanIly2kV?l@@VnIlVnKUnVb?blWU@@_??VI@mlaUIn@lKVnUlVVXX?J@aVLlanbUnV@@K@mVIUaVK@w?w°w@U?W@UUUkbU@WWX_WmUL?aVU@WkbkU?V@IWy?kˉkly@a@UlL?wUK@I@K?UW@??±U?m@wl¥ka?@@_Vw@??a@akw@?kKW£X?VUVwVwUaU@VUU??xWKkb?xˉk±Uk@U`@bWXU??x@x???IVbUJm??x?I?m?ˉ@??Umx?nUVVbnJV?@L?@@?kV@bVn?@UVULlx°VXl??l?V@XUVL@xVb?JVV@zUVVVUV???V@bUKWX@VnKUVVnU@@VlKVb?@lX?W@X°K?a?Lla@JX2Wb@?UV@?@xVbXlWb@VUXVlXLV`U???l?UxkLmVU?lLUVVxX@lb@blL"], encodeOffsets: [[117e3, 32097]] } }, { type: "Feature", id: "4202", properties: {name: "黄石市", cp: [115.0159, 29.9213], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@V?UVV@VbUx?aWU?blUVmnKlX@bXJVIlVUxVVVIU??zlxˉ?@?VbnL@x?x@UVaXK?b?@Xk?WU_Vm2klW?XVK??l@nXV@@w?mlK2X?aTén?@???@?lWn?°kUKmmU???Umm@?wkImWU@UakL@bVLUV?@?bUK@alIXKWK@?nXnKmkU?Vw?@ˉb@L?lUL±W?n@KULUaW@kL@l?L@bU`@nUb@bmlU@U??J@UUbmKkbl?U?ULUJV|ˉV@VWI?V@bWJkUW@UbkUlbkV"], encodeOffsets: [[117282, 30685]] } }, { type: "Feature", id: "429021", properties: {name: "神农架林区", cp: [110.4565, 31.5802], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@n`lIXll@l??l@b°aVklKXaVn@bU`mX@V?V@nmJn??V@bT@lL@?lJXVlL?aVLV?nVnalV?@VLèUlblWXI?KVU@J???_??@an?na?X?m@KmI@mkk@KVk?WWwˉwˉ°?@UUU@W??a?WkL@??¥@kWWXkWm?IUVVbm@@bUbm??UU??bW@UVk@mVkU@Uˉ?mKVUkaW@?aUL??Vb?b@V?@Un@V?LWlˉL??"], encodeOffsets: [[112624, 32266]] } }, { type: "Feature", id: "429006", properties: {name: "天门市", cp: [113.0273, 30.6409], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@K@UlKVm?_?¥UwUmlUkwl@@aUK@k?kWWUaVUka@aV?@?VUXaW¥Xk@WWIklm@?xmI?VYUkxka??@bWJ?aUL@?W@?lˉUULU??b?kV?Uaˉbm¤Un?UkmU?Ux?b@VkX?a?l@bVnlJnx?āVKXkV?V@nwlKVbn@n??lVbVL?a?J@?VV?UnU?bVKlnXxV@°??U@KnL"], encodeOffsets: [[116056, 31636]] } }, { type: "Feature", id: "429004", properties: {name: "仙桃市", cp: [113.3789, 30.3003], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VK°V?kX@@?VK?bXI@a??lblwTV?UnJ?wn@lkXJ@X?WVz?V@xnx?VXUVVVkUw@m?LVw?KVU?@Um@alU@??@@KU?mIUaVU?mnwmw?m?b@aW@UkmKkUkV?kUJWb?nU????@UkmU?K?Lˉa?VkIk`WnkJ??@xVLUVVbUbk@WlXbm?VxnxUblbUV?@@VUV@nVL"], encodeOffsets: [[115662, 31259]] } }, { type: "Feature", id: "429005", properties: {name: "潜江市", cp: [112.7637, 30.3607], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@UbVx?bX?mJVnXVlmVX@bkxVJVLVlXXWlX@@IVl?V?U?aVwV?lnèVVmn£°aVbU??l?aV?UK@mVU@U?@VUkaVamwUwn?WaXkl@VaUaVUUK@w??WI@aU@@K@_UW?@kX@V±VUbkKWaU@mI@¥kK?kW@?K@bˉ@UVmI@lmIkVkUWVn?m@@V@n@JUn??U?@?mlXXl@@V"], encodeOffsets: [[115234, 31118]] } }, { type: "Feature", id: "4207", properties: {name: "鄂州市", cp: [114.7302, 30.4102], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@°¥WóXmlw?_?W?kVaX@@K@U@a@?WwU@mWk@??UL?WkX±lUnV`?XWl?@?aWLUb@V?w@wmKUa@?°?kw?yV?UJUUVwkUUJWI@akWmLUnkV?aXV?bUxUVW?X¤lL@?lx@b?b@?Ux@`?@lbk|@x?n2V??X@"], encodeOffsets: [[117541, 31349]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/hu_nan_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "4312", properties: {name: "怀化市", cp: [109.9512, 27.4438], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@@n??@b@XnJ@k°x@aVUnl?UXnV@@VnJW?UJV?nIVV°?UbVVVL@?2LU?Va°V@aV@nm?UXblLXWVXVmVLVK@an_?`@X@l°?VlXXW`nX@Jmn@b?@nV@Lm`?bUb?n@VUVl@nIVbUl?V@LkJUnVV@xVblVUbU@?zUKU@mx@xUnn@@WV@lbUb@?nVWXX?V@VIV@VUnJ@VUz@JWbXllI@VXVVL@?Vn@??Wlb@???l?XVlL?aV@VJ@XX`?kVwVl@bk??bU?lVXIl?nLVa?mVwV@@nV@XaVJVbX@lwV@n?@nV@VWnIVVU??@Xx?a@I?UUKmk@mV??IXmWU??VJnUVU@anaVwk??U@UXa@W?@m_@aˉ@@K@UV??bnK@blIlbXa@WW_n@V?U@ˉbmy?Uk?UJ??@W?U@kWK?w??nm°KVkmankVWnXVWV@U??wXkV@m??UlLna??VaX@VUn@VnVK@xlnXW?U@a?@@klak?Vw?mUaV@?wmI?`m?@mVUXmlIX?V??I@K@aU@UaV_UK@wkUmmUKWX??mVkU?L@m??U_nK??@aVU@Ukak?@U??@ymU??ˉ??UU?VKkam@?nka@?mwkLWbˉmka?_VaVKU??IUw@?kKm?U@WK@Un?maULkU@wUalWV1U@@WUI@WU@?_@W@U?@m?U@Wb?bUK@Um@@UmbUw?WWkk@WU?a@anUUwlWUwUU@wlJVUnnV@@mnI@m?K@U@w?a@wUm@_m?VUUaVUk????_k?Uk?VWL??@mlU@kn¥W@Uw?UWV@VYU@lXLWVUbVLXlVIl?knmU@VUJk@@??@??kVmwmVkxU@@XmVUb@xnKVLl@VxUxkIU`@bWVXX@JWL@bkb?¤@bmUUUˉK?kmb@V?VU?VVn@@?Vb@`ln?xmb?lUn?bk?@xU?mV@bmW?bU?V@VJ?Il@nVUb?K@nn@VbnJVIlJVkXJ@X@lmx@bnnWVXJWXU@UlU@m?k@@llb°x?IUbnJ@VWbXVmI@JVX@bk?@bWL@JUXUK@U@U?`n@@Xm@XVW@@nX@@`?ImxU@@JUI@K?LmK@U?UUV@VW@?ˉkUU@UamVUUmJ@n?xmL?K?kmJkwkKm_mKXU@a?U@b@Wk@ma@zUJVUmbUlU@?xnXlWlXXblK?¤V@@nUVVLkV??l@Xb@VVK?nXKVx@znW@X?@@lVK@X@JXbWbnn@JUamLVVXIVxnK@aWUX@?x@VnI@WlI@anV?IVxk?l@lbXX?xVVVJVInbV@@ln|ml@XXVWbkJWb", "@@XLVKVXVKUa@UUUmV@l"], encodeOffsets: [[112050, 28384], [112174, 27394]] } }, { type: "Feature", id: "4311", properties: {name: "永州市", cp: [111.709, 25.752], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@lxUXV?lXUVnlV??JVbUXVJV@XUWˉ??VIUK@klW@Un@?nl@V`XUVL@l@?Vx@?XXW`UnUb?xUlVnU?V?lb@VnJ?UVVVInJlU?VnwVklKnw?LVJV?V@nIV@nbVa@KVVVUUa?KV_nVVJ@_VW?nV@n¥lI@an?l¥X_VKlwVlULUVVV?@?U@VXL??@IUmn@VU@wmKXUWU@m2?l@VIXWWk?WUkWlkIVamUXamUnmWUU@@Un?lK@?XJl@k?V?Uk@mWKXkl@@aVU@UVWUUVa?In`VUVLnw@U@K@U??@w@UVmUU??°K@UnV@bV@Xk@KVm@amk?aU£VWUUmUUwm`UbULka?KXU@kVmU?@aV_UWVIn@?y?XXK@klmV???V_kWVUn@WUU@U?maU@?wnwWanUmmXk?am@UakLmK@b?xUUUU@Km¥Va?ˉ@?k?UaVUlm?UU?@mUU?mUk??Uy?b?bUa?XUWWb?LmL@V?a?L@WWXUKmmk?@a@UUK?XW¥kU@V?UkxmVkUWbUJn?VJ@nVJXzWxk?@lVbUX@VVL@`mbUn??Un?VV?k@Ulm@mw?L?b@lmLUK@U?am??W?k?K@£Ua@??UkJkUmbVlkX@bWbU?V?nnUVl?@b?bVK@VX@lb?V@nU¤?x?2?Knblb@x?V??@?l???@b@l@XWxnVl@?VV@XLVl?LU?UXV`?bXXmJU@@bm@UUkLW@UlUKWUUb?wUm?L@nklVVmVXXm@@bUKl?n??XkllVUVVL@nUbV?@V@nnV@xUnˉU@JW@UX@x?@?`m@@L?V@b"], encodeOffsets: [[113671, 26989]] } }, { type: "Feature", id: "4305", properties: {name: "邵阳市", cp: [110.9619, 26.8121], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@XIlJ?I?VVK@?n@VVVKnLVwVmnLVK@U?@?w?J@wVI??°?X@üè?Uèxll@kn@VwVaXJWXn@@WVL@UUKVKV_U@@aVK?x@U?aV@lk?@XylbUaV_?Vnal?@W?U@a?I@aV@@aVUl@Xm?UX?WaXml@@kk@ma@?V_U?nUV?UUWJUa@kkaWLUmk@@LUVWUkJWk?K@?UnWJ?IkV@b@JUIm@Ul?V??m@Uw@a@k?W?XWKUknW@?WUU@k?mx?UkVmIUJUU?VmI@UkaU?V?UmVk?wVaVmX_WW@?Uw@?@kUKWVU_k@?mm@@VkX@lVLUJ??X°WVU@UIVWUa?IU?mkVUkWU?VWkwWXk`mI@¥kUV?U?Un±@?m?XkWknV?UVmmU@@X?V?Uk`@X???k@¥ˉ?mb?ó@mkU@kU????KmX@?UnmL@lULkKU?WUU@?bUaUn?@Vb@l?|Ub@l?@UKmn?KUnl?UVVbUVn?@`Vn@x?b@x@V?L@nmJ@nU@mmUVkI@xVVVxkXVxmV@b?bXVl@Xl?XVxna@Vn@@VVL?aXaV@n??@@V@X?`V@@XVJ@XV@UokXVb@xlVVKnbm?@VXLV@n?lL@?Vx?JV?ULUb?`lb°nXalKnx@?lb?mn@lbULV??V°???nV@z??@Vl?lb@VUV@b??mLV`??@n?KlVnU??XWVLnnlV@xVLU`VbV@"], encodeOffsets: [[113535, 28322]] } }, { type: "Feature", id: "4310", properties: {name: "郴州市", cp: [113.2361, 25.8673], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@2zVaVlnVl@n?Vk?Jl_XJlIVmnL@mV@VXn@lV@?XzV@lyVˉ2U@UlJ@XVKnVVIXl@UVLV`@n@J?I@mlI?KVLnUlVUVVLXa?KVLl@nb@?W?XV°KUnVV?L@xVJ?L@b@LUVVVU??VXbmbVbn@@lUbm@?x@XVVV?@?@?@bkImx@Vm@Xb?b@l°XU¤?a?L?mnL@bl@@?VUX@VxnV?anLn?W??¥XKVwnUW?XmVIUW?LVx?L?w@wVmlU@¥X?WUkwl?n_Uw?WV@VU°wn?U??y@aV??kVlnL@lVn?w@VlJ@b?X?x@bVKnb@U@WVUl@@Vnbl@XLlK@aVLVKnxTn@a?LlmUaVU??m@?knUmaUKmVk@m?kk@UlWUkVm@w@kUU@W??Uˉ?¥@w??@aVIlUV?@kUWU@UUm?@k?@mKVkUKUw?aUaUa?@k?kUWJkImaU@UK?@maUzk`@z?y@XmJkL@UUJmUkV@z?@k?kVmK@|UbWL@a?@UbmKmwUK?Xk?VUUkmVkw@UUKmL@WUIWa?JW_k@@WmI@mk@W?kWULUUVKUUVm@??U?b?@??nU??@U@w??V@Ua@a?L@ak???l@k??U?J?wó@@L@V@??`@??J@xnn??mV@bkJmUó@?n?JW?UUm?U@UV@Lk?WlnnmVXbmx?xV@nbV?V@XVm@UVlXU`??U?kn@lWL?W?zm@UJVXU`@bV?Un@lWV?LlbVKVan_VxnVVVUXV¤?bnl@bUn@LWlU@@amU@VˉL??VVUn@V@x??@V@L@VmxUKUVm_?JUbVV"], encodeOffsets: [[114930, 26747]] } }, { type: "Feature", id: "4307", properties: {name: "常德市", cp: [111.4014, 29.2676], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@l?U?mkUwUyV??@VW@ˉVa??VmUU@KVUVUVLnaW?nkUóV_@mVU@Y?w@?ka@kVm?UmK@IkaUamKkXWaUW?@WUk??@@KVU@aU@?L@J@X?VUKVak_mWkLWakVUbmLUUml?UVKUU@kUWW@UImJ@xkLkKm@@X?@óY?@UUk@UK?V??UL?K?XkWWbka?IU??WU@mUk@WL?aUJ???@@Xè?VIl??Vnz°aV@U?m@X`@XWbkakJ@amL?aU?@V@L°@@bn`?@@XWb@V?Vl?Uxmb@bUVmVUI??XVWn?JU?@nnlVL?V@J?bWzk`m@U?VK2V?x?k?LVl?@Vn@V??°xVKVk?VVlUblx@bU????@@nVnUll?kx@VW@@VkLWxUL@bY@kKkV?V@bkXVVUV?@?VkUkV?LkV?a?@@???ˉxUxmX@JVb?°WXkK@Vm@k?Vb?bn¤?xUXkJ?blxnX?K2l?_@Wna?n@?UL@b?JnIlV?@lU?@@ˉ?@lW?IVKVm?U@aXaV@lwVXn@@K@UVKUUnU?bn@lW?X??lJnU?L?KV@??l@2a@UlK@aV@naVX?WV_nKlL@KUm@a°U°?@VXL@a@wWmXal@?k?@VLn?V@@bl@VnX@mwVa2aVU@mk?@?"], encodeOffsets: [[114976, 30201]] } }, { type: "Feature", id: "4331", properties: {name: "湘西土家族苗族自治州", cp: [109.7864, 28.6743], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@@K?L@wnK±?n?nm??@WUk??üèn@n?@mVamk?m?U??l@V?nmmU@wUanˉVK?Ln?VWlInyWU?I@WWk@KXU?n@mnUmU@W??mkV@?kXa?aVaUm?Ik???@?ka?X@?Um@?UKWU@UkJWkXa@IVy@UmIUVU@UJU@W?XWmU@?VakaU@@Xm@Vm@wnwV@VL?yV@VakUUa@wUUVmlI@K?UVkUamJk@VU@U?mVa?an_@KmU?@@anm@ImWX_WWUkˉ?@k@W?_m`@bULUKUnUWWXkKWa?VmnU@@bˉUUbV?±K@?UKUUVaˉ?UUmJU?VIX?mI@UU@Wm?VmkUV@bˉw@lmI@W@a??@mˉLXbmJVLklWL@V@XX?mbVVU@@VU2Ul@VlX@b?`Xx?zUmkUVòl?@bXLWxXVl?@V?bkLma@nmV?mULVbmVUb@lnzmbUòVl@°nLV?lJkn@bmJk_?Vmmkblxèx@LUb?xVb@V?n@JmLV?U?@?nV@|VbnJ@?lVVbkx?bm@UxVLV@n`UnVVV?kl°z?xVb@VU@@?lXnWm|nbVK@XVVUVVl@X?KUV@nVL@WnIW?XLVKVLlxUbVKXVWbn@@UnKVLVb?J?U@aVU°b"], encodeOffsets: [[112354, 30325]] } }, { type: "Feature", id: "4304", properties: {name: "衡阳市", cp: [112.4121, 26.7902], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@l?V@XV@?mXVlXL?W?X@l@bVxn@???UVkn@VJ@I@alU?JXIVm@??LXllIXVVU@Kl@VnXKlb@lVbXIVVU?mVV?U`@?nbl@@lXLVVVKVbnXWJ@VXbWxXb?Ul?VK?|nLVVUVVb?b?K@U?LnK@Un@VxlUV`UnnL@VVL@JV@VUnxnKVbV@@V?IVUnJU?VUl@nW?Xl?lIUa?KVbTLV?2`V@VIUwlaVmXa@IWanK@U@m?kV?VUVaX@l?naVLè@?¥@kkJU?WJUa?XkaUm?wV?XJ@_lWUU@¥n_?Kkam?UK??@amK?n?K?bV£ˉW@k?aWan@@UnwlJ@a@?@?U?UU@W?wn@Va@km@UanaWa?UV?UUVU@K@a?KUI@w?KUUVmˉLWUX?@?mak@UK?LWbUKVUkUmVUK?LkJ@n?J@I@mU_UK@VWkUJmUUL@WkI@V±VU°kzU@Wy@?kUm@UWU@@nmKUnkJWIk`?IUlm?k@mUUkUb±yUX@VUV@bk@WlXL@nVlU?l?k@WI@?kLm?@VV@XVmnnVWbnVUblJXkVl?XXlWXUJk@±?@nXVWVnL@xUVm@Vn@J??WK@U?V?@UUVUVKUkkxULW`k|m?@bkJm|U@?mUX@`UImUU`?LVbUVUU@LUbmaU@mJU@U?UI?KmxkLUl"], encodeOffsets: [[114222, 27484]] } }, { type: "Feature", id: "4306", properties: {name: "岳阳市", cp: [113.2361, 29.1357], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@@wUklmU?UmU@@UVm@wUaV_mmUKmwkIkJmUUnm@???@UU?bUKU?m??ammˉxVLkb???U?VUzkVUl?UUKWLX|W@?VUUUa?KUbmL?Km?@akU@a?mVaUUVIVWkk@wk??@@xmL?lm??wmbVlXlYIWVkK@kkV?L@VWKU@Ubln?a??m@?b@b?nW`@XUJk@UUWK?k@U?K?nn?@xmLUVm@kbVbV?nV@V?b??@KnV?LW?X??V?|Vbl???n?UJWz@??VóUVbkV?a?x@|lVUbVVknWK??k@?w?K?VU????l@zkb@`m_mJ@xX?mbVb?@llV@n?@llbXL?UXalU?l?alVnwnLVKl?VbX@@I?V@blJ@bVL@VVVUXè¤?VnkV?Xmlbn???VKk???@UmaV?@±XUlI?xlV?@VaXˉlUVVU?VJn?V@°°n?°?Vx??°|?b2|lJ@U@aUK@kUm@_m±VIXal@?Kl@?bV?@K?K@k?m@UmUUa?K@_UJ?aXU?@Xm?_VmUk@WUk?@kU@a@m@U?aU?UU@al@ny?XXWWwk?ly@ˉn@@bnV@k@mVI???VlUUmlU?JUw?I?bX?VaUal?@K?b@?VKVkXVl@VkUU@ylU?VVaVL"], encodeOffsets: [[116888, 29526]] } }, { type: "Feature", id: "4309", properties: {name: "益阳市", cp: [111.731, 28.3832], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@???xXL@l?V?@??VI?bXKl@nVV@?XV??JlbXalX?W?LVK???UVLl@VV?@?T?@@Wn@lLlK@wnIVJX@VX@lVVUL?VnkVVnKValUXblKnXl`UbVLèU@W@I?KV@@bUV@L?@l?XV?@VXXblWnLVblb@JnL?VUn@llb@??x@TUV@nU`V?mlX?mbUKUVUV@LVVUn??Ub@°UX?@U?VzVxnlV?k?VnlVnaW?@wnIn`@_la@y?k??V??U?L?xl@??XLlmUUVakU@¥?w?blUUa?V?U@?XyVIm???k?Ua?¥?UW?X??KmU@L???a@UmUU?Ualan@VUnK@wm??m?L@V?lXLVVl@VI@WX_?m@a?ˉmKU?kwW¥UK@_UWWLUVkUWL@WUIkV?U@J?wkLUUmJVI@WkXm@VmkKUIU@mmm_@VUV?@??kJ?wUU@K?UWkkW@IWW@?km@klwkWVkkU?Vˉm@kWLU`mIkmkXm@@`@L@xUKWkU@VL@J?UU@mbUKVaˉ?WVnL@`lXUVkU@xW@UbUWVU@U?J@?lnU@m?nèmV?a@bUL?wUb?@@VkxmUU???UV?K@I??U?mk@akm@wmI??kK@b?VWXkm@wULUmm@UVW@Ub??mbkK?Vn?U@Wl?xV?U@UXmWUXmlnbUlˉLmn"], encodeOffsets: [[113378, 28981]] } }, { type: "Feature", id: "4301", properties: {name: "长沙市", cp: [113.0823, 28.2568], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@lVUllXkx@lln@?XX@JlXXl?V@LVV?xlI???@VU@Un`nnV@VJlLUnn@lW@XUJnIVVlK?x@I?VlUVJ@XXKlVVUXKVX@`VLX|lxV?nL?°?an@???bkmVaV@XL@U?KlU@llLXUTJWkUkna?xn??knK@w?@l?@xllUXUJVVUb?n@blV@bn??LnKVa?LVbVV?UX@W¥XKVL?VVklUVy?U?Vè?laUK°wnnübn?V?VL?aVV?@??n@VmnVlIlJna?@Valkn@na@amwm@?UXw?K@aUUVUUaVa?wWK@kU@UaW@kKUU??@k?WˉXWan?@k??mm?@@I@U@KmLkaVU?KkLWVU?k@UVmU@am@kkk¥?U?VUK??maUb@?Ub?I@a?KkkWm?@W?ˉKˉb@VmaULVxUXlVk@UxVJVbUb@xUL?@ULWW?L??mx?VVL@?Vb?KUw?a?2WwX@@W?UWLU@VbkV@aU@@VUnmJ@VUn@V?LUK@U?mUIk@U?m?U@@UW@?J@L?bUmVI@aUmW@@bkXUx@lmLUbm@UbkJ@V@XmlUbkKm@ma@kUaVU@aUK?@mImJUIkV?U?VUakbWwka@UWKkLUamKUXm`?_U???ULmaU@@lUV@X"], encodeOffsets: [[114582, 28694]] } }, { type: "Feature", id: "4302", properties: {name: "株洲市", cp: [113.5327, 27.0319], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@X??Unw???KXXVK?@VK@wVaUaUIVwl@kUVWUwVKnb@U°a°LX??@Xnll?L@b?JVa@?Vanb??VL?U?V@al@@UVˉ??@Ummk??w@ˉ?yVwnUVVVUk?mWV?nKVU?a@WXkVKn@lUVU?VVVXIlV°VnI@VlKnV@?mwVm@LXKWkU¥?wWw??@k@m?X@KXˉV@VUVa@VnKWk??V@VUkm@aWa@wkUWwkmV£V?XUVL@mVIXaò@nW@a?U?@@am?@aUU?Um?XmWUk@??n?UW@_maVm?wU?kamaUL@a?w?W@akI@U?xUm@kmKUk?lU?@b?zV?m?ˉxUVU@?XVxm`kèlxXVW?@|kVUn@x?x?KUw?KVXUJWnX?mVUxWL?|X?m?mK?bmUUwW@UV@?k@??VLn?lb?Lm`@|VVkX@`WIU??xVnlb?WVbXIV?lI@l?|?@UKmbk?W@UbUVU??l@n@VmLXb@JWbUnkbVxUJUxWXXlWL@V@V@XXJWx?zUVVVVKnXW`@bkIUl??nLVJUbUIWVXlWV@XklVbnn@xl?"], encodeOffsets: [[115774, 28587]] } }, { type: "Feature", id: "4308", properties: {name: "张家界市", cp: [110.5115, 29.328], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@@InWVw°w??@??@?blU?KlUlV?U?@VUUUlW@a?UlUlLT@@aVKXwlK@UX@@Ulwk?VkUm@m?@??V?@akwVaUk?UUlULˉw??@UUm?@Uk?K?l?w±UULV?n@l_XyWw?@V?UUmJUXU@@mm?U@kxW@UaUIWbU@@mU@Ux?nUbmKk?WJkUV??al?@aUkUx?lW_@WUIU@?bkKWU?JVnUb?bWb?lU@nl??@XnVmV@n?mWV@LXl@X?JXVmzkJUXm??KULm°Vb@xnVmnU?k@???V?nnlUb@nm?m@????Vl@X??mnm?2?mL@x?K@LUl@nUL?x@V@VXVWbXX?l?@nLlm@bVK?X?W?L°bnU?@VaVU?@?m??Vw?JnwVK°zn@V?Vb?a?@??"], encodeOffsets: [[113288, 30471]] } }, { type: "Feature", id: "4313", properties: {name: "娄底市", cp: [111.6431, 27.7185], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@lL??nJ@xln@bnlV???@J?LVU??V?nVlw@U?@Va?xVK@a?bnUm?n?V@km@??I@VUVVXVaX@@wlVVUkW@_mKXU°?UbVLnaV@?V@IUKV@XlVL@w@K@_n@lWlnnJV_XK@l°n?U@WVU@kV@nbVK??V?l?@?nLl??LXU@?lmkw@nW@UKVaˉIV?n@@aVUUKl@nXVKVn2a??XblKnLlmVI@KUU@akLUaVa?UXm@a??@wVUVKnLnWlXl?n@@U@anUVm@U?Inm@IUK@UmKVmU_kVUwm@@VmL?K@V?L?aUaVUUUmK?¥ULk??VWaXwWa@UXImWUaULUUWKk@WnXbW??VWnk@UV@bU@@b?J@b?V@Xk?mb?UU`VbkaWz?@klU@?b@V?wUL@bV@U`ULVL@VUK@Xm@XWWIUbUxm@@lkk?w?V??W@ˉ???UJ@x?I?x?@@VULmKUnUxmKULUUm@@?UL?U?JkIWJ@b@L?JU?W?kJWnUV@nn?ü_nJ?xU@Vb?nUxl?kb@l?@"], encodeOffsets: [[113682, 28699]] } }, { type: "Feature", id: "4303", properties: {name: "湘潭市", cp: [112.5439, 27.7075], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?`n_VWnLVblKXL@VlbXxlaVb?U?VlUVJnInJ?@VL@bUVVb@lnbn@lLVank@W@UlIVan@VanK@kVwlW@aX@Vn@bUJVn?a@K?IX@@VV@n?Vèl@VJ?n@VVL?K@UVm@UnIVm@UV@@blUUaV@XK?V@XW@Xx?±?bVx?LUa@?UKW?k?@wmmUalk@WXUWkXUVJVaUImK??VklJ@aX_mWULUUVU?yXwWI@W@U@UXKWkXWVwU@±_U?YKUa?LVbkJk??WmXk@UVV?mIUV?J@UU@UamLmwUVU@mn?J@VUnmV@b@Vm@k?kWmXmKULUV@x??@bWn?VUbVblK@bVV@LUJknmKkLWa??±bUmULmWk@VLUV@bm@U?°JUbVLX@@mlxkn@?WV?Kk?mK@?k?"], encodeOffsets: [[114683, 28576]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/jiang_su_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "3209", properties: {name: "盐城市", cp: [120.2234, 33.5577], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?n@?°āT°@|ULWKkx@bkLWb@lUlVXXJVb?nUKmxXV@bm@@X???LT?ü|XlVn??mzVJ@n@?2T?k??Ta???wn?üó?éV?n??ī????@ō@KTUlU@?kkl?è???l?X?@U???aU@U_?W@n?@kaUL@VW@kKmkUV@bkbWW@bkzma?@?JWI@KUKUL?@U|?`@XUJ?U@KmX?wˉKXkmy@aUIWJXXmV@KˉUU@@bVL@¤VLXbV@@JVXVK@??JVn@bkKmakVVXUVVVlI@`U@nzVV?b@¤n@@UlKXLVV?I@V@nV@V?@èUx@?óVō??k?Wó@mU@bk@Ywk@WbXxm@@J@zV@kV?bV?nLWVUX?WUXU?WLU??@Wl°z@VkxU@UVWI?xWJkb???nW@@bUl"], encodeOffsets: [[122344, 34504]] } }, { type: "Feature", id: "3203", properties: {name: "徐州市", cp: [117.5208, 34.3268], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@XKVX@WnIVx@K°Lnll@@I°K?nVa?U°x2mlx?@VanU@a?k@akmV@@w?@Ua@aUwVwUw@w?@UK@£ka?lóI?Vk?±@@kUKmVkIkxW@UaˉUUm@UVI@WVI?JV?@?@Um@Uana?U@m?I@J@XV@XaV?lkX?VaUUWLUyVIXmWak@?XkJók?JUL@KWkk@ULU@Wa?lUIkJmI?mk?VbV?@lV°kXUKWKULU?mb@VUlVn?b@V?V@IVKUUmU@ak@@bmV@xkl?U?U@U?KmV@n?JVbkX?KUamLUJˉUUVmI?bVV?Ll`@L?LU`m@kXUVU@V?lxUK@xkIWbUK?x@?V?kVVn?bˉ@@U?@?xk?mbkL?K?b?@@XnJ@LmVkl?@@X?lU??Vkx?akVVb@bVnUbU@@x?VU?Vb@???nI?`?XVV?J?_?K@xlU2Klk?U?@VaV?V?èm@kVUVmnamUUaV?XIVJ?@??@¥nkVLn??@@XVK@VUX@JVUV@UnVJVLUJVLUVl?nI?b?KnU@m°?VanI@anV?KVL?an?lK?bl??KTk@|@¤@?VKnLVK?L?KVzlW?LX@VmV@VbnU°@Ualk???WXLVU?KW?kUUW??@£Wa"], encodeOffsets: [[121005, 35213]] } }, { type: "Feature", id: "3206", properties: {name: "南通市", cp: [121.1023, 32.1625], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@VJ@bnzWl°L?xnW@L?VVI@W?_V¥?@VKVL@LXJ?I?@nbly@aXXla@aVUnllLX@@UVKlb?@@m?XV`V@?b??lk?????ˉ?wn?V?V??U?U????l?X?V?@±ōL??ˉl?bYTˉxk@?k?é?nˉ@?????@kVVlUb?L@xUL??óLU?l¤@nkVV°VLkxVb@l?aUXUKW?klVX@¤U??Ukb"], encodeOffsets: [[123087, 33385]] } }, { type: "Feature", id: "3208", properties: {name: "淮安市", cp: [118.927, 33.4039], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?n?U?ò?è??l|n?V?kbm??X@xVlVL@xUb@bUJVnUx????lKVLèx?m?zXV@lW@XV?b@bè?Vxnb??VIXa°L?a?VVaXUlK@aXI??VlXKVUlIXalK@alwXLVK@¥Yˉˉ?@??mVk@aX@?m?īlaXI?wXJVUV@lw@Uˉy?b?U?a?U?U?aUKVkna?m@kUm@w?IV±nL?w??nUUk??@?YUˉJYIˉ|Ul@b?@@VVL@l@L?L?m?L@b?@UaVaUWmLUKV1?K?LWKX¥WI@mXk@UmaUVUU@VmL@W?bkIUW?UmVóIkbmm?@UbVLUxmJkU@bkJWbnXU`Wz?KUTèlVb?Lmx@?kè@?"], encodeOffsets: [[121062, 33975]] } }, { type: "Feature", id: "3205", properties: {name: "苏州市", cp: [120.6519, 31.3989], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?è?VnX°¤2?lx?èü@2x@J@b@X?`nIU??UUV@bl@VVnL@L@x?J@X@blJXnW@@`XbW?kV?@UbVx?XUxkV@LóxVbUVW?2?VJ?klU?@????°@?m?ī°?è??¥ULUU±a@bU@ˉ??U@KnImUVWUk?mXUVU@?lIVaUU?VWKUbUkWKU¥n£WakJUkUL?KˉL?Kk?VIn@VaU?VUU??UkVk@?U@amUkJ?@UUlwX¥W@@UkVmk@JUakL?@kkˉYmJUn@nmVXlmbVVkn@?UJ@?±WUxV?ˉaˉKōb???xUx??U?UlWL"], encodeOffsets: [[122794, 31917]] } }, { type: "Feature", id: "3213", properties: {name: "宿迁市", cp: [118.5535, 33.7775], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@XbWnUJVzXKVVUbW?klU?WbU@@W@I?J@n?VmbVbn@@V@?U??IUJ@XUJ@VVn°VVbX@lwlJnUVL@l2@l?èU?J?klb@¤VL?@@xVxUxVx@bVb?@@xU@ln?mnX?mXLVmV@X@lxVnVJ?L?LXa?x@b?@@KVL@bn@@m@?@alLUUVaU¥nIV±?I@mXI@aWWXU@LlUXWW_XWmaUw??@a?aWUX@@kWU?y?n?wUKkL????VwUmVI@aVa@wUKUk@w?Wn?laU?m?k¥????ó??V?mmzkVmm@a@Ió?k@@LWU@`??WbXLWlkImJVn@`nXVbX?mL@Vn@?l@nUVl°Xx°U@LV?@z°?@|UV@Xn@VJmV"], encodeOffsets: [[121005, 34560]] } }, { type: "Feature", id: "3207", properties: {name: "连云港市", cp: [119.1248, 34.552], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@@?lzXxm?V??@@|?@l`XnlK?XXm?KnLla?b?@?xmbm@kL@V@Vl@@VUX?JX?mb?@@?°?@èèzlW°X?Jl?è`lInb?WV_@m??@UU?n??w°??mnaV?V?Vm???w±Y@?@mUIny??UmWk?¥Y??K??@Wn@@aWUnwVL?mUaWIUWVk@kkJUVWLUk??WJ@bkLWVUb?U?bˉKWbUJ??WXX`WXkV@KWVXX@bWJ@n?JU2mJV|UbVVkK@b@?@nm@@aUK@L?@@a?wWb?KóKUIUmkwW@U@UnWK?nmW?n@b?l@bmVUb?@kw±nˉw?VUb"], encodeOffsets: [[121253, 35264]] } }, { type: "Feature", id: "3210", properties: {name: "扬州市", cp: [119.4653, 32.8162], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@VUXblVVV?b@xV@kz?V@l?wVLUbVV@VU@VbUb?l?b@nk?°ITV@???VlmV?è?xmKU2?J@xVn@l?nmbUlVL?b?V?V?b?V?aXk?@V?XKV?VW?XVWXUmKU??aWaU@?¥@£XW?UU?V@@ynam_VWkUVUna@??V@mnkWmXkWU?W@k?@@akkl?lWUI@UnKl¥?I@V?Vma@a@I@U@a@anK@UmK@?VUnJl?kI@aVwka@mVIUW@UWL@W?bmI??ULka?UW?UxkLUKWlXL@V?Im??V?U?m?L?UólˉI±l@òUbVbUVVXUJUnVV@lnbl@"], encodeOffsets: [[121928, 33244]] } }, { type: "Feature", id: "3201", properties: {name: "南京市", cp: [118.8062, 31.9208], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@k@ma@kUUVmVIUWVUUaVa@?2k°J?k@WmkˉKmXˉaUakK??WU?@XU?LXaV@@mUaV?UUl@VmkaUXm@?WUUna°Il???mV?m?IUW??@Uk@@aV@VVX@?V?I°?nm?U@?VKVan@m?UaU@U_@WlIUa?aVaUala@ˉn@??kaUkUUWKU@mwkUUmmL@K?@?LmUUV?K?V?ImU?J???VkVVL?èVLVU@W?L?V??@nVüULV?UL@bW@XbWbkJ?UUVUxVXmVk@W?UUkVmI?V@?nbnVWb?JU?kUUL?a@Jma@XkK@VVL@L@J?LUVU@V??nXl?bm@kbUKmn@lVb@VXXV?UV@b@LVb?xXbl@@lV@U?VV@XVK2VlI?`??UbVbUlVVn@WXn@@VUV@?@KmbVLXò?LkK?V@nX@VVUV@b?nVllb?mnb?IWVXU@`lLlknVnmlLlbUmVInK°nU?U@l@VU@Vn@??@alI?`VIXaVaVa"], encodeOffsets: [[121928, 33244]] } }, { type: "Feature", id: "3212", properties: {name: "泰州市", cp: [120.0586, 32.5525], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@lUU@@y@In@WwXal@Txl@@anV?@?X?l???U@?Vw@?U?U@@m@U?JUUWKkL@Vm@@£?aUUmyV@@_kJUUVUUWlUnblL@aUm?I@?ULUW@IU@WaUK@£UK@aV@°V@LnUWWXIla?VV?@£UWlkX?VLVW?b@kUalwUKUˉlU@mk£V??Kè?VK@w?KVaUk?lUI±??¥YU????ˉ?m|????@XXK@VVXUJ@nlbUx@blJk?mIUV@?nL@VmL@b@b@V@J@bnb?U@U?Jk|mL@VVJkXk?ll@b?@@l?XXVWlXnml@n?U@?mbUVlVUXn`mb@zU@V??VWX@¤?|V@Xb"], encodeOffsets: [[122592, 34015]] } }, { type: "Feature", id: "3202", properties: {name: "无锡市", cp: [120.3442, 31.5527], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@nL?òlxUVkL?am@??kVWUULUxVVVbUV@bVLU?nn??TV?|X?VUUa?w@KlUVw?WUwVa?@lUX?Wa@_X@WmkI@a@W?I@w@KmKUUk@@aVU?VV?mJ?_@W@a@I±w?@??kw±?ˉ£mW?Uó??KˉVkUWK@XkVˉUWa?b?mUa?UUb?lln@b@x?bX?W?X`@?VxUblL@bn@Vb@`m@XbWnn@l¤?n@xnVlU??VL?W?kV@VbTJ?_n?l@nKVU@aU?U?@mVk°WVLUVˉbV?X??bXlVn@VmL@x?V@bl???@?nW@X@VVJ@2VJVU"], encodeOffsets: [[123064, 32513]] } }, { type: "Feature", id: "3204", properties: {name: "常州市", cp: [119.4543, 31.5582], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@?L??nxUbVV?L@xnnW?nn@VVXn@?y?Imx??°??L?a?¥n@Vk?KVw?W@nX?VJ@b?@UVn??@UnUV@L?b@`VLklVTn??@VaXLl?èJ??mmV?UK@aVUUaUUVwVKXVlU??n@?blKVUkw??mKUVUI@±UI@U@WmX@???k?@a?U@wnK@UUmWk?aW?U?°aVUUKˉXUl@nV?V?@bUVmLk@m??`YIUaU@?l?XUK??kVmU@w?mk£m@XmWan@@_Uam@@akKVaUw@?W_X?W??a@w@akmm@mL@U?JmnUK?@@XnJWLkKUb@?Vxk?W??L?aWVUImVULUK@L@lkLVVVllb??m@@°kbVbUb?bVbkJ@XV`V@Vbn?"], encodeOffsets: [[122097, 32389]] } }, { type: "Feature", id: "3211", properties: {name: "镇江市", cp: [119.4763, 31.9702], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?V?K?n?V?Un??J@UWKXkVLlKVwX??VlbVK??nJ?a????n¥°ó?Ik?WKUb?@m?UYlkUK@_?a@KVUVm?@m?VU?@@aUIW?@m?XUx?LUlm@?|?b?Kˉ???nw?J?zm@UW@UmmX?mm@w?KUUVamw???Km@UbUL@??Vmnˉ??J?UW@UUU@@bl@@V??VX?J?nnU??k?ˉJmbVV?Xn@VWlbUnk@VVU?Vb@nU@Wb?KWV?@XV??lLVb°bnW°Lnl@X"], encodeOffsets: [[122097, 32997]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/jiang_xi_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "3607", properties: {name: "赣州市", cp: [115.2795, 25.8124], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@?`l@èbln?@?KVLl@?V@bè?ln?KXkVlVL@?lJnb?|VKVVnX?W@w°@VU?mln?UV`?U?bVUV@?xnKVI°KXKVkVL@al@Xa?LVlULWV?VVL@b?x@VXVmb@x@V??VV@nn¤??lb°b°KXXWbX`lbXx?z@x?`VIVUnK?L?x?WXLVKVbVLVU@wnW°b?@nalX??mXVJn@U2mKkVl?U@@xln?aVmlKn?@JVLl?nV??l@XX?èVlUX@xVLXV?b°W@wnUWmXk@K?LVwUmUkUKUw@wVaVK@k??@WnkUKW?kwlmXL@KVUlLVKXmWU?L@a?L@m?alaVk@a?a?a??nX?@VVUblb?Jn???Xa?V?wn£?K@UWmUk@?UaWI?V@b?JW?@K?mmU@aUUUkmKk?VKlUU?nKVU?lVaV£?¥WUUK@UkUUw@?m@mIk??UUW?L?Kˉ?Uw°ˉ@wUKUb?Km?@kkKUL@UUKV¥U@manw@k@U@Wm@@?U@Wwkm?wWaUU@UUmVˉkw?@@km?kKkUW@UK@?V@XWWkXa@Ul@Va@KVaUUU@?aXwla@UkVWaXk@K@?lmkUmV@Vmbk@??XI?¥VUk?VUVU@anKVU?KUalU@wX@??@a@K?@Yw?L@?Un?lUIkJmn@??bVV?b@VmnkL?VˉU@?±l?IWm?@kaUI@a?U@K@KUIkbWb?JUIUy?Xˉ?UbU@méUUmUk?WK?xWIkJm@V¥U_UJUwmVk??UU@???@kn?wm@Um?kWJkL@n@VW@@?U@knm@kUml@x?x?@@XUJlb?@VX?JVxn@lbV?@lULnV@Vl?nV@bWV@bXL@lVLVb?V@blLn@Vl?K@xln@bX@la?LVbnKUVVb?KlXVVkx?V@nnVUb?lV@@z?°WWkb?Ik?WL@LUJ@bUI@b?`@UmI@mkKˉXW??mUVˉ@UUVUUam@@VULWU?J?Im`?IUJ???KUkW@Uxn?WbnnmlXbmIUVmV@Vnb@V?LUKWLnòVVV@V?UL@?kJUV@b?è@???V°??@XVV@l@xUz"], encodeOffsets: [[116753, 26596]] } }, { type: "Feature", id: "3608", properties: {name: "吉安市", cp: [114.884, 26.9659], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@lxnb@V@bV@ln@?n???lIn?@blVXK?nk?@VUKWL@b?L@`UXU`?@V|XL?@lJ?|@?nV@l°nn@?mVXna?@nb?K?n@l?IV??@VanJ@_lKVVn??L@L?K@Vn@Vb?UVanKlLnbnJVb?nWVnVVanI@?Vb@L?bVKVanXVbVJVU@aXLll?b?l??XxVLVK@Xn@?xnVVVmb@LnVVKVXV@@mnaVXUVnV?K@_UaUm?wnKV_?anKVL???K@?ˉYU@??U?@?kWlUn?lknK?VnaUkma@?UIUwl??w@?VwV@n???n@èXlKVmna@kVw@anm?@n_WWk@??mUk?UK@Im?kLUn?bkm@wV@k?lUnLV±m@UInW??kWmb?@ˉamX@xUVUKUaULWK?X?w?KmLUVUJ?_@w?yWwkaW_XaWWˉLˉaka??m£@mUU??@U@wnaWU@U?w@aUK?UXUVKUk?KWbk@@bUKUlWLˉLUJmL?wU@UV?a?VU_?Vkm?nUVˉ@@x?XmWUUUL?¥makI@?UKUkWl?Lkm??@a?Uk@UK?L?@km?ak@?_VlkL@`lbn?lLVanLnbmV?ln@??kJlbknmKUbYmmwULUK@bkLWKULUUma@Kk@UV@L@llbVz?xUxnl@bVLm???@IVJX?Vl?LV`@bn2@J?@?V@Xmb?@WbUJ@bm@@LU?U??|lV@xXb@blnUV"], encodeOffsets: [[116652, 27608]] } }, { type: "Feature", id: "3611", properties: {name: "上饶市", cp: [117.8613, 28.7292], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@??@?V????I°`n?m¤?2@bVJUVVXUl@Vmb@xV@XbmVV?@lkLmbn`VbnU?@Va?UnbVllUXV?a@w°?VW@_VW?L??nVlb?LVbnl?K?nVK@IUW@_@am@????UólK@U@WU@VwU@UI@aUU?aX??@kwmJV?@yX?@k?an???@mkwVmmI@aUU@aUUW@k?VkV@@anK???XVWnIVUl`@_?W@wlU?V@UWKnU?bn?°InJl?UV@VnI?b?Wn@VklL@l@Vn2m@U`kI@bWJ??nV@°VXnJm?XVmx@VVL@bkLmWULUmU@?bW?Xb@llnX@?xkxVV?nVV@¤nL?nVxnJVXX@???bn`VI?b?@?blmlLnaV@?blWXnlUnbl@???KVanUVmm_XK@kWWna?U@UnaWUXa??XamUkKmXUW?LXˉWakKm?nUWwXa@KW_?aXWW_@WnIV?l@XU?LnWVknK@ImyUU?bXK??@W@I?Un?VYlkVK@mUIVwkUVaUm@aVIVyXI?aèwm?mk@Unan?VUm??aó?lw?W@kkUVmUK@?WK?L?UmWULkamK?Lk@Wa@wk@UU@?U@mbUIWV?KUXWmkUmV?m?U@LkakK?w@w@U?ˉ???UUnˉl@bmn@xkJWxkL@VkI@m?kmJUI@V@b@VVxnbWlkèkV?L?bkKmV?L@V@2nxW?kLUL@xlKVx?bX?mVn?WJ@T?°@n?xUKUw±??`UImVmnU@kalm@akw?U@UUJmxU@@U?@kU@Um@@Kn???Vm@k?KmkU@@WUnkLWxkVUwmKmLkU?bmKUbV?@xUnkJ@n±???UxVXU?WJ@LUb?lUnm@?W@nknUJUVm@kXllknVb?K?VVb??V?@?Ul"], encodeOffsets: [[119194, 29751]] } }, { type: "Feature", id: "3604", properties: {name: "九江市", cp: [115.4224, 29.3774], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@WUkVUkma?VUb?@mVUam_nalK@kU?nUWaU@@wna@UVkUWVUUI@a?±n£m?ˉ_?J??U?@????|Ul@?UV?Km?mL?lm@?1m`Ukˉ@@UVKˉ?@UUK@amkmKkVV?Ua@UkU?K??Ua?L@VVXUJ?@?n?@???WUb?nVbˉV@L?lYI?J?kY?m@Ua?WUU@UmUXmmwV?UU?KWUX±m?Uam@kW?zUaVm?w@a?LmK?X??U?WKkL@WˉI?wVw?lkU?J@Um@?èW??KUxWk?aUU@KkLVl@?UKUX±KUb@nVVUbUVmaUlUL@??aUL@?@nUlWzX`@?V@lx2?@Vlb@b?VT@°nl@UxVL@lUbVV@n2xVUVmnUTb?a?J@I?V°xnbl@nb?@VwnK@VnXlK°xnUlVX?V@Vl@L@lk@W_XK@K?kWxUL@J?nVx@aX@VVUa?IXlmL@bVVX@VbnK?a2XVW?k°a?@UnV¤nbmLmW@?XbmJUbVL?aTK?L@K@U@aVKlbV@nXlJ?xV@Vn??Vè??TK?b???mV@????2x?I??V@T|??TVl?VTnxln°J?k?LXWVUVUVwnJVI@yn@lXlaXmWI@w??ma@UmK@akKkXmW@_kaWakKW?k@@K@I?W?kUa??"], encodeOffsets: [[119487, 30319]] } }, { type: "Feature", id: "3610", properties: {name: "抚州市", cp: [116.4441, 27.4933], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@°V°Unü@n@lnLlV@b?V°L?lnLllVzVVXlV?V@@L@xX@WlX?m@UV?L@V@n?°?kVmVUnKlaXxVb?nlU@lVVnaVI@aX@V??J?@V?@b?b@?Vb??@X@lUL@?@VlIVm@wU?VanL?alVnKnLVxlUXwlKVm@k@Una@mWIXKWU?V?k@a@UVWn@@kl@@W?XlW@_Um@UVK@a?LnalInWV@@xnI@¥?K???m@?kKm?nk@mlI?¤laXbVblknV@U?KXVlUXa?@@Unw@±mU@ak_±a@?UJUI?V?KW_Xa@aWU???K@mmUVa@IXa@UWm?annlmXˉWKXwVUVw??@?XUlK@klJXa@k??kmm@Uw?w@ˉ?Wˉ?kw@WmbUL?aUUU@mVUU?WmkUb?KmkkK@a?kU?ˉ¥U?l??m@akU@m??@KVIVV@KUkU?VUka?UWb??m??IkaVaUU?@mW???b?b@bUlkb?b@n?K@b?KXVWnULkKUV@LWKknlxX?VLml@X??@lULUb@xVxVLVlVnUx?K@LWlXnmV@xˉX?aWUUK@wVWUk??m`?@mn@bUx@lmbUnkL?Wm@??m?U@Ux@??xk?VxVJ@?nbVlmb?UmLklm?kVlX@?V???V@°T"], encodeOffsets: [[118508, 28396]] } }, { type: "Feature", id: "3609", properties: {name: "宜春市", cp: [115.0159, 28.3228], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@@VlbnK@b@J?LlUnx±āXx?W?X@l??@V?@@blJ@nX@?xUbVVUbVV@b?VmnmJ??@bmbm@klUb?Lmb??@lVb@xUX@bVVVbV¤@LVV?bXlVw?LX?ü?n@@V?IlV?kUx?x°J@XlKXLV????WnL?K@bèxUnVb?ylXn@Vbn?W2XV?LVVU?nxWnnV@VVV?XVbn@T??l?ITJ?k@K°UUa?mVa@UUU??@wV@V?kkUKUVW£U@UmW@@aXkVUnVlKVV?UUkVmU?@kWaUanU?VVamIX¥W@@aUaU?VW@_mW@UnIVVn@VbVm@bVL@anKVUk?WK?UXV?Ikx?@na?bVK?b@nVJ?_V?@?Vw??VUVVXUlUUaV@X@Vbla?bnKlkVaXa?ˉ@m@U?KVUn@W?XkW@@w@KU@U?WkUUUykkmK?kˉK?U@akUmK@k@mm?ˉVˉU@??L??UKmL?bU`mL?xVnVb@`?LmUVUUWmb@nU@UWULmU@KnaUUmU?wmJˉIUJWIkVkaWVUIUlWaUIUVkKmbUI?òlVUnn?@VlLUJ@bUXˉ@?aWVUKUX?KUbm@Uw?KWa@a@VkUWn?@Uak@mbX?WJXbm@mL?aWVk@?w?L@WmanU@knwWmkaWL?KWUXa?U@¥l??UVVVbnw?¥nKV???@aUk@a@U?J@k?m?Lma?@mbUW?nm@UL?o@LXnmxU?m@UbkbW@@akLmWk@UXmJmUkV@VUXVlULmKUxkL@lmXnJ@X?l°Vnb@bU@Wb?KUX@VmKUX"], encodeOffsets: [[116652, 28666]] } }, { type: "Feature", id: "3601", properties: {name: "南昌市", cp: [116.0046, 28.6633], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?X???@?m?@VIUW@U?KVb???LlV@VVbU?lUnLnl@bVL@V°?UL@V°@Vln_?on@?knKn??LVU@?Vk?¥Vk@?U???Ua?U?LUalmkklWn@VUVIlm@m?Xn@Vm?kVa@KXIV?UWVw??2?@m@U@?VK@k@W??Ua@??a@aU??@?IU?W@@bUJmbUU@kkV?mUaWwkbmLUVUn?lWbUbklmL?akbUaW@U@VbkVWVUUUV??Ux@?U??`UI@m?aUL?amb?@lw?JWU?VXLl?UVmL@bUK@aUnUam@UUmJ@VnX@`UXV?Vb@bX@W|nJUb?UmVVbXb@lV?UnVl?VUUkLmUUVWl@bX@VnV@X¤VUVLllU?U@@x??VV@V"], encodeOffsets: [[118249, 29700]] } }, { type: "Feature", id: "3602", properties: {name: "景德镇市", cp: [117.334, 29.3225], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@VVX@Vbmz?xUlU@mbmL@V2xVbUVVblbX@?V?kVyk?ValKVI@bn@n`l?VWnX@l?L@?WKn?VIVa@ˉnK@alIXJVIVWUw??n@nU??nK@alI@a@anKm_?a??W@UWmIUw?mmK@£UU?mUUlw?wW@km@kWaX??aV@VnVKnXlK@aUK@UnwWUn?mIUW@ˉmU??XI@alJV_n@m±@U@kkKUlm@?X?amJ@UVUk?mIˉJm??amVXL@V?UkV@x?X@`k_UVmJUX?W??mL@bU@Ull?X@VV@bVV@bnJUnlx@n??m??b@lW?@zU?nIlx?@W??bVV@bVJV@UxV@@X@VkLV??ò??n@@b@`VX@J"], encodeOffsets: [[119903, 30409]] } }, { type: "Feature", id: "3603", properties: {name: "萍乡市", cp: [113.9282, 27.4823], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@VWnL@UVW?LXaV@@amaˉU?k@WmInW@klKVwnLVKUkVW@UlUnVnIVWl@nXlK@bX@laVan@V?nwWm@Kè1VKˉm@kmU@??¥kI?@WKU¥?@V_VW@_?K@aXKVL@Ul??mWLkU@am?kJ??m?@?kmU@@a@UmakwU@??Xl?@VXk`UIW?kWWX@???@l?xV|XlW@Ubn?@?mUkL@UmJˉUkUWVUa?U?lm@UXWl?nUJ@LmLU?nXll@bUVUUmVUn??@|?xl?nn@V?èU°kbV?VxllnL@VnVVUl@V??anL"], encodeOffsets: [[116652, 28666]] } }, { type: "Feature", id: "3606", properties: {name: "鹰潭市", cp: [117.0813, 28.2349], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@@XV@nl?L@lUn??m?@Ln@@VlV?@@VV@nwVI@V?Vlx@bknlbV@nmnUVJ?_2?VxVL?w@m?ˉ@YXIm?nUW??aUwkL@wVKlKX?mw@±@U?KnUlL?a?KlUl?XkmaUw@U@a@U???UkwUJ@zWJ?w?@WbkVWU?L@VmUklUaWakb?£kJ@nmln?lL@??n???L@|mJ@wU@mXkJmb?K@bUL@VVn@`kX?W@Xk@@lm@UX@V@b?lüUXVWLXJ@nmb@V@l"], encodeOffsets: [[119599, 29025]] } }, { type: "Feature", id: "3605", properties: {name: "新余市", cp: [114.95, 27.8174], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@m@@WULUKWw??ók?akkWK@bUVUIUamWUbUL?a@KUa@?mJUbmUXU?mUamImakKmLUb?VUam@@U?L@K?Km?UUkL@`mIUb?@U?@V@bVl@b??U?mL?|mxUaUU?Vk?@|?VWbXV?LXKlbXnmx@lmVnb@X?K?xl@XU?bnKn@WaXIW?nal@Vb?@XmlV@U@bXb?LVxn@Va?LVWVLXU?b°@VW@aVIkK@Um?VmkU??VJnalLVUVJXbVkVJXUlblUXJVI°JnI"], encodeOffsets: [[118182, 28542]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/ji_lin_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "2224", properties: {name: "延边朝鲜族自治州", cp: [129.397, 43.2587], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@Wx??m?@?ó¤V?X@@xü???2xWx?V?V@?XV?????bW?XllaTU°??@???L?YWan?V¥??n?°¥??X¥°ˉ@w°w@?°?k£°mè??mèb???|?K°z@?kxl|UbU¤???klV?K?T?@@b?V@nVVUlT|lUll?VlU°?UˉV?°w?bXxl@V?2??@n????ó°?kmVk2??w@wV?T?T@@??????ˉ?@???bnb°mTˉ°V°?èJm?X¥mam?U???U?laUˉ??@w?Kk?l±n@@w?kYVUUl±ˉIˉb?a?l?@??kLmakb?@???é°?Tb°??ék??Lm??wX??a?b@bVl?bVb?òVbUb?UUanw?akbV?UV?ak?ˉ?U??LmxV°Uxn??X@J?Xkl?bkb?a?b?WU??@?k?WUUˉ@@klm?@@???@a?wW?X?lKkI@?WbUaVIUanU??@???ˉK??mUnWUwm@?£?èkUmbUmm@@nkJUalwk@@nmWUan_óaWmnw±K?I?wl@Um?I@an@@mlU?mV_?KUk?@U`@_?KU?mU?@Uˉ?mmbˉ@kb?ImVˉ??Lkb?K???@?n?JóaY?kb@??x?ò?ll??@??2V????UVV?U??°X?óxlVˉ?lV@b?V@n?x?@?¤@???nxV?kn?J?n?KX°?|Ul?nVbUb?VnTWVX|ll?b@l°?VJ?ònLVb?bX?"], encodeOffsets: [[131086, 44798]] } }, { type: "Feature", id: "2202", properties: {name: "吉林市", cp: [126.8372, 43.6047], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?l?z?aèV°??K@?m??LWl?n??VxUV?è@?Y?Uèn??L?a??2VmākV@???nU@b?V@b?@nl°UVnTa?J@b???V?|mlk??bmVXxˉ@Vxm?nb???bèK?V@bèL?w?y?n?mnbü@nn?V?x@n2K???J@k?al@nxTU?L?±VwkwˉLWWU???k??īVw?w??°y??V?°wèVlk??@wW@U??£@?n???XwW??aUamKó?UIˉ?@k?akkW¥XUmY?UVaUa?mVk?¥Wˉ?L?m?IlmU?mw?ō@??£kJU??k@??am?ˉyˉUVw?a@w?x?|?K??ˉX°?ˉ|U°?WUL?a±bˉ@Uk?Wm?V???kIUló??1?`óI?lX?W?Xxmb?U?LY??b?@?xˉb?è?l@x??ˉz?aY¤@n?m?VWb2bmnˉJˉò@n??"], encodeOffsets: [[128701, 44303]] } }, { type: "Feature", id: "2208", properties: {name: "白城市", cp: [123.0029, 45.2637], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@ó???@WlwUa?w???é?am??K??ō?@I????V???????YU???wóóY@???Lˉll2@??V@|m??b@nmlU2Vx?lUn?@VbnW?b?bkò???n@èlnl?Uò??°L?x@??b@ò??U??x???ènLVx?ò?b?J±a@_?J?n??Vb?Kl?nUü?@?U??xXV?n?m?V???JTˉV??w??Xw°xWL?x?KV|?U?wVY?óTT?????Tk?V??xT?U?lVn|T??a°w?b°@?b?w?l?L2`?z°@V@@?nJVnl@@¥nUmmn??@mwnmmUnk@mlwUa?Ln??wnˉ°an?WakI???mXw?amUXUlJXa?UUklKUknmTV@??K@?VWT@VkUwV?"], encodeOffsets: [[127350, 46553]] } }, { type: "Feature", id: "2207", properties: {name: "松原市", cp: [124.0906, 44.7198], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@???è?òU?ó???@J?è???Ln??bèêü??xVbkx@X?????kT`???W?b@n°a?b?K?nVw°`?_X`W??|???IkmV??akw?K?x°UTb?U@l??l@°|?VW??aTb?xTI@mVI@?V?k??UWK?¥nL?a@??@è??@°??@nU@KTalkUwVékUWw??kU?Vkk?Jkˉ@?ók?Vˉ??I@b??ˉ@???wˉnmm?Lˉw?V?UTy@Uów?Lkmm@@Uóxkk??mLˉwVwkWWX?m?L?m@k?±V_???????ˉ@?Va??V??a?V??lm?w?UóY?£?Jkb?a?LW@nxY¤kz?yˉX?m@V???Xˉ?ˉoYnU?nLVlU?mV"], encodeOffsets: [[126068, 45580]] } }, { type: "Feature", id: "2201", properties: {name: "长春市", cp: [125.8154, 44.2584], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?U°x?Knn°m?x??°@?ó@aèJ°??U?l@?l°?Ill?UlV??XxlVUêVxkllnèUVll@Vx2IT¤VUlVnI?lT?lw?_???bVa?LX?T?@K?ˉ@w?a??n¥?ˉW?XyWˉXw?Umm?@ma?nóm?z?x?K@a?U?L?a??man?Uw°@WwnU?al?nk?¥?U??@aóIYbUmˉVmk?@@a?U@amV??@?lUn?±U???bóKm?V?Tī@???VUUw???mXk?Kn?@??Lˉ??U?b?yókōè@b?n@lYX@xˉ?@??U??V_maXm@aó??JWxnX@?VVn?VnUJ@nō???V?kx?LklYw@x?x@zV`?bmx?U±xU?nnm?kn???U?bU???Ub@??°ü?ó???U`?2@l?n?K?nXWlXUx°xnK??ll?w@Vn@lnèK?x@VYz?V"], encodeOffsets: [[128262, 45940]] } }, { type: "Feature", id: "2206", properties: {name: "白山市", cp: [127.2217, 42.0941], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@U?l|kò?°?IlòU¤?z??lJ??U?n??XVl°@2a?bVK?XVˉ°¥ˉ?°W???L?¥?w@x?bUx°V°zn??b@?èlV?lI?@?w@m?U@akU°?kU?wW?èˉV?U?VU????±U???@k?èk???w@?laT??UT£@??Kn??ˉ@W?aUaVUVkkw@aˉ?@ˉ??Y??VXnW@@WkXmK@xkKUb@bW@Uwˉ?mm?b@?WKUbmU?bUaWb?J?IVW@I?l±Lk?mU?bUm?@?nkKWaˉn?@?`Ubma???L@b???@W`?L@nˉ?Xb?@kb@x?L???@V?kL±???mlUIU¥mL@l?x@_la??@U?a?V@kmm?K?£???L??mKUn?KVbm?XVlè?UUbml???¤?Il?ˉb?|?l?@????@x°?l¤?n?a?l@x?b"], encodeOffsets: [[129567, 43262]] } }, { type: "Feature", id: "2205", properties: {name: "通化市", cp: [125.9583, 41.8579], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?lXn?x?°lè°??K?°kXm?@|Vbk??J?nY¤k?VTVVkè?b°y??@w?k??°a?w?@?aT??K?VnaWwX?W??k?J?_?o??Vk??óyV£k??J?ˉl?k¥V??a@w?k?b?mk£ˉ?@w??ó??@?k襰ak??J?£??nkVa?Vk?WUn?Ua?LVmnL???KU??±@??m@aˉU?bmVˉm@_?K??U??a???Wó1?@UanmWak@@wmI@y???@mk?JVa?@Ua?IkJ@n?@Um±kkx?m?Ik??b?m@?°bXn?V@?°èmlT?ˉXVoˉLm?kWW?XLmVVlkn?@@l?nW???Vx?bm?n?m?ˉlYaVè?è@?V??b????°TUV?J??kx?I?x???IV¤?òXxmn"], encodeOffsets: [[128273, 43330]] } }, { type: "Feature", id: "2203", properties: {name: "四平市", cp: [124.541, 43.4894], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?n°W?zlyT£mwX@?K?blaèI?¤?T?V?xn?mmV?2w?Vnw?aU_@y?w@wTxlk?KlwU?è???@mVIUmm?UU@?mWXw?I??@bWnnbU`???V@?°ó@wTW@k?m@a????@m°?°Inm±aXa?U?n@m??U|@???ˉaU£?aU??|?ò?JōU?ókU?@?¥ˉakˉmUVak@@a???aU?m|Y`Xb??@n?`?I?x?TōTml@?Ub?@Wl?_ˉJk??UY??b@n??llUbˉ?±a@???W??J?āˉ?Unó?m¤?x?aVn?x?I@x?V@bm???@lnLmTˉT?xVbˉt"], encodeOffsets: [[126293, 45124]] } }, { type: "Feature", id: "2204", properties: {name: "辽源市", cp: [125.343, 42.7643], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@???V?I???¥V??bV¤°bè?@?V¥??T£l?UUUYl?T£?m?Il?Ua@¥n?lW?ˉ?Lˉ?k??ˉ?wWm?kˉU?VU??bWlXlmn?bUxˉxVVknl?UbV??KUb@??VnbmlnzUo±b??mJUbWènèmò??@?X`WL"], encodeOffsets: [[127879, 44168]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/liao_ning_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "2102", properties: {name: "大连市", cp: [122.2229, 39.4409], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?ITmVk@wXWübnwlLnU?@??nLlbXW@a?wnbl@XL?a?@?¥@LULnJ@xVnmV@VXXV@VJkn@VüKXX?Jlb?xl@?IVbnJVLUbn?lnVw?JVU@?XU?aUUlwn@°?n?VKnV°_VJ?wl@nwlV?IXWlIVVnK@IWmkIVaVU@WèUlmU?@U?WUalkX??@kI??mm?ak?Um??U?V?2?V?@aUU?I?`?@?k?w@?U?mw???@?W???I???bYLkymb?I?w?m?bmbU?ˉü?èk?Vb?xnXV?n??|?b?¤U??xYn?òm?Vè?¤è??b???ā????T??b?VVbX??°2¤"], encodeOffsets: [[124786, 41102]] } }, { type: "Feature", id: "2113", properties: {name: "朝阳市", cp: [120.0696, 41.4899], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@na@UVI@m??W?kaV¥UI@wl@?aèb?m@wVa?k?@@K@k??@a@UUm?UUalmU?@K?U?±ˉ@±kUKVkUa?a?U@¥m@@ˉk@WLUmkn@mmIkm@amU@wVmkU@Klk@U?m?aXIWWUL?aULVb?mk@UUmUk±?_Uym@mbkImaXˉWW???xWK?zU@W?kJWwkV?@U?m@UbVVVVXb@VWX?@W?@Vkb@V?nUK±aUUlwX???WKknU@mmUk?LUV?VUUV?Ua?w?bkKmwnI??kJ@nmb?`?kmVkLWwUm@UUU?K@UmaUa@UUaWK?@mU??ˉWkkˉVmUU??xVXUVmLˉymXkWUbmXUK?VknWxˉJVnkL?l@VVxnxlāVL2WlX?l@bYVUn@bnlüaXblIVl@??@è|@VmbXV?@@x?VVnUn@`°@VnXU@K@?VV@VmbnVn@ln@b?x?°Ub@b?LV`?n??W@@lU?nnWVU@Vbkl@Xl`XxV?Ubl?kX@?°|V?UVVbUlkV?@UbVbkLUxmJkX??@b?b?xVK?lXX?bn?nala@?Uk@U?VVklKVUXKVU°KVan@VUnL?KVL?WVaU_@mmUXa@m?wXwVkVWXk?k@??k@klm@wXKl@U?@KVUUUVaU?V@?alL?xUx@b°°VnnV?xlIXJmx?LUVlV@bnX@V?b?aVx?@XJ@b?n@V??VXè?l@llX@lU?V?°°@T?Vbn@?V?k?@VW"], encodeOffsets: [[123919, 43262]] } }, { type: "Feature", id: "2106", properties: {name: "丹东市", cp: [124.541, 40.4242], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@lzXJ?U@?2x?@@V??@bUVmKUn?°n@lnVK??nV@n@VlV?°WbXn@?Vz?J@|@bkb?bUl@bkb?Jˉz?WULWbklV?nb?|VJ@??K°U?kl@@W?bVn°@?V?m2U?nX`?UüLXmVXlKVbUVVnUbn??X@VUL@lUbWx?@2kl`n@V?lb?@nUVWVLVU@aV@2bl@èm?xWX?VèU?JV?l@??la?WnX?Kèkè@Va°b?m?@XV°IVV°Unal?VUn@UwVU?@@VVJ?I@bl@XK@wWmXU?UVbkJVXnJVI@m?knwlKXL@`l@VI@UUaVKTn?aVm@a?£XW?U@a?UU@mbkKm£?@?WW??L@?@Kk@kl?U?bWKUkUUˉU????mUUaVU?U@WU_W@kVkJ?_WKkV@bUL?ˉˉ?±mkˉ????@Umw?KUa?k???a@a??m¥Y??IUWmk@w??m??L?K?b?KW?klVb?X@VV?kn?V@XUVUblJXn@J"], encodeOffsets: [[126372, 40967]] } }, { type: "Feature", id: "2112", properties: {name: "铁岭市", cp: [124.2773, 42.7423], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@XJm@ˉ?mXUl?nVbUJ?U@bV@UJWL@VXLmJVbkXlJXxVL@b@V@n@b@`Vbk@lxknV@VV?V@bUL@bV@@bVK@VXLWLXJ@LV@nbWJ@IUV?x@LVJUXVxVx@VV@@LXJWL@VU@@L@VnL@bVVmVX@@VVInJmbnLWVnVULVVU@VVm?X@@JVz?l@?nVVKVXT?@mk_lm?UUWV_nJlUT?TVVUV?VL?UVJ@I?Vna?@@KV@XwWknwnKlalU?w?a?Y?w?Jl_@aUa?KUUU@WU@WXU?@@UVK@?n@UnVV?blK@b?llb@b?bW@Xbl@UlnLl°°b?|nKlVnI?V@UWU@WXk?w@am@nm@aVw@I@KUaVIm±X?lknJVnVJ?aX_VaUaVKmwnkmmn@lU@U@mna?XlKUmUIVmk?laUK@UlUVU?W@U?kVm?a@UUU@JmUU@@bmb?KWVˉXUKm@ka@UVKVk@aUKmLkKUUYUmbXb?J@k@WU_@m??@klm@UXKVaUI@KWUXa???W?k?aWUkWUL±U@lU?U@?U?J?I@VˉJmIm@@aU@Uw?a?@UV@VkI?VˉaUk?Wkb@bVL?@@VVVUXW@Ua?@@b??YbUVY?@??LmUkVUbVllLUV@L??X?WbUXm@U`@?kxlnnJlbnIll?LX?lVlUXmVK?n?V@L"], encodeOffsets: [[126720, 43572]] } }, { type: "Feature", id: "2101", properties: {name: "沈阳市", cp: [123.1238, 42.1216], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@??ü°?b?L?lTxUbUn±?@ènV?L@xnL?lUV?b?xkImJkn@V±LUxkV@b?b?KVKnzVl@L°@Va?xTUlb?xVV?@@V±bn?@?llXL???X??nal@nkVJVI@aU@@aVK@a?UUUU@lmkwl@Ua@_@a@m@U@aUKWwkIlWUanIWK@UXKVIU@@a?VVIUa?mVknW°?n@WI@K?U?mULWnkVkUW??KkkmJkamIkmlw@?V_n@VWXaW???@KVUkKUkValUnV?K@?T?VUTa??@a?@VbX@VWUU@U?@UK@ala@IkKmUUa@U@?V?kk?WVwU_@KüUXbl@V¥XUVm????Xa?k??l?UUkIm`UIUJW@UI?Kmkm@?UUJ?ImmU@?VUXU`mIUbUK@L?JUU?l@X?@Ub?J?kU@??n?m@Uam@@??aU?mL?K?w???mWXUK@kUa?a@JUIUa@a?KVU?UXm??Uy?_@lmbkLUKWLX`?n@bVL@JXL??WX@Vnb@Vm@UbnVmL@V@x@LUbVV@V@L?UVl?@mbˉU@xU@UVVV@X@VVblJ@bn?VKUn?x@lln?L±¤?b@?k`VX?K@?kV@?kl@bWIUl@VmLnbm@@JXXmb"], encodeOffsets: [[125359, 43139]] } }, { type: "Feature", id: "2104", properties: {name: "抚顺市", cp: [124.585, 41.8579], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?XVl°b?UlJ@UVU?@?bVxV@@bn@nJ°I@U?J?I?VV@V?@k2VVKlXXV?b?lèX??WbXV@LVJUbWL@Vkn@l??@nV`@X@lèIWanaTVVVlLnKVL@bUlUL@Vlbn@VL°WXU?Lna@aV@nV@IVV@V?bUn?l@V?XnKVa@U?UnyWkXa?aVk@a?a?bnm@_WKXmWanU@alaU?l@XJVLVxX@?wnKnVlw???@V_@aˉ¥@UkKWU?aUU?anK@I?aU?@WUaVw@klUVyUUVUU?@I?b?a@mnUma@kXa@UWak@Wa?l@a??@W?U?LmU?@U`mIUU?`mUk@@UUK±nkJ?bUam@kwm@@a@UU@Ua@?@K@?VK@kmKU_UK?UUa?WmkkL@`?L?nmlkLkbmK@k?@Ulmb@b??@??xUV?IUlmVXX?xm@?JUUk@WUk@?akx±@ˉxˉUmb?KUUVmUUˉUmVVn?Wk????lWb????UnWVU|k@Wa?V@LV`Ux?XllU?@?@VVbnVlL@J"], encodeOffsets: [[126754, 42992]] } }, { type: "Feature", id: "2114", properties: {name: "葫芦岛市", cp: [120.1575, 40.578], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@ll°X??nV?@XLVb@VVbnb@V?LVV@VVnXxlKnU?l?_na@mlI??mJnxlL?a?xVbU?VV?UVU?KVlnnV@lmXL?èW?kxVV2bVL?m@Ula@UX??@XW@UWaUUUUVan@V??@lUXxlIX?V@?yXL?w??XXW°nblJnan@Vz?`l2nVVVl@?nUaVK?bVKnXVaUaVU?y?nXK@kVK?@X?@m@m?LXa?LW?Uˉ?w@??a@UVw?¥°?óˉˉyˉ???U?ˉ??wˉI?m?ˉ??UUl?ˉ??K?????mˉw@mU_ómk?VnU`±IkbVl?nn?U?±Lk`@X?Wl|UbmVUxkXVlkbllU?Vb@bkVmx@XVV@J?b±aULkKWXkWmXˉaUJmIkVm@?xU@n?"], encodeOffsets: [[122097, 41575]] } }, { type: "Feature", id: "2109", properties: {name: "阜新市", cp: [122.0032, 42.2699], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?Xnb°l??VlnXVJ?LlVnl@z?xnK@b?blKVLn@@V?aVLVK@L@Vl@XVVInVVKVwlUXwlK?L???VVb@aV@X?lUXbVW@n?lWnXKV@@V@XUVVLUVV@@bVVV@@ln@VbVUXV?I?xVanJ@U?IVW?L@UV@@¤V@nInw?W?k?lnIVx?lnzUV?J?|VVüL?UnW@aV_?W?XXa?Knkl@nm?L?a@alUVw2K@UlmnIlJ?w?aVU?kmK@w?KmU@?2?VmVaYw?k?K?a?ˉ???¥?¥?@kUWk?īY??@@akU?K@KWIUmˉn?UˉJmwUVmIkJ?L?m@?UImJUU@aW@U@@nUb?J?a?bXVWn?@UVmX@V@b??@l@L?@?lUb@x?n?a?bk@@xVJU|lbX??ò@nUJ@Vmb"], encodeOffsets: [[123919, 43262]] } }, { type: "Feature", id: "2107", properties: {name: "锦州市", cp: [121.6626, 41.4294], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@nJ@nlmVnXKl@@°n@@|?V?bVbUlVL2l°@?2èV@LV?knVb?VVnnWVU?@XmWU?a?b?IVa@mV@X@@bVVnIVJ@??nèKlInJVUnx°I?V°mVnXJ@L?LlV@b?@T???XllV?@?|?|naWW@In@manK@UVkXJ@alk@?lU@??LUWl_@??a2£?Kkm@k?wVmULm?@akIUa@U@WUUVU?aY@???wk??m?£UW?@@b?L@m?a@_mK?l?XUw?K?L?ó@UWw@K@U?I@m?U@UV¥?@°UnJ°@@_?KUw?W@UnaW?UmmI@m???wUa?LóV?wY?UUW?ˉ??|Ux@V?b@??xV°X??KWb?K@n@nW??@UL@lWL?m?zUVVbUbmWXXWJ?b?n@Vkl@LlVUn@xnV@bln"], encodeOffsets: [[123694, 42391]] } }, { type: "Feature", id: "2103", properties: {name: "鞍山市", cp: [123.0798, 40.6055], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@l??x??T@?bV@@w°Vna?@Uk?V@K@UUUVa@K@w@UnKmUVan@@Uma@UXW??WK@IUK@a?mW_XKVLlKna@kmKVak@VU?@Vm?U@anI?an@?a??UVnb@blLV`TLlU?bna?Kn@naVU@¥°IVK@anUUKVa?UVak??@mJ?kX??UVwk?VUUa°U@W??@WlkXWlIXUlJla?x?IVVXL?ll@nLV@lLXl?K?z?¥maU?lkXaVK?X°y?Ila@aVk?ala@a@¥?IUy@?WmXa?ˉkU@U@mmU??ULkmm@?ˉVmnLVU@a??@U?@±w@??VWIkymLUUkJWX?JkUmxk@?xUIˉ`mUULm?ˉ?m@kxVV?bWV@?UV?IUx@bk?V?VV?xUbVV@V@z?JVXU?lnk@@lkL?l?LUU±Jk?m@UIUV?LUVU@?K@U?nnV@l@Ll??aUJ@zn`@nWl?IUVUUUV±Ln?@nmL@VUVkLVlUxVLVl?Xma?@@akLmWUX@JUnVJVkXJ@X@`WX?VUVUIlb?W@bVUVL@`Un@|U`@bUV@z@Jm@@XV`?LULˉJ@IVKmK?I@J?nWVnLn?VxV¤?z@bmV@VUV@bUL"], encodeOffsets: [[125123, 42447]] } }, { type: "Feature", id: "2105", properties: {name: "本溪市", cp: [124.1455, 41.1987], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@lb@Vn?lnVVUb@?VJ@nnJ@bmXUx@xVbkbk?WLUxnl@Ul@?xWx@nUV@?Ull?knkK@bmbnl?LVJX@VIVJn_lJVV?XUmnU°VVVUnVV?Lna°V°w2@lw?bl@XVl@VV?In@?wWWnUVk?JVU?w@???@anaVk?@@lnLlalKnk?m?K@_lKnl?XVb?VVLV`nL@lUL@?@L@?VbV@@V@bn@lxn@Vb?alI2mVL@Vl@nV?_VVnJV_?@nV?K?V@X??@b?kXbl@XblylUUk??@?Xa@UVIlK@UUWVU?Llm@UUUnKWU@K@UXm?XVa@U°KVUUWUk@a?UVKkaWk?KUknaWa@U??@?m@m?k@?aUJk@@_WKkLmx?l@nUJmIUWlIUa?VWVXn@xWLk@@a?JUI@U?@UVVxm@UVk?mbˉVUUˉJWU?@?nˉaUb?@?l?LmW?Xkb??k@U??I?V?UXW?w?nk@±aU@@bUVUKUXmV?@kaU?m@k_±l?@XwVa@kVK@U?Wm?VaUmVUUakLUWWn?K?VW_?m±V?n?Uˉ@Um?a@Xk@?lˉV"], encodeOffsets: [[126552, 41839]] } }, { type: "Feature", id: "2108", properties: {name: "营口市", cp: [122.4316, 40.4297], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@????n¤??°?ˉ?W???@xXb?wnKl@nX@VUV?KmL@VU@UxY?@Vlb?x?U@VUb@b?k?`?IUlVUn?V@@UV@@JnXlK@b?@nb?WUkUKVwUklKVU@UnK@mm?2KVUVVVU?JXk@mm_@yVI?bk?@K@kmU?m@V?LV@VU?KVUVJn@l?2IVV?K?klK@kl@kmV?UW?I@y@UUUVa?wUUU?l?@akmm?VaUKmIUa?Jk@?wkaóIWW?L@UlmUIU@WW@UnUUm@wmIVK@K?|?@?bWKk@ma?x@bWXkamK???@mVkKmx?aWX@xUlYn?J"], encodeOffsets: [[124786, 41102]] } }, { type: "Feature", id: "2110", properties: {name: "辽阳市", cp: [123.4094, 41.1383], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?`Vz??Wn?VUV?L@bVbVJ@IèbVb@lVLXW?n???x?LnKV??b@?n@Vbn@m???V@?l?IVa?@@W?kVV?I@KVLVanJV_VW?UV@nn?JVI?Vn@na@alLlmk?Vk@?VU@mXw?wk@@VmkVwXKl?laUa@wVwnW@amI@mUI@?VaUUkmm?@Uka?L@?UI?y?LWkkKU@mKk@?kWKUU?J?wkbkIWVkJWXkl@X??@XˉVVbUVl?Ux?VW??lnI?@l?Ub?VUbVLmV@bULˉJ@|UVmbm@?Lmb?akVYKU_kK@amaVU???bm@?bmJ@b?VUn?@UVl@UbnL"], encodeOffsets: [[125562, 42194]] } }, { type: "Feature", id: "2111", properties: {name: "盘锦市", cp: [121.9482, 41.0449], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@Vb?x??@nnJVnX?mb@V?XVx?L@`ˉ@mIˉV?@U|@V?V@n?J@V@LXx@V???K?LVx?W?knL@`?b@nèK@a?@VX?¤?nVK@aVU@UnU@a?yU£Uwm?mKXU?m@I?JnLUL@J°IVK?KU_@Wn@@I@yVU@aV_@¥Vm@_UKUV@a?XkaVJVU?UXW@_@WWIUlUIVm@IVW@IU@@VU@m?UVVk?J?_?l@aVa@U?V?wka@UT?VwV@@UnK?LVU@UmWk@mL?xWa@wó?UVUI???|ˉ|ˉx?J"], encodeOffsets: [[124392, 41822]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/nei_meng_gu_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "1507", properties: {name: "呼伦贝尔市", cp: [120.8057, 50.2185], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@?m@?k????kl???@£kJ°y????ó¤?L??l???Wˉˉ???ó?lwk?èéY?ó?°T?xV¤??W?ˉl??υ?????ˋ???Y??????@ˉkWKUKm1?@?JU@????ō¥??@L@?T?VLn?@Vō?WJX|@J?bU@?TmVU@?yóbkWWL?????ˉUW??kmó?±U??V??????????x?????KΕ????T??????ǖō??±???U???mü?????ˉǖK??èòǔn????@??b?????@????Tā?x???L±????U?°U?°???°ü?ê??V?°@??nx?è?bè?T???l?2Ilx?l2òm????èl??om?èêVt?x?????Vm??ò?è??????°????b?y?@???X??m??w°?k¥?mˉ??kk???ǖéX_?Wǖī?a?????@?????L???V??????óaU¥??°mk?°?U???k?°m???????W?£???xèT??T??2???alò°??±?z???Kè2m¤??@ò°?ny?U?īǖ?èē°@?Y??@?è?k?l¥??kxk??JX???U??@?£k??ó?ī?@l??Jl¥óy@ˉ?????an???°éˉ1"], encodeOffsets: [[128194, 51014]] } }, { type: "Feature", id: "1529", properties: {name: "阿拉善盟", cp: [102.019, 40.1001], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@??n???????°ˉ?V2?????@Y???ˉ???ó??@?ky?1@ī???wl£???ˉ?é@????x???UU?ōL????óYn?ó?@??ó@????¥???WU??ō??@é???K???V???aW¥?£??ǔ??T?ǔl??Tm?ó?????@è????n???????г??ó??Η??T???ó?????l?k?°?èn??lˉ??T?Yk?ó?W??z???@?è?lU??ü?n??ǔK???b°??ō@???m???ō??b??ōx@?ó£?l±ā?īXY???ê?K°Y??@????ò??@????????ó?è?U?¤?_?????Y?L???ó?J?è@??aT???"], encodeOffsets: [[107764, 42750]] } }, { type: "Feature", id: "1525", properties: {name: "锡林郭勒盟", cp: [115.6421, 44.176], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@???I????@????????āó?U?è?üèn??????U????????ǔ?èè???????ˉ?V?ò???V?êUü?x?ā?????°?mT?U??l?@???nèò?????U°l?wUb°°°V?£Tl???LT??n??T?n|?a?ī??ˉI??l?k????y?¥?ˉ?én£???Y?x???@????ó??¥??W??ml?óa?£?b?yV???V?Y?Uˉ?K?yǖ??n?ˉ????ōUm??????w?b?????wˋè????°?kw@ó???w?¥V??U?mW?????V????ī@?ˉ?n??@T?n?V?óJ?w??k?Ywˉnk¥?aó|??V|?`????Y@mwn?ˉm±@ó??K??ǔ±U??Y?aˉl??ō??k?è??T??n@???k°?x@??`??°?@??ò?wm??@??n??a???¥?n?T?Vó?ók???@Yk???a?°?@YèU?óbY?@??òV°?@V?ˋL?T????VT??????ōb??"], encodeOffsets: [[113817, 44421]] } }, { type: "Feature", id: "1506", properties: {name: "鄂尔多斯市", cp: [108.9734, 39.2487], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?L2?V??kkl@???Wńè??ˉ?olz@????????ò?°kTü??n@¤?U?è?bōèX??Llò?x???¤è??JèY°U????2VWˉ?J???bk?V@??lbn??yèzV??a?b@???TUl?°y?2?m°??k?±lbn?°@è??JX??V???J@k?L???l2??2??????ó?T?@m??mLU?ó??@???L@??`??m?????±??lˉā?w???????I@±ü?ǔ?ō°Uw????????±b?£?ó?wn?ó@??@??????ón???ó?ˉb????V??Im?ōKU??Lǔ±Yx????V?±ā?°???l±??@Wò????Н??èō???°???V?"], encodeOffsets: [[109542, 39983]] } }, { type: "Feature", id: "1504", properties: {name: "赤峰市", cp: [118.6743, 43.2642], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@?????w?ōT?°_?????U??l?ˉ???V???????????????U?ˉwVWY?è?W?T1mY?????ō??V1??ō??é??ó??VV???@??@????V°ˉx???¥??°??????¥Wy?¥?w????±mn??¥ˋV?bUò???x?L???bW??x?|U°YVó?l?2@?¥üT???V@2±`?|???ˉY@????Vòō????¤V2???????x??ˉLk??l?ym?Y??@m?°?@?????Uā????X??n?VUò?|?xè?@?lxˉ??òüā???x???è?a?x?ò??n??Vè????°?mǖ??t?LV°T?U??èU??zèa?¤?bk??nXā?è"], encodeOffsets: [[122232, 46328]] } }, { type: "Feature", id: "1508", properties: {name: "巴彦淖尔市", cp: [107.5562, 41.3196], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@2@Ζ????????|???U???????UT????éY????????ō?akó?óˉa@????aVˉTˉ°@2él¥???wōxóˉk±??Vó@??aóbU??y?zm?kaó?U@l??aó??IX°±U????ˉV?T?I?ü?£???wk??KW????a???V@£?m??lY?ˉ???ó???°??@T?ā??±??Uˉ°?ā????m???"], encodeOffsets: [[107764, 42750]] } }, { type: "Feature", id: "1505", properties: {name: "通辽市", cp: [121.4758, 43.9673], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?????è?@?è?w?????¥V??@2¥@????ˉ?J?£k???Xˉ?ō?ī°aX£?????¥???a?????L°??@??èò???VX??a??èK??????@?è????Vn??V?wX??Y°????wV??ˉˉ?±???????m?2??±?Im¥?è?@ˉ??JV?TUY?ˉU?oU£??óa??l????īˉKˉTY??L???@ō?ōā??nTYoX???T?UX°xV????????ò??????Uāó?°?k??ā?V??ōńˉ`Y????x????ō|"], encodeOffsets: [[122097, 46379]] } }, { type: "Feature", id: "1509", properties: {name: "乌兰察布市", cp: [112.5769, 41.77], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@??T????ò???a??è???UY?????Y?KU??@Uˉü?@?T??aV?T?è@?ˉüb??Tl?@???l???U?Y?m?|???bm????@n??x??@?ˉ????_@??wlˉ???L?Y???ˉ???ǔ@?ǔb?????w????U£óa?¥ˉa????kw°?ˉ?lY?k??Y°???aó????kˉ?ó???????????ˉòèUl°?x°n?ò??ón???°???|?V?°°????J?ń??ó??????|"], encodeOffsets: [[112984, 43763]] } }, { type: "Feature", id: "1522", properties: {name: "兴安盟", cp: [121.3879, 46.1426], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?Xnl?°@LVL?t?x?U??nU????V@?aWˉXI???¥Y?@K@w@K@I???|???ò?I?@X@VonX°l?@????????YY??TbV????xè????ê?Kn??¥?@??TUnòl@U??a?īˋ?ˉ??x@?±kX????éV?ˋ?lōˉ????ó?T???V@????°???Tǔ?ˉm?????????b2????é?ˉV???Tml?ō?V???Vˉ?ˉ???Uˉy°kˉˉV?????°a@?k??K??ó??b???|??ó?W¤ˉb????W°?èl??¤?I?°ōò@?±|?@U??|?????T?òm¤?êō°?|èt??l?k???°J?ń???°??n??bV?Y?@?ó??¤@°?n?l"], encodeOffsets: [[122412, 48482]] } }, { type: "Feature", id: "1502", properties: {name: "包头市", cp: [110.3467, 41.4899], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?x?āǔ??V?ā?¥???ō??????èIü?ˉī?ˉōm?ˉ??ˉ??òYIY??V??l???????VmTnn?W?kWü?X??wU????£???±±??k???K@l?Iōò?UW??I??ˉ@m?ka?2?lˉ??n?±ˉzk?YV??U???l2?°?w?x??k|±êˉ@Y°U°?bó?@?°b??l??b????????T??ê??Y?"], encodeOffsets: [[112017, 43465]] } }, { type: "Feature", id: "1501", properties: {name: "呼和浩特市", cp: [111.4124, 40.4901], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?U?¥è??ˉ???m?ī??ˉm?wkˉ?V°???????ǔ??ǔ??óXˉ??òóa@nY??????????ò?¤??V??xW???lXXèm?YmUn????óòk????UT?TJ??°????°?n"], encodeOffsets: [[114098, 42312]] } }, { type: "Feature", id: "1503", properties: {name: "乌海市", cp: [106.886, 39.4739], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?°?īX???@?lk?lU?±ī?Kō?V???X?ˉ?@??ê?°??k¤?x??@?"], encodeOffsets: [[109317, 40799]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/ning_xia_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "6403", properties: {name: "吴忠市", cp: [106.853, 37.3755], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@nLV?@?VL?aTbn@@l??@bU?VlUV?zVx?¤kTVè?Xn??@nm°a@U???@V?XnV@Va?U??VKUUU@@U?@@KVa@U2@?wXkW?nk?±lLnU@UmmVKnIVWnI@?UK?@UK@?@UVKXkmW?LWUXmlkVwUyVa@w?w@aVI?K@aV?èw?KlLVV@LnV?VVnU?ü2°WèIU?@nT???@|?@UTUVW@UxUxVn?b?K?bˉTU`Vb??V@XX?VVl°InmnU??°ˉ?anam£?WVX?KXm?k?aVU@?Vak@@wma?n@K@U?UWKXU???@UI?b@alW@akLUKV@@Ukw±I??nL@kmwkWmk@JUI??Vmn?nU@m@U?K??VKlkUwk??nV?UKmbkI±??K?kmVkK?b@U@a?VkUmn?`kIlaUK@UUKmbUIY?Ua@mUa@a??m@UUULUK@bmKkbWI@WXwlkX?Wa@k@?kK?LVkkK@L@JUVmzUKlwUUnW?£XVlKUwVU@aXI@aWaUw@W@_nam@ˉ?UkWVkUWaU@nwmJkUV?kWVUmUkJ@ImbUa?@@W?_mJknmak@@m?X?aUV@??xU???@???@VUnkV?@Vn@`ULUbWLXVW@kbUJ@XW`?@?n??WJ?@??m°@x?x?bn?Ua?w2l?T°x?IVVUL??Wb?bkVVX?`UbVL?@kx°LlV@V??Wb?J?n@bl¤ULV??°@lmL@??£U@@aUwmKULVxUVVx@??@kU?@mKˉL?aˉ@"], encodeOffsets: [[108124, 38605]] } }, { type: "Feature", id: "6405", properties: {name: "中卫市", cp: [105.4028, 36.9525], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@°@èb°KnL?@lV?@@?UwVUUwVKnLVx@bV@?¤@?nK@k?ˉU?VKk£@a?m?IXa??@UkUˉKlw?@UKVa?_UWlU?aXaü?VKUU?Jˉw?Y±k?xVbm??a?w@wnˉ???@XI???m?@X_@WVIlaX@WUXKVaVK@_Um?@lUVm@U??@???V??w@?VU?wm@@W@ImKUkU@Ua?aX?@wWaUKkw@UVaUamLU?nk@?±`ˉ@k?W@Ua?ykb?I??@VWJkLWUkJ?wU@?n?¤mLˉwm@Um?2XVWbnV@bmx?VkxUblLUV@?kVWKU???kU?@mn@JnV@bUnmJUn@?k?@Xlx?LVVnKlLVV@?@LkKULVbk`WL@lkXW@kV?@UTUl?X?lkaUbmVˉ@@L@??V@bkb@x?lW??b?bW@??±@UJ@IU@mVk?VxV@@l?Ill?n@Vm@?VUbl?@J?LmK?XmVkU?KULU`@L?w?KUX?lVUl@Vb?JX|?bTx?x?????a?@"], encodeOffsets: [[108124, 38605]] } }, { type: "Feature", id: "6404", properties: {name: "固原市", cp: [106.1389, 35.9363], childNum: 6}, geometry: { type: "MultiPolygon", coordinates: [["@@Vnn@°xnK?£?mV@?xlIXVlKXI@U???Jla?zVbX@l?°@2_@?mlV?nKVbUb@VlxVLXb@xW??bVbV@VlnL@J@Xn@üx?b?W@nl@nblmnI?`@X?@Vbna@aVUUWVk?@kbWakbU@Vw?W@_l@nmn@@alVlk@UkmVak@@a?UXa?L@ˉ@KVa@a?xWI@KnkVaVJn_lJ@?X@?m@nVanUVb@mXLlJ??VWnLla?VVaVX@KXVVkVKlknKVa@aVU@KXb@klJUknUm?@K@_UW@alIUamaUˉkJma@IUK@U?@@UW@@aXLV?VJVaXI?KlaUkUV@ambU?UJkIWJ@wUI?V@JU@UwV@@Um@?nU`@UkUmVUxWUUV@a?b@aWXkKUU?UUaWK@wnm@IVU@aXwm@UmVaUalk@anKUwl?Uwl?kK@wma?UkmmIk@VmkUUbW@UVUnW@kV@xkVmbVnU??@UbUV@a?k@kkW@?kLW¤@?nV@VU@W_UV?UU`VLUV@IUV?VULU@UUUJ@wmkUJ@?WI@l@bkKkbVV?bVbUL@UUJ@Vm@@L@x?bVVVLVlVwX@Vb@bmUkbk@@JWIUV?w@Km@UkWKXxWL?@UVUnWK@xkVW?@KUL?wWVXVWzXVVKVXkV?V@VUbV@U?VV@?@LXxVL@V?b???LnKVLVxXVmb@l"], ["@@@J@a?U@LWKˉUUxVVn@???LU?W@UbUUUa@KUX"]], encodeOffsets: [[[108023, 37052]], [[108541, 36299]]] } }, { type: "Feature", id: "6401", properties: {name: "银川市", cp: [106.3586, 38.1775], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?U?wVK@UVWTU?b?w?V@knV?@@KU_VK@K??n@W_XWlL@Vn@?w@Ula?@Wanamī@a???ó@a????UaV_°Y?a?L?aUmVwVwX@VUVY?@@¥??Y?@mV??JˉX?±V?Um?UmU@KUUkK?L?xU?@b?LUJ@b?x@xUbVzUxklWnXV?KnXWlUL@V@?VL?@VL@?mJUXmJULnn@VmVkK?2mlX?Wl?x±@@VUb@L?@@VV@VVUL???VUbU@WmU??@?ò@Vˉbmn?@V???@lVnU?nVW?X?Vl@|VVUn@x??@?XL@|?lXx??Vb"], encodeOffsets: [[108563, 39803]] } }, { type: "Feature", id: "6402", properties: {name: "石嘴山市", cp: [106.4795, 39.0015], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@Uˉ?ó±??ˉ??mbXb?@kb@V?xm@@UkKWXX`m@??@LULV`@L?@mU@l?U?x?aYVUX@VUL?x?VkLWV??@J?nVLXVl?UV@zl?VL@V@b??n@lU2WVLlLVbU?VxUx@x?L?x?ò?k?K2?Va?U@wXa@?W?è?Ua@??bèk?m@ˉ"], encodeOffsets: [[109542, 39938]] } }], UTF8Encoding: !0 } }), define("echarts/util/mapData/geoJson/qing_hai_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "6328", properties: {name: "海西蒙古族藏族自治州", cp: [94.9768, 37.1118], childNum: 7}, geometry: { type: "MultiPolygon", coordinates: [["@@??V£°??@la?X?±?w???@?Ul??aü?n??K?w@U?a???a2L?mèL??èxlaUa?wTmübTU??nJ°a?k????kwYV?w?@YkkVˉ¥@?ò????n?¥XImw@mVw?a@??w??mLkaW??w?¥l?k??ó??@?W?????@???????Uwó?Vóm?????Y@Vǖˉk?Y??k?°óUklkU±?I??Tk?±@????J???@U??Ik@W|?V???ó?n?KULn?ˉX??@??ˉmU?@W??móKknōb?xY@??U@kw@??L??YUk?mw???k?l?V??U|???LkUWl??@a?@??±Uó????è?m?@@wkw?KlˉU??@??l?U??óˉ_??Wa?2?ló?Vbkn?K???@??ō°Y@??W??xUUm@??YX??W?ULUèˉ@mbUa?L?bUW?x?IUJWz?aˉb?y?@ōèóLU`?XUl?U?Vˉn?m?bǖLkl?U?V??óa???b?K?nkbYmmnYW?è??YX?Wó?kU?lˉUˉ??U?ā@°ˉ???ˉ?V?n?mJ@??nóJUbYXUlV?kL@lVxnnmb@¤Vz?`TT?@?Vn??JV?°b?U?Jkzl?kl@2ó?@??°k????b?U@lmb?XV?kz?V???āX?lń???@?é?@?ń?°?bU?l??_°?@x????kbVb?K???V??°@?è?l???K?b@n?x???@???L@t?b@?nn?W?bèx?Ina?xlU@?2±??VU???b?@T¥?UU??WV??ˉ?W?n?a??@£nmnI???K°xUX?@?a°m?kX???TV?k?°TLè??yVa?IlwX?°UVw??üK?w@nV@?m°nm?n?ü??£Vbm?Xn?°üò@x?x@V?b2UlbkxVn?JUnVV??°K??m°nx?nn¤±|@?UXVV@??lV??bmVVè??Vx?ò?°?I?b?a???bVw?@??VL????@????ˉ?k??"], ["@@?@???@n?òV?a?w2bVx?xüa?V?_?J?IVm?L?a°@?¥X?lK@??k?l?KVbUb?@nU?n?aè@lm???ˉ?n?mn???Vy??ǖ????In??@@???@ˉ°??V?KèbVI?¥ˉ@Yó??@?nīWK??k??k@¥??ˉ??a?X?±V??w@±?ˉ@?????n?Wm?w@???@?ˉ?V?UUW??K???a±Vkk?Vˉw?x@?UJ?x@bkn?b?m?@Uw±Uˉ|U??Km?ˉIˉ??????@???èˉ@Y??n?J?b?è?n???Kˉ?????W??lm?@¤n2??Yb@b??ˉl??ˉ@???¤W???nV@x??°@Vx?@lbUblbX?W????2l?U?@???V|@b?lVxUbVxTbV??bm|?VV?"]], encodeOffsets: [[[100452, 39719]], [[91980, 35742]]] } }, { type: "Feature", id: "6327", properties: {name: "玉树藏族自治州", cp: [93.5925, 33.9368], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@???V°?°VèklV???XTW????TXnmTnla?m?L?a???b???U?VlkǖKüa?n°m?U?VVkèWV_?K???@?z°a?bXyVI?J?wVX?a?KVbna°@V?VKX?ü?TW??n@VV?wX???T@?ˉ???@è??LlmUa???k?±Xb??°`??V?kè???@V?k°?Llx@x?@?n??????2V?ò?@@b?òXklV?K??V¥???U?k?l??nxl????¥??@±??m¥?w?J??@???V??mèIléèa°?U¥??@kTV?K2?W?°w2??K2??y???Y?Vmw??kkW??JWU?V?w?L?m?@@?mw?kn¥V???°?°@@??ˉ?Lla?J??nV?U?ˉ?U@WˉUm?ˉˉk@WykU@ˉ?wV¥?kVw??k??wW??????K??T??a?b?I?lU??@kw?W?XU?°w?±@U?Kn£W??KWx?k??V??amwXw?@??Wmnk@a?Vk??b?L?l?Imm?wU?????Wx?nYJn?@¥??kw?aX?ü??ˉ?Vˉ¤mk?xˉk?ü?2?VW??VU??@V£?¥@?°wn?@?m?@?ˉ@UbU???mn@??@?yVaU????V?@?l??ˉxY??lVèèV?x???¤Vx??kK@??@?x@?kV???¥kIWbX??x@n?x?UW`?_?@±?Ua?LUx?Kˉ?WbkVlb?bm??L??WIUw?WkwYV@?kI???éUb?UUk?VˉKmˉk@UmY?ˉmˉ??m?L?T???Um??£UxkKm°?L?w??k@k??Vm??K?VUk?@ˉaˉ??móKUU?x?Iml?n???bXèVVU?°?@???@??xXnm?????@??°@2?xU??2?W?b°???@|?ll???XLm?@ò??T?°@è|UJ?a?LóUˉ?@°??@??@m??J??ǖ??òUz??m??n?m?°??kn?@?b?mmV?@VaUa?L?k?l@?kLW?ō|ˉ@?b?KUn?J?Ió`?U?b?wUw±a?x?b?Um??@???@?b?a?b???Xm???Y???VbT??bl?U?TVT??U?°?VUx?@U?V??@l`??nL@??LW??¤kX?W?XUVVV??UbVb@°kVVxèa?@?|?b?a?J?U@è????V??l?@Xk?aW???T@la?U?b2mTL??T??b?ò?a?JVbm|"], encodeOffsets: [[93285, 37030]] } }, { type: "Feature", id: "6326", properties: {name: "果洛藏族自治州", cp: [99.3823, 34.0466], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@TV??èK@ālxV@??T@?w?alm?L?nX?ü@nV?°@???°Wm?VK?L?m???ò?UX¥l@?JV??@???I@w?W°???n¥?k?YVw??è??@l????a?Jna?LVw°kny°Unk?V???ll|?V?@@?nU??è??In?°X?wTK?|VWV£??@£°ók?±I???amˉVa????V¥°?@m?k?¥l@???m@a??U?mwX?@w?x?m?_?`Vn?b?KVw?@@?nUV?VmVV?Il?l@@??m?£U??w°@V?U?ˉ?mˉ?Jō??L?a@???±`U_k`???ó?kX?lK@??akYT??£W?k?Y?kx?JYˉ?w?x?xmI?x??@k±J@y???¤U?k?mV?°??Yxkwm??nYVU??|???lm?óXk¤??UK???@mVkK@kl??ī?£m?ˉVUb?Wˉ??bˉ??am?mVX?m@k¤?X???b?U??ˉJˉ?ˉè@??bVXVò?¤V?kxY?V???@l?V??Wx?|W?ˉ?mK?nl?k???U???@n?U??Y@?o???U?¥?U?T???z±ò?L±òˉxX?±ò?LYU@l??V|ˉ??bkê?J?nU???@????I?xn|??@2?è?|?è"], encodeOffsets: [[99709, 36130]] } }, { type: "Feature", id: "6325", properties: {name: "海南藏族自治州", cp: [100.3711, 35.9418], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@Vx???ń??@?????Xò°U??Tm°£nb@?@LUUW??o@nl????£TV°UXb?V???é?@?kWanm°@?x?z?K°ˉ?V??V?kw?Lnm°kTx?a?¥@??wn???@??_l??_Vw?m?è???U@??Wn?@?mKU?n??K@?°ˉU?V£nm?Ll??U?U?é±óókkm?n?akV@?°óYX?W?T?I?xmm?V?UV??ón?Wy??k?V???°Wnk?a?¥?_?K°?W?na@??mU?ˉw?lYIU¤UXó¥YL?xˉWm??J?è??mV@??@?Uk¥?k???UmlˉVmzˉlUx?Kmb?I?b??kò?@?èó?Ux?T?lm|??ˉ??X@x??@??2Yl?è?JV2klVlˉ?l????T°lUǖT@????n?U???"], encodeOffsets: [[101712, 37632]] } }, { type: "Feature", id: "6322", properties: {name: "海北藏族自治州", cp: [100.3711, 37.9138], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@ōm?x??Um±L?t???@kxmW?bˉIˉ?mIUx@b?b?V???k?b?l?Iˉ¥?U?m@??ˉè@?a?ó?Ul???@w?????wXa??ó°??Y?kU?aV¥?bYwˉlmn?KlxU????Uˉ°?L?y?wˉ@mnXb?l?@?ê???UWaˉVYU?¤??k?@mü1X?VV@K@?maˉ¤Yn??ˉV@?????lèk??|?xX?lbnK???x@??bUx@nnxWJ?|?m????@?°|lUTlè@?xTUlx?òó??lˉbmI??YV?aYn?xVbkb?w???K?n±K?b???b@V?x?Lm????bk??Vó@???xó2?Wkb?@ˉ?U¤????@lUX?°l??U??lLX??a?V°w?xUb°xü?èKVkèmlw?kèK?w?K??VU???????Il¥na°LV?2ˉüy@w??°??wlw?w°±?_lVk?@°?b??ˉz?????@l_?@?±l??Vl?UaT??LV?nKlnè?°Ill?a?wT?°x?UU?@w??V?km?L???KTy?aT¥?āTm?????mU???V¥èl°2°a2¥V??@@w?amm@?n@?£??V??£@W?ˉT???l@??@Uk@"], encodeOffsets: [[105087, 37992]] } }, { type: "Feature", id: "6323", properties: {name: "黄南藏族自治州", cp: [101.5686, 35.1178], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?l2?üê?V?Vk??KmnU¤Vāˉ°@??Lm?V?nLèL@alb@al@n?°V?_XmWUèamaVIn@n??aV£?óVW??U£°a?xè¥@??a?wè1@ó?a???bm?@k?w@m?a?w@??Inˉmm?@UkkW???@@k????VkYJ?kVyk?l¥@ˉ???Uü?X¥òy?mmX?Y?lmU@£?Wl??y?XW??b?l@a?I??k@klm@UxUU?V??ˉX?l?aUn???I@x?@ˉ??K???UU`ó?l?ˉ?@¤??TJ?k°xV??n@?mbX?ˉā?L?`?|?bmlˉX??U?l???Xzm???U?üV?Unn?w?J?Y?XTWˉ?@èlU?b?mln"], encodeOffsets: [[103984, 36344]] } }, { type: "Feature", id: "6321", properties: {name: "海东地区", cp: [102.3706, 36.2988], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@@ò?b?¤?I°?U??°U?nnWx??@bˉL@lUUWbXxWl??nxV?Ull??XV?U?nL@l?y2KVn???wV???@mT£n???T?mL???KUaV????WVk2????Y@?Xw°@????@a°wóUU?mIk??aVmTwmkny?1V??n??m£X???naV±??Yw@a?b@a?mˉ??Vó|kYWKU?U@WanU?b@??o?x?b@??|?wˉbV¤??UX??U¤?bm?m@UJnb?bXVWn?`ˉUm?k@@bka@b?K"], encodeOffsets: [[104108, 37030]] } }, { type: "Feature", id: "6301", properties: {name: "西宁市", cp: [101.4038, 36.8207], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@@kmKV?U??Wk?VkU?mw??XkWwXaVV@k°K@a??XwmmV??ˉV?ˉó?J?£?am??X@??V?????nUx?`k??`@???m??x@??|U|?blVT??è?ˉ??Wb?x????@x??k??V???b?@?°@??n?V°|?J?k?a?lè??U?a@aVwnJ°?°J?anXlw?@?ó"], encodeOffsets: [[104356, 38042]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/shang_hai_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "310230", properties: {name: "崇明县", cp: [121.5637, 31.5383], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@u?u?GPIV±D??{\\qJmC[W\\t???j?p?n??±??|ě?e`2? ?nZzZ~V|B^IpUbU?{bs\\a\\OvQ?Kas?Mň£RAhQ??lA`G?A@?W?O?"], encodeOffsets: [[124908, 32105]] } }, { type: "Feature", id: "310119", properties: {name: "南汇区", cp: [121.8755, 30.954], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@`y??NǖDwǐ???LxCdJ`HB@LBTD@CPFXANC@@PGBKNECCBB@EBFHEDDDSNKAUNBDMNqf[HcDCCcF?@EFGLEBa@ACoCCDDD@LGHD@DJFBBJED@BGAEGGFKIGDBDLBAD@FHBEF@RFDMLE@SGANFFJBANPH@@E@FJjRIACDMDOEKLFD@DbDAJI@AP@BGHFBCBGDCC@DCA@CECGH@FKCEHFJGBFDIHACEDNJDCVFBDCRKRLDLITB@CjNJI^DBCfNVDHDFKHAFGDIICDWBIF@@CFAjFJNJBBHD@CJ@AEFJ@@DH@BFBCPDBMFEQGDIFCNDHIP@HDABFACBJFHEBSZC@DP@@JDB?~"], encodeOffsets: [[124854, 31907]] } }, { type: "Feature", id: "310120", properties: {name: "奉贤区", cp: [121.5747, 30.8475], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@~T~JjZdDbLXDLCB_J@@FHFZJJIAGH@HGR@BENBLID@@LFCDF\\FpDBDb@FAHKFE?@dEDDdC\\GreNMACVMLBTMCCFCEGFAA@DAFDLMHA@OD@BMEWDOC@AS@KGAI_DcKw??ís????ctKbMBQ@EGEBEJ@@MBKL@BJB@FIBGKE@ABG@@FMFCPL@AjCD@ZOFCJIDICIlKJHNGJALH@@FPDCTJDGDBNCn"], encodeOffsets: [[124274, 31722]] } }, { type: "Feature", id: "310115", properties: {name: "浦东新区", cp: [121.6928, 31.2561], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@EN@JJLNHjLJNR^GRYVBNZJRBV@PDvbLNDN@LGNER@nCNQNuT_TIVFV\\Z\\XnDrI|[??2?JUHO?}CA@IO@@CYDATGFIEDAEBBAGCO@GJMCEDCJRHEFANOCADAEG@@CI@FE@BDIC@AGIAIMiEEB@DE@AJCXJDCJEHGBELGCUCeMAD]CIJiM@DSAKJKCLQDQACUECDMIFCBDJGECHAEIWCK@GLMCCGEACNKCEJG@MMBMC@@CIJUINT@JAJSTEPZZCP"], encodeOffsets: [[124383, 31915]] } }, { type: "Feature", id: "310116", properties: {name: "金山区", cp: [121.2657, 30.8112], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@L@BIHFN@@EE@@EFBDGDAADVDD@@EF@CA@IIsRE@GDAF@BF@CV@|FBCHBLCNHAFCADBMDCFZXHILBVEEQA@MWFARJJ@DCX@@TEFBLHAAERE@AJABRPBNK\\BrJ\\VHGND@CNADKDADQjGAGNC@GJ@FCFFHC@JF@@dLBDSFADHVG\\DTEPDDHJALIJkJDJCDIPE@YDCBiK@DONE@EH@BAF@HLJA@EIA@ALKNA@@FIFAFHR@NALads??yQY@?A±D?XUVI^BF@FFF@HBJEDFFGFEBSRkVEXGHFBMFIVW@GAEEFOIAIPKABGWEKFSCQLQBSEIBC\\FdBLRR@JGACFDDEF@AWB@LJJYNABBA@CUEGPaO_AIE@MYMFIGAEFECHSAAKAO\\[JEDB@E@MMA@@AGBKMGDFFCDDFEDFJF@NPBAFLHFH@EDDHBADDC@DDCDHHCDDFDABDAD@FEFOBCJ[D@HEDDNJBDDHABJIBBvGLBJAH"], encodeOffsets: [[123901, 31695]] } }, { type: "Feature", id: "310118", properties: {name: "青浦区", cp: [121.1751, 31.1909], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@RUNKdOFDJCbRFMLAHPLDN@JGL@@APBWYCKN@TU@SHGCEJIDIJKVIZVNM`iNY@CIE@CA@KBOEGEUFCCSADEIEFCDDDIDDHC@CKIeDCG@IG@DHWFEEGCH@@GO@@O]CNpeEQDBFME[JC]DGF@CKOA@QSB@GB@@GW@@ED@AQIJIAAFE@@DO@CFI@KNG@CDACAFEGKGBEGBDCCAIFCCLIECFI@MBCLDHGNAHSF@DMB@EEKBA@@C]DEICFG@ADBHGFKCDAKKHKD@@FHGAANGEEFCHKCECBCKG@ADKCNE\\[A[I@@mGBDQQEO@BCE@AI[AML@JGACLOAFKEMM@EQKC@CUCBCCBCHEA@FF@@FM@GEAJK@GNF@EXPH@FD@M^@HIADJCFDBER@DK@@DE@CAKFOCCBDHIBCNSB@GFC@GQEEOWFICGDUAEJIDBTAHJHEB@DIF@NE@H|HBDBEH@DKBAHEF@HEEUB@FGFGCCCE@AHOB@NH@PRLVNNFBX@RC?PbAvMtBfH@DJF@ELBFA@EH@HNED@FFB@HLC@CJ@@DJ@PIRf@HE@CFF@GPHD@DKE@FFBEFFD@DEFCA@DD@IjCRFBAHFDKD@HF@@PM@H@BlbDJDBFEF@DLXB@HCD@@IFCBIFEJD@FDC@FBALLF@PAACJERACAJCBD@EL@JD"], encodeOffsets: [[124061, 32028]] } }, { type: "Feature", id: "310117", properties: {name: "松江区", cp: [121.1984, 31.0268], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@DLDFRN@FNELPBDKHB@INK\\BBJF@ADP@RFCRHA@nJ@B\\[\\MFLDBCH@DLDADFGLEDFFMHBBGH@EC@GLLLCBLDHEAGBCH@DEFJ^C@DB@LAFFA@CNE@GTMBGHKCAD@NEJFDKJDDJEDBCDHAAFLHFHBEBDDCH@LMJ@DEP@@CF@BEJBJIBRC@@FX@@HA@@HTA@RPBDLE@CHD^\\INFAERCfFMo^D@PP@@HG@HDFFXECGH@@JDHfCLJ@DGDCCCJCCEDJFCFTBDDVEHFPFLAB@NBFCFKFC@CHIACNOHWHCAAFIDD@CDAGEI@ACFMF@R@R_@GQED@EGFEQEDE_IAHKAE?XCQUOQCUDEN@ZI\\DDmAMHCICDSOC@EG@BKHIGMIBCGOCSF[CUHCGEBCTKA@cE@@IGDEEEDI@@HMDBHiHCRCBCLMB@DMCGH[UqI[AMLOAAQIB@BQFBFGBAKFE@SW@CDI@QIEBNXB@FRUFKAGJYWDENCCADBBEMGKDGAAD{EU@@DAEE@CB@HQFJt@JDBE@@FC@"], encodeOffsets: [[123933, 31687]] } }, { type: "Feature", id: "310114", properties: {name: "嘉定区", cp: [121.2437, 31.3625], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@F@LI@IDKJADKIEJICADGACFECCJ@HKCAFOHAJI@aCBEE@ICAEB[GFGCKL@FGEIFADMLCAEJM@ELQECEIG@BE^QKKLQCA@EHBIGQ[GEHOMGGDHKH@JOECFCjCBEFDNCACMBCILGTABDLEEOEIG@GFIMM@CGKFBFCDE@@GEAGEEACIcGaHMFITIHDN[AKF@FS@OA@BK@IHM@KCGOKBENaQIDECcPMLQVFHFB@BFBKLGD@FAJOVGIACQ@A`LPCB@JEF@RU@ANS@@RCL\\HIFpRBFRBBDKLLDADJDGBFDABHBEDNF@DGBBBADKDAHC@\\JJFBDEH[DEFDH\\LX@XLBLbT@DNJLDCEL@VJABJNDHB@HBHYFBAA@GNFB@@AFB@AFABFLFBHFCL@HJBAFBLC@DN@HN"], encodeOffsets: [[124213, 32254]] } }, { type: "Feature", id: "310113", properties: {name: "宝山区", cp: [121.4346, 31.4051], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?m?o?i??[s[YEUJU`SCIEBCCWJY_LIICDWU@@FaBCJIB[ICH[@@CDKEE@MK@@IMCAEBCH@AMFI@SMGEFGB@FK@BHCAIFJNQD@FEBDFMBKGACG@ECWH@@CDDTOEEBGEK@GC@EE@GPHFR\\JHGA@FDBKRLL]RAFH@FJFDKR@FINBFKDCNEBFJEHK@DLEH\\HFADB@JFFDA@bIJGBEPDBGLI@DDEFBDCHDBIJJFCLIBCL@JKJE@ADHDBHJ@HIBBDFHBBAEIJ@BJFAVL¢?"], encodeOffsets: [[124300, 32302]] } }, { type: "Feature", id: "310112", properties: {name: "闵行区", cp: [121.4992, 31.0838], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@T@@ELE\\BCMJGJSNEbGdHDJFBJAFIEIFCEWG@@gMENSFCVJFAxR~B@IH@AIiI@GE@FGEAFQPDRiV[\\DFSGMHAXHDOMCJCDETBBNVJJI@DD@ANNNH@FILDDMFBDHNDHKL@XDFGLD@EHGFD@DDB@CDDHCDAEAHG@ABOJ@BIaC@CECLKPFNCDCJBiQEIF@@@OGBMIAEEBMTHF@NKEC@QFEGA@EBCKAACHCLJHEFHHB@AFCAIEACIC@HG@KCCDC[ECEED@KC@KJMAAFQ@GHG@BHIJYIGE@EI@A`KDWCaKcCiY}I}S[CYJM@CFDVPRRVWDF?LBBG`JCFRFEFFHC@RF@HQ`Q@E@ENBDJ@HFCB@DCCEJBBGDGXMPBDGJ@DEDELEDMA@DJF@DMZ_jMNYUUJILCJIJDFGH@TSVM@DLXZ"], encodeOffsets: [[124165, 32010]] } }, { type: "Feature", id: "310110", properties: {name: "杨浦区", cp: [121.528, 31.2966], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@V@CXJDKJZ`XIDDFADJvSRMDM@mFQHM@KCMKMuaOCU@BDAJSX@HKJGD@PNJCJWAGT@R"], encodeOffsets: [[124402, 32064]] } }, { type: "Feature", id: "310107", properties: {name: "普陀区", cp: [121.3879, 31.2602], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@F@@FHDL@HFFAPFCSDC@@XGFDH@BDLHNACEFA@ERCIMJEDBAGL@@EHAFENHHJ\\ONQBQCIBC[MKACKI@GGGH@I_G@CW@[DMHCDIBMTDHN@JNHEH@FJFPKFACSBKHDJNABDMDECAFiDEDFDIPG@GLHCNH"], encodeOffsets: [[124248, 32045]] } }, { type: "Feature", id: "310104", properties: {name: "徐汇区", cp: [121.4333, 31.1607], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@RADL\\NCPHFfLJaJ@FWLGMGIK@IFMDOYYFOTSBI@IMSAMSACFIDNDCPWGGBHNET[CU\\QjOCERFBEHF@@HjJBJG@@J"], encodeOffsets: [[124327, 31941]] } }, { type: "Feature", id: "310105", properties: {name: "长宁区", cp: [121.3852, 31.2115], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@HFFB@HF@DCAELENSJADCNG\\CX@@D`H@JHGHHJ@BINBFUGEDO[MCKQB}AwQEBUIEDMTNF@hH@FXEDFJEJIB"], encodeOffsets: [[124250, 31987]] } }, { type: "Feature", id: "310108", properties: {name: "闸北区", cp: [121.4511, 31.2794], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@CSG@BQGODUPWTOBQAAFMECKBGEMFKEOHADDJARMR[PGI@TEJBNG@ADBFND@JL@@NFFCL@D\\@DG\\JJADI"], encodeOffsets: [[124385, 32068]] } }, { type: "Feature", id: "310109", properties: {name: "虹口区", cp: [121.4882, 31.2788], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@bA@E@QHSXBDIMI@OHCLI@GTWBIACQAYIOFGCENBBARSPOXCVHPARH@DT"], encodeOffsets: [[124385, 32068]] } }, { type: "Feature", id: "310101", properties: {name: "黄浦区", cp: [121.4868, 31.219], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@NEHFLAFDHDPEAMZUHQQ]IMKJG@EPERABHBGRUCCNGV"], encodeOffsets: [[124379, 31992]] } }, { type: "Feature", id: "310103", properties: {name: "卢湾区", cp: [121.4758, 31.2074], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VDHQGABAFQFOH@LIiKKHEXI@IbAFZB"], encodeOffsets: [[124385, 31974]] } }, { type: "Feature", id: "310106", properties: {name: "静安区", cp: [121.4484, 31.2286], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@DLLB\\NPGLFHUDMYABEeKEVMAAJ"], encodeOffsets: [[124343, 31979]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/shan_dong_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "3706", properties: {name: "烟台市", cp: [120.7397, 37.5128], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@?L?LllVń2è°x????lò???b??V¤?Xn?l?V??ò??è°??Tè?L?±@?n?VU??2??k?V?k??2k?VVwUUVmUa??@KkU@?mUmmk@UwUkmW@UVIXa@?mw@a?KUL?a?x@Uk@UbWU@yULmKˉ@kX?VUwm@@JUUknWKUV?LUbU@?wWykI?a@w@mUI@a?UVynIWa?k?@@W?bl@@knm?K@wnIl?°Kna@?V¥?@?U???¥@UōJ?Xˉ¤k@?wmIˉ?k@mw?ak@@?lX@bUJ@V?bknWxkLkxl??LVlkLm??b@bU@?bU@VbU`Vb@n?L@?mb?U@?VnUVmnU@mm?@kIUWVIUK?VkkUJUnmL@VmLUa?VWaXamU@??U@KUUmV?U?J?U?V?w?n?m?@mX?V@lˉxn?"], encodeOffsets: [[122446, 38042]] } }, { type: "Feature", id: "3713", properties: {name: "临沂市", cp: [118.3118, 35.2936], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@?bXl?l@zlV@lXXm?kbVVl??U@Vn@@Vmb@X?K?VX?WJ@XXl@???èbVL?Ul`?@XXV@VVUxVbUxVb?|?@?WnXVJ@bnVUzl@?°?x?U?KlU@mUUnUlUVWVUnVV@XX°V@V?ll@Vk?aXVl@Ux@bmbXLlKlb@b@bUJn@@??b@n°x°K@an@@UlLVKVbXb@bVVnK°LVa@UVa@?Xw?KVxnL?U°@naV@UWUkW?ULmV?wYKUUla@aó_@m?K@aUU@??WU?kwVm@aVI°W?@@IUw@a±ˉ@¥kUVU?m@a?wkw?@?K@kVKk@maXalI@alL?WXblaVLVU?V@LnK?@?l@w?aXa?LlnUl?L?mV@n?°J@_VmnIVym£UKmI@WnIVm@anUVm?_k??I?WUX?m@U@Yˉ?@??@naW??IVW@IkK@klKn@naWI?mk@?a?bkKkLWn?WkLWmk_?@UaV?UKmLUw@mn£WwUmU??aóV@UkUm@UKULUwmJUX@WW@Xò?zVblJX?WXk@UVWK?X?¤UL@xU@?@?VUaU@@XmVkLmWkXUyYLmKXnV?@n@l?x@bWLnVVn?`knULmxUl??WLX?Vb@V?K@zˉxˉ?Wx?KUn@bk@?l?VVV?z"], encodeOffsets: [[120241, 36119]] } }, { type: "Feature", id: "3707", properties: {name: "潍坊市", cp: [119.0918, 36.524], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@l@@U?K@?@L@bX@@VlL@J?LUVnX@`üXn`V2mJ@bU@@n?b@l°xnn?V??°@???£T@lWn?nk?Jmó°w@kk?V?@??¥k@V@kw@wVm?a???m?a?£??XI@mln?Kla@mV_UK?@kUkw@alW?IU??m??@WUIl±UU?U?bkJ??@a@wUKUaVI?mXIWaka@m@Ul£XKVw@?UI?JUkmJ??V?kU@a??WK?ImV?@UxmL@bX`WXU@U`?kUak@@°UblXk?mLUKmL@VULó??Vk@@Vlbn@Ub@??aUJUb?IUlVLUVVbVKX?VlVXU@mbˉ@?VmKUw?LWx@?Ub@VUbˉKmLUU@aWaUaULkK@Vm@@bˉLˉw@m?a@?m@UUU@U|lJUX?V?mkb@nm?XVW?kb?IVxUV@VUbWLXV?LW`Ux@nk@Vn@x@VkJ@?V`mXk?@V?xV?@lV??I@VUL??VU?IV`°bVXXx?V@VWVnL@xV?Ub"], encodeOffsets: [[121332, 37840]] } }, { type: "Feature", id: "3702", properties: {name: "青岛市", cp: [120.4651, 36.3373], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?@nU?JXL??@blVU???nIVl?IVJ@?UxWLk¤@V@nlbXbWJ?nUJVbVL@x@b??lI?a?VVVk2VJ@X???nV??JkX@blxlV?@VLU`@nkb?Lkm@nWJō?ó¤?b?n???bUn@xlxU@l@?|@?U?l??UnW?@?n?mèx?U?V?I?VnUVV@L?V@?nVWbXb?UVbnK@UnKVmVIll?UVLUJVXlJ?@nnV@nmVUUm@??Vna@??K@mUaV_UaV@?aV@@a?an?lKUk?Kk?lwlKXwlm?a@UVI@akW@?l@?bnxl@°?nJ?xl@°£?W?IU?n?la?m?1?¥VaUUk?mk?W?IUU?`?@kk@???V¥?_?@???¤YLˉmˉ£?ó?wUW±īˉkōa???k?mó°?bW@UKkLUa?Vmz@V@?UxVn"], encodeOffsets: [[122389, 36580]] } }, { type: "Feature", id: "3717", properties: {name: "菏泽市", cp: [115.6201, 35.2057], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@@¥?IVUèmT?@UlU@Un@VW@UVmkk@aVUUKVY@UVknK@UV@VVnIV?@wn?mwmKXaWaXI@UV@Vy2blkVKkam?U@kb@Um@VmUkm??KmkXKWwkU@Ul?@UnK@UVUUm?KXw?UVL?w?K?U?@@Wl@@wUkV¥?@@I@W@_V@VWUw@UUa@a?aWa?@@_mKUw?lˉamzmV?@WK?nU@k?WL?aUK?bYVmV@?UW?b?@?X?°UbW@X?m?Vlk2UJUbmL?x?WUzl?ˉLl?@VkK?XUbWJ@bU@ˉ@??kb?LmKka??@l?_W?XoVbUz@J?n2V@¤lX???nV°?Ln`WbXL?VlKVU?xXn?lXLlU@bVV@?XJWLUVnVV@??@n?l?°nn?V?KèbVX?JU°VnXV?kV@@xVL?@?Wlb"], encodeOffsets: [[118654, 36726]] } }, { type: "Feature", id: "3708", properties: {name: "济宁市", cp: [116.8286, 35.3375], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@nam_nKl?VLXa?Il`?_@KVVXI@m@w???@@k@K?n?@n`VbV@@L?L@KVVn@VX@?VL?Jl??@VUU?U@Uam@Uk?w?KWaXam?kJmIU?VUèbla?UnV@kVKl@@lXL°kVJ@VènVJUX@V?LXl@xVLnU?@VK?V@a?IUaV@?b?U?x?K?kVJXUlV???UVa?I@WUI@KlUnw?mWk@WXIW??U?L@Wna@Um@@U?Vk?UUlan?WW@kkU@y?kWk?aWVUlYbUU@k?JUIU@@??Jmaók?L?K??UUkKWLk@WbkUUa?bmKnˉ°¥V@XwV@VanaVaU_@Wlk@Wè@VUèVV??m?ak?lKèˉlLVUX@lK@aX@@kV@VmV@VwnJV_UWUw?X?am@kW@wVUkKVIUUVmU@UV@IVK@aUL@a?V@Lm?UKmx@???mLkUWJ@?nXmlUxUL@Vkn?VU?U?@V?L?`Ub±LkV@kUK?b?@?U?Wó_mJ??@Wk@@X?@?V?L?xUK?VWx?LVnUV@VmL@Vk?@VlVXxWLnl?Ln?VlUnn@@VlaV@n?lbULkl±aUzU@@VWJXbWbnLnxm?@xU?mJUUU@@VmLUl@VUTVLUV@bllUn@VUXm@@VkV@VY??nUV?J@|nn?lnVlL@?Tb°KVV"], encodeOffsets: [[118834, 36844]] } }, { type: "Feature", id: "3714", properties: {name: "德州市", cp: [116.6858, 37.2107], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@?¤@VmbVXnVVbVJ??X?@?ll@z?lVInl@?@bVxUb??l@èbla?I?xXVWb@L?@n?ULWVXX?WWLnL@`@LUVVL@lVn?J?U@UUk?a??n??V???b°?V?T?X????Iüb?a?b?W?XTWèz?mnLVJ°ènlV2lbnW@?@U?UV??mnwmkkKW??kla@mVIUKUa?aUwmn?JU@@amIk@@bVlkX@mmUk?lUU??a@_UaUU?V@w?w?WkXmW@I@WUaYU@UXaWUU@UUVW@UUUWUn¥nUVa@m@k@alU@wk??LWa?@UUm@@wn?mU?wla@anKn_@alK@Y?_?@@WUUUml?ka?I?yU@UwU_WaˉyU_mWUwkImm@InWWUk@@UVWV?kWˉU@V?L@bˉb@l±|@?VV@lUbV?@?kxVnU?l?XV@b@lV@nIWxnb???@UU?L?x?xmˉ?aU??wU@mU?VYKULm@?bmKUXó@"], encodeOffsets: [[118542, 37801]] } }, { type: "Feature", id: "3716", properties: {name: "滨州市", cp: [117.8174, 37.4963], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@Vb@`?bV?kVl?nV@nlWUk@al@nJ@bV@?InmVx?bVbVLUJ@nkb?lX?lLnlmx?nU??V@V@?mXn?lb?@nnVx?b@lnXV@UJ@nVx?xnxVb?Vnˉ???@@wè?U?l?VI?b?@??mk@¥k@UkUK@aWakUóJW_UW@wkkWK@U@K?@XU??UkmUUalKXala@U@kkWlkèl@k?V?mVIVmU_?a???wnwVW@w?wU?@wU£?wkJWI?yUI±bk?V?UJ@nmV?Ukl?Xmx@lnbW?kV?UkLW??xkKUUmUkb?J±??L?xUKmkUmkkW??a?mUaVk?J?_2K?@U??W@w?U?¥nUWw?K@aYUk?VaVK@akLW???ˉI@bnbVxˉJW???WbUL@???nV@VmbkUUV@I?ak@@bWak@WJU??JWL@bXV@??@?V?Jlb@zUlU?UIm?nbV?mz@°UV@V?bV@@V@L@x?LmKUnmJVX?J@VkLW@UVUL@b"], encodeOffsets: [[120083, 38442]] } }, { type: "Feature", id: "3715", properties: {name: "聊城市", cp: [115.9167, 36.4032], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?@VWnL?an@VKTL?UnVV@?xV??bn°?w?w?KVV?@??maXwmJU@@k@aWUk?V?Umlw@?U?Va@kUU@?2¥@k°a@a?K@U??U??@mmm@ów??±¥ˉ@@w?Kmw?I?¥kUˉUmakJmIUa?VkKUkm@VUUa?U?@Ua?KUKˉ@?w?UV?UIUKVw?k?¥?w?bV?@xn?@lWnXxlL@`?XlJX|l°XxW|@|Ul?n@??@@Um@@VXVmx@?ˉbllUnUJ@VULVn@b?xV?VL@b??VlnVVblV?ènVlIVJ?L??lJ@xl?2?"], encodeOffsets: [[118542, 37801]] } }, { type: "Feature", id: "3705", properties: {name: "东营市", cp: [118.7073, 37.5513], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?U?l?@°U?w°ō?ˉ??????X?@w?w?a????kwV?ˉ@???Ummˉw@k?a@mV@@anIU±m_?W@_mWVU?K@IkK@UW@@a@K@??L@Vk@±U?@UV@lm@mUU@kLm??xV¤@xV??x@xUXmx?x???bV`UnUJ?n?U@l?kkllX@l@VkbWbkLVbnVVl??WV?@@L@VXLll@xVXX`?IlVXb@bVLVll@@|nl?è?@?aUJk?Vè?è@x"], encodeOffsets: [[121005, 39066]] } }, { type: "Feature", id: "3701", properties: {name: "济南市", cp: [117.1582, 36.8701], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@2|?ò?xn@nn?@V???°VlXU?UX@Vl@XVmX@JnnlJVxnXV`°zXbV`VxV@?z?Jlbk?VnVV@X?@?`@TkL@bm`mL@bkb?xnVm?@xn@VV?@Xb?Kl?@xkV@b@l@nUbmVm|XVVV@VUXVVV@XVWb@VTVVb@X@JnXlW?X?x@x?UVV@aVKVUX@lK@U?IUWnIVmnL?K@w@K@UU@?a@UVU@ˉnyU?man?VJV?Vk@yka?I?U?@@?WU@aXK?IV?XIl@Xb@al@èb@JVUlVna@UmU??@?VKXaò?X?°IUwma@aU@UU@wVW@??w@a?I±`kb?Ukw?UmJ@Ukm?UUkmKknUV?@mJUk?aWk?a@K??mKkU?LmyXaˉ_@WmImm?b?LmUkVUbUV?J?b?UkkWJkU?l?IUm?k?L????lK@knaVmkI@mWa?LUK?UU@@VmLUV?LWK@UUU?WUkkVmx@?Vl?|"], encodeOffsets: [[119014, 37041]] } }, { type: "Feature", id: "3709", properties: {name: "泰安市", cp: [117.0264, 36.0516], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@n???W?nx?L@x°@?¥Uk@?nwlUVl?XVV@VXL?KVUnK@UV@?VVL?KXb@nlJUnmb@lkL?????K?lVn?J?klVXIll?V?a?IVUValUnV?K?annnJ@X°`Wbnz?KlVnL??@L?bXl?bVlnI?@VUU@UmV?@U@U?¥@?VmV@@_Ua@m°@@??kmUUm@UVmn@nX?@@a?anJVUVL?mlIVJn@nkVLVa@KVmVLXVVL?@@U°bn@VaV@@K@aVk?bWaXUVymU@aUImW?X?@?¥UaVwUaVwUUU@WW?@k_?VUK?a??@??nmxkV@LVJ@X?JUb?V??kUWVUI?l?L?w?V?aU@Vb?J@b?UUL?@mVUK@wWk?K@UVWUI?m@UUIˉlWK@kk@UL@lmU?Vkb?aUVV?nJlIn?WbXb?L?xVln@VbV@V?UV?@k??IUK@?UWm@UU@L?K@KU@Uam_ó@?m@L@l?@??@x@nWJUU@L?`k_?JWbUKk?mLn`mb"], encodeOffsets: [[118834, 36844]] } }, { type: "Feature", id: "3710", properties: {name: "威海市", cp: [121.9482, 37.1393], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@VbUnVVUx?????@T??ˉ?W?L?U?W?1U??ōˉ??Yk????ó??óL???U?wm¥kYmkkKóbY@U|@?mbˉLk?mJ@x?Lmn@lk@?a@X?@?lXbmJUz?V@bVJ@n@x?blJXz?xV@Va?KVUXLlmVV@In@Vx?UlW°@nLVK@zXVVal@@V?w?bVK?L@bnx@?WbUJ@VnXVlVxl@nnnV@?lV@L??"], encodeOffsets: [[124842, 38312]] } }, { type: "Feature", id: "3711", properties: {name: "日照市", cp: [119.2786, 35.5023], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@UaVUUKVk?JVaVI?b@?Vam@ka@Ul@?U??VK@UnKVLnKl?kWVa@ˉl@VbèlV_V@XWW_@anKVwUmVw@?@Uny?UVblKVLX@?a?ˉó¥m???è¥??T1l?Uī??ˉK???b?V?U??U??XmakJUnmV@bUnmJ@XnJVLn¤UzmJUn@`ˉIm?U@?n?KVkkm?KWb?b@x?k?@mL@K?UUVUKkbWa?XkK@bkJWbnbl@UL@l?L?@lx?x@b?nUVlV@|2°@bVx@J?@ˉXUJ@bUnlxV??X@?VV@b?L@n?`@bkbVVTL?xnU"], encodeOffsets: [[121883, 36895]] } }, { type: "Feature", id: "3703", properties: {name: "淄博市", cp: [118.0371, 36.6064], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@n?lKV@nVn@@kVU?@2VVaU?@wmKXU@U?UWwUWˉaU_?JUV??VK@U?JU?@kU??w@Ul?nWU_@?lI@U@wUml@@mVwX_?KWUXKVa@UVUUw?JlaX?WUn?@mla?n?UVWkIV¥V@VVVI@a@akakLWKna@aVwk@WU?bUlk@?k@UˉUWWU@mUUVUXkVmVVV@nkV?L?V?w?ˉk@WVXb?aUl@bV@@b@xkVVXVxkJ@nk@@?VLUlVb?VXUVVUzV??LVbUbV??VWVkLm?kJ@n±@UxU?VVkV@b?x@òUX@xVVV@°J??X?lK@bULUbl?TV@b?LXxmV?|?V@x?XV??@±L?`?IUlVb?n?bX?llVnnlVLèw?K2??IlanVVVlL?wX?lK?VlUX?ma@knw?Wlk?VnU@mVIU?l?2aVJ?zXJlI"], encodeOffsets: [[121129, 37891]] } }, { type: "Feature", id: "3704", properties: {name: "枣庄市", cp: [117.323, 34.8926], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@?yUU?U?kl@@aVm?LXw°?°w@y?L@UUaW?XK??VknwVKlm?_UmmUXK@a?w@k@mU?WmUL@?@?@£@K?bYV@akw?aULm??bUK?LUU@lm@?°mL@nUJVxVXU`mIUxU@UnU@@lW@@bkLW@UVkK?°kLl??b?nUü?UUV?@@Xkl@XV`UbmbUbU@WxU@ˉ|m°nL?aVblVXal@XKlLVVè??L?K?lnb?I@?V@VJ?I@lVVTaVkXU"], encodeOffsets: [[120241, 36119]] } }, { type: "Feature", id: "3712", properties: {name: "莱芜市", cp: [117.6526, 36.2714], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@lmnLVlèVln@VnI?Vlx?Vla2_?JlUUUV?Vw2@@mlIn?lKXU?UU?VaUa?KU?VyUUWV?UUaVkUK@?l@@mlIUwUWlU@w@aU@@LU@Ubm@ˉa@V?@UKWUUKUn@LUbUKmlm@UIkJ?nUKUVmI?b@b?@mWm@Un@VVnnV?l@?ˉ@@nVb@`U@Un@??|@V@VU?VnV@"], encodeOffsets: [[120173, 37334]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/shan_xi_1_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "6108", properties: {name: "榆林市", cp: [109.8743, 38.205], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@?yV?nIW??W@?kU?L?Y?Uˉ¥?IUWW??UWwXˉm?@?n?@?ü?è???@a±k?±?w??mw???mU??kk?Vy?Im???@?Y1?Wnw?V???a?zmm?|ó?kVmx?xU?V?kVm_UlVlk?°IV?k?mJ?a?|k??Lmm?V@XmKn?lU???VXb?b?@Ua?L?ü???w?£mKnm?w?@Uk?bma?V???n@mˉaU??Jm_k?@kW?Xyl@@k?amw?LU?T???mW?zUK???Uk?±@?b@nnK?bX¤mzV???Vx?n??ˉ?@òknW??VUbk???è?Wkk@Va???U@?mUkb?Y?@Y¥?bk??XV`kL??Vm?alUUa?nV±nwmk?J@In?°KVwˉUn?@¥???U±b?UU?±??mWb?KWn?Um`U?VK@bmn?m?è??@V?L@x?xm???°?n?@VmK??2Vl?lKk??@?êüV@VXLlm?|U??V°??ˉ2?@¥?@????2I?m?nnb°b?KV??Ll?T@U????ü°IV?TYT?l??x@??āW???Ux?è??@?°?Xn?l??°m?n??V?2V°ò?|?aT???@zll@bTā?l??nK??óè?b2±?I?òˉ??V@?lxnVlk?JlaXwō???@Vn????l???U?L?èō??xè?lU?@?xlaU???Xm?IWmnk?VV??VW_@aèWUUmk@?ˉ?Vm????±Wˉ?n¥V?mkXw±?Vw??"], encodeOffsets: [[113592, 39645]] } }, { type: "Feature", id: "6106", properties: {name: "延安市", cp: [109.1052, 36.4252], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@@kk?mI?mUwVkU??U2Wm??Vkm@?m`mI??U?Va@?m?X???V?V?kyUy??@?l_Umn?W??KVk???¥?a?w?@??@a????Wa?kUm?aˉˉ?a±£kx?mmxUwY@?xmU?bˉK?wó?Y@kmm1Ub@lklVbmnnVUV@x?Ukn?JUX@??L?Wkw?L???wWJk??Lkt?xWz?JUn??k?@?k?ü?èK?è@°lè??k|l?n@l?@lˉL?°UU?V?°?1?`m?mXk??bUa?V@Uˉx@|????UUmlmU?Vm?nnmlkw?@@??|???LmxˉIkl??@|m?°VUxˉLm?@J?InlmxU2?mVbkV?bUnè?lKU_?WlīèaT|?@?TlanV@??V??Ubl@Xl?ò??l?Va?UX?lm@?°???èmUw??U?nyW£?amL@m?a2@l??V??VL?ynX??Y?V??Knx?b@lk@WzX?@ll?n`?IV?°b@n?m???Unb?aVl?@?xmnnL?¤?x????èKVb?@?aWa?U?ókVm?nL@W?Unn?Kl??¥?bnIl?U?ˉJl?UkVkn`lUU?V??wnwlU???¥nn?y?b"], encodeOffsets: [[113074, 37862]] } }, { type: "Feature", id: "6107", properties: {name: "汉中市", cp: [106.886, 33.0139], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@lKnb@n?lWb°bkx?wVb@??nl????¥?L@?X?l?è?Vbl?èK?b?ak?Vw?ml?2`?n?@?nVK?l?k2x??°|VU?J?w@?n?W?T?VkU?ó?@¥kw???Um?XˉW???k?@?UymIUwlUn¥?mUk2a°ˉV?@?YVè??Y???Vl??@l?@a°±@_kamm?b?a@???m@???Kkn???@m???ˉL?w???LVxmb@?kV?@mwˉwVakKW??X±?ˉVkx?b??W?@n?x@x±bóakb?@YmU??@?ó?L?k?VUm?kˉ¤YLUlY@Yz???x@x?°???b?m?XˉaUJWˉ?k@b?W?w?wWx?@X?Wl?b@???V?èUlw?Lnl°VlU?|?U°¤V?UxVXUxlbkVVl?I?°??VlU°m@k??UˉxUl?LUlVL@b?°?In?°ènK??@xTa2n?aUy?XUKVk?W??èa?z°JXUV?V_?JV??z@?nb"], encodeOffsets: [[109137, 34392]] } }, { type: "Feature", id: "6109", properties: {name: "安康市", cp: [109.1162, 32.7722], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@?b?a?è?w???????b°a?XV?TVU?T@?aX?m¥kImxˉˉ?V@anU@U?é?L@?ˉ¥V£m?@Yèb?K???X°w?????b@xèblxèˉ???m?UV??nè@??üL?¥??n?°Vnn?K?a?_è??wU??aX?m?nW??ˉ?kl?LX???ō|Ya?Vmb?Un¥±w?éV??an¥???U??°am¥?£?Y@??wVw?¥nU???UmmVw?m?I?aóVWxkblb@ból@??ò?¤?X??ˉX?xk??@ó??x@??x?_kmY??£kblb@`ˉ2@bk??@k??U???T??TU@?U?ˉ°±bVl?nm|kVVxnJVz@?l??òX?W°n??V??lx@|?üV?UlY?Xèm?@è"], encodeOffsets: [[110644, 34521]] } }, { type: "Feature", id: "6110", properties: {name: "商洛市", cp: [109.8083, 33.761], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@2nl??b??°aVwnKTI?`°w?X?w°V?°@????T?V?zTK@x??@a?L??@b@?nLl?@?ln?mnLVw?a?bV??VnbU??V?°?bl??bè@???b?@n?@amI?yUI@???Vm??U???VwkwlanJ?ˉlwó¥@an?°J?_???@??nó?ó@£l¥Uwma??@??Um±V_?J?£?J?UW¥ˉ@?_k?ˉ?mU?VUèˉb@wmL???Vma?Iˉ¤?IUW?X?K?|?a?JUb?I?lU?óVmk@W???@?mU??V?n???°kw?a@w?a???āˉx?W???L?a@Tn?U¤°|@??Kèê@VmV@b?U°°nwlJn|W??bY@V?"], encodeOffsets: [[111454, 34628]] } }, { type: "Feature", id: "6103", properties: {name: "宝鸡市", cp: [107.1826, 34.3433], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@@??£@?°I?b@ˉ°yn??aU?l?U£?Um????@@ylUT@@£kWUˉWaU£ˉ?V¥?@kbˉw?n?¥?kU?nU??@?ˉ±?kUL?m?@?m±_k?ónUxl??b?a?Lk?Ua??k?W?@??K?|??k??m@?Ua?xlwˉaXa?k@mmakL@?m???@?m?@l?XV`?n?KU?°°@2?¤U?è@Vxm??x?Kl?VV2aVw?Xla?Vlx@?UVn??nk°?VVL?lkI???J?kˉV@?kn??n@lznmlVkzV??VVx?@Ux?z@x±?Vx?xU?l?kb?@???k?VXl?k?V2w?LUKlw?J@a?IV¥T?nˉün???@nk?l2k?@?°?aVbnI@????n"], encodeOffsets: [[110408, 35815]] } }, { type: "Feature", id: "6105", properties: {name: "渭南市", cp: [109.7864, 35.0299], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@@è?L?xU?°?T@m?ènl¤nU?L?wX`@TYL??U?mL?????bVbnolnT@???x°L?anV?wT@Vxnw?nlw2¤?b°°?bVn?lXb??ó?@b???@?x?b?|??V?X??£W¥???ó@yó?Y??£X?m????kU??@???ó?k?a???@?ak??a?ˉ?UV?ma?UU??a?bUxmK?nkm@?k?mK@??xó@ˉnˉK?|@??èlxkx°n??ˉKU?ˉW?L@VYIUb?yWbX??°"], encodeOffsets: [[111589, 35657]] } }, { type: "Feature", id: "6104", properties: {name: "咸阳市", cp: [108.4131, 34.8706], childNum: 14}, geometry: { type: "Polygon", coordinates: ["@@?IXy?wly?Kl?XIVa?????a?£??ˉaVU@a???wèō?a?L2??V?Uln°WèˉW?Xa?zVaTJ@U??@ˉYb?wly@£k??±W??@ka?IU??n?@ˉ?óm?U?b?Uˉl?IYb@¤Y@kV@z?@??n??VV¤k?V??bm?ˉz@°?aˉJ@??¤@??bUx?b??@`?xU?±oVX?W??UnUJ?L?ˉèKlblmèX?°?U??°L??lkTK?@èxl_°?Uòkbl?"], encodeOffsets: [[111229, 36394]] } }, { type: "Feature", id: "6101", properties: {name: "西安市", cp: [109.1162, 34.2004], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@°2@???mVVèèl?|?m°xla?@U|°èV¤XbV°lXTaèJ°k?V?a?V?n°??@?mV??Jlb?@Xò?2lò@¤kz?xTa@°???K°XV?°L??ˉmlwkw??@ó襰L°m?@?w@a???K@b??@wYL?y?U?Y??@??ˉˉUóx?Wˉx?_YJmLUxˉb??óak?±mYUU??Wˉb?a??ó?ó??x???b?a?x?IUVˉ¥ō?±w?l"], encodeOffsets: [[110206, 34532]] } }, { type: "Feature", id: "6102", properties: {name: "铜川市", cp: [109.0393, 35.1947], childNum: 2}, geometry: { type: "Polygon", coordinates: ["@@?x???KlxèX?K@?VW?Ilm?V@wVUmUnmUalk@kVaUaóa??ó?nKV???TK@YW_?xóKmVk£?mn?Y@ˉ?V??wóK@?ˉXkm?V?U±??K?b???x??@bUV°b???¤?b????Ub"], encodeOffsets: [[111477, 36192]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/shan_xi_2_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "1409", properties: {name: "忻州市", cp: [112.4561, 38.8971], childNum: 14}, geometry: { type: "Polygon", coordinates: ["@@Vx@lnbn|WlnnU?m?°?2V??V?VVVnUn?olz@l??@J?@kXWVXl@L?a@??KUL??lbnKlLnK?LnK?Xn°?bVV@bUVl°Un@LnaVJUbW@UX2l?@?wlVVI?Wnk?a°??anV?Kn?°?UWˉ@?aVUVk@Un@?aV@ValwUanmWU?k@WVUUanaVwnLVl°@nk@mVU@UVK@w?LVKVU@??K@UUKVUV@@bnL?a?V?a??lIXmlKX_°KVV@bVV?@?zV`kblI?V?Ul??L@bnV@V???ll??VlIXW@k?a?U2blK?VnIlJ?albXXlWVn°Jn?nL@l@XlJlaX@?X?W2@l_VmnK?U?blU@mnkVK?ˉ@U@?ma@kX¥V?makk?L???a@a?@WIUUV?X?WWnk@a°a@kkm@kUUmJm?@WUUUIk`m@V?kaWWkX?Km?Xkˉ?@?WK?Lkak@±b?w?@?a?a@aka?@maˉ@?L?K??kKWbkm???±?U?LUK?VVk?mˉLUVVb??UwUWˉbm??U?L?xWJ?@?klmkUm@@KnwVkVK@akw?@@aˉb?Kkn?VUI?bˉmmbk@UbmKUL@xUU?@klmLU?lVXI?VVVUVU?U`mLXVWbXnW`?2°xm??xU@m????wU@mbU@U?mbkVW|kJ?@?X@`ˉIm@UlUVVn?b@bWJXnmb?JUU?UUa?@UamIka?x?@@x@b"], encodeOffsets: [[113614, 39657]] } }, { type: "Feature", id: "1411", properties: {name: "吕梁市", cp: [111.3574, 37.7325], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@@a@w?@?wlbnJVb?@Vb?VVV?InaWmXI@a?aUmVUVkn@°J@_?W?@lIX¥lUnaV?V@naV@?x??n?V@?wn?ˉw?±X_WmXaWUnKV_V?VUUU?UWJkUV?nKlkˉ??@@kmKUa??±KkU@WmI@WUIlUUmVwX??w@??UlUVw?V?@?Lnb?W@anU@U?aVk?@l?n@na?JnUèLVa??UUVm??VKV?2L@mU_lK@UVWkU?a@a@UˉaUa??ó?Ub???Kk@@a?kˉmVaUwV???kWU?mK@UUKmXUWYwUa?LUU@aWJUUU@UaY?U@WL@V?KVaVI@WnU@alIVK???@kI??mIkJ@?m@???@@_?K@x?@kaW@U?@Vmn@?UK?@mI?JUXV¤XXWlkK?kkK@XmJVakImJU@ó?ˉLWKUV@nUV?LkxmKkLma@kXKmm?L?a?b?LmK@V?@mXV?Ux?X@`nL?aV@@VmLUVnLlL???b@???°2nx@b?VUxlb@VˉbUV@zV?XV?XVx@lVn@Vnnm?U?@LlJXV?zˉVWVXb?V@bmn?VUVk??t??@XVxmbUlV?Uln?W?@?Xl?@VLXò@bTJ°|?L?ò?@nU?b@°?X@?XbmVU?V?nb@x?x"], encodeOffsets: [[113614, 39657]] } }, { type: "Feature", id: "1410", properties: {name: "临汾市", cp: [111.4783, 36.1615], childNum: 17}, geometry: { type: "Polygon", coordinates: ["@@nW?@@UnL?K?a?b?KnnWL@lnblKnLlw?KVU@mVUXL°K??V@nIlJUbnI@WlL?llLXkWWU£VW?InJ?@VL@?nm@UV?X@lb?@@w?L@`?@??n@V@lw?@n?VmVX?WmwnUl??a@_lK?wVlUn°xVKVXXWlU?VVI@K@K?n°K?wlVlU@kna@?V_?Wn??m?UVm@kXml_@m?LlKXw°m@_?JVUV@X?l@UaV@Va°I?lk?VwUkV?mw?UmmV?n@Vˉ@K?U?wmK@UˉwUVY@mJ?U?nWK?@@UnKVa?_lykUmK?nm@?x@?UUlwVk??XW@??a@U?@@K@?kIV?nammVakUl?@wX@@k??ˉ@?VVbml@??°UbULmlVbnb?K±??V?KVXUJWa?@ULWaU?U@@U@aWK@UkxUK?LUUUJ±UkL@V±kk@kam@UV@l@LWl@?n@VVUx?LlUUx@VUV?U@a?IUl?L@°mLU??bkUUaWUUaUU@aWK?LWJ@bUL@VUVVbU@m?@a@??kmKmn?lUK?X?WUblb?xmIk??U@xWb@lk?Vx?LX?mzVV@bklVVUzm?@bk?@?Vx@xl?U?@lUbV?nl@?Wxnl@n@?UbV?mL??m??b@`X@lUX@@xlnkLWaUJnnWV?Vn@l?@bULVV@l?V@XnJVX"], encodeOffsets: [[113063, 37784]] } }, { type: "Feature", id: "1407", properties: {name: "晋中市", cp: [112.7747, 37.37], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@@?lInJ??lJ?@??ULkJ@bmV@XUJUb?L@UXKV@T?VbV@VVXI@bVV?KVbTxVXnWVL@VnLV?lX?òU?VxUb°n?l@bl@?L??Va?ò?òVb°b@VnLnnV@lmn@lb?U?V@??J?UVV?Xkl@lUzmJ@x?Xkl?bUn?JV?Ub?nU?lb?V@nlLX@lak?V`Ub°?@XVJnU?L2KlxnI@KV@lbUbVV?KnVl@?zlm@U?@n??I@WUaV?l@@mVU?@XkW?@?nkVKV??_Vw?y@knwVa?@XalU?@?Vnml@?X@V?L?KVaTbnnlJ?I?mVKn?VVVInVlU?@?m@?m?XK@UmyUI@mWUUakamw@wUwmLkakwV?mK?w@wUam£?y@am_?W@?UU@knmm??amU@WUa@knw@??UUUUV@n?Jm?@mVUkKVUUUkKmw?KUL?KUImV@lUn?n??m@mbUK@°?bUnmbUmkk?WUb@am@UXkK@a±@?V?@????V?UXVxUVkLWlˉ@@bULUlm@@nm`?X?lWakIkm?VUbUL@Vm@kI?@@K?m@?VaX??I@W@aU@kU?VU_?K?b?Jkk???b@nkKmL?w?W@kVUU?VU@WUI?JmIXmma@_kyVaUUlkUm@?kU?xˉL?m@L@LUJ?UkVWXUWULˉwVmUk?xkL@`?bk?mVnx?XUWUnm??@kxU@"], encodeOffsets: [[114087, 37682]] } }, { type: "Feature", id: "1408", properties: {name: "运城市", cp: [111.1487, 35.2002], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@?Vl?nJ?wkaVa?X?WVL?knmnL?l@?@bn?V@UaVU@UVK@aXI?KXL@bVVVbXVVblV?aV?nK@ˉ?KVk?J@b?VVU@UVwkV?KVwUUm@@?Xk@K@kVUn@lbl@2l@UlK2VVIVV?KVLlw@VXL@b@VV@V?XbVK?@XbVIUW?L?U2??LmaUankVKVa?ˉ@?nkUa?U°@????n@@kWa?UVaXUW?@IXKVw@U????WU@W@?@UU?U@mn?@?`m@UUULkUmJ?IU??@@U?K@U?@?an??ak_@wmKUwmakV?kmK?V?kˉb?w?`kwUI?xˉ??a??mn?@@?m?mUkV@wkKW@kxmL?Uk??LYk?xYwˉlóVU?mV@āVVX|W¤kz@`Vx°?2???@?Ul@x?ê??°¤V?VlXLWnXxmV@nUl@?"], encodeOffsets: [[113232, 36597]] } }, { type: "Feature", id: "1402", properties: {name: "大同市", cp: [113.7854, 39.8035], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@2£?yl@????@b???b????X??a?K?nn@??llèx?nVnT??V@b?nXllL°K?bVb@J@b????@?U??xlKXLlKl?Xk??@Ulk?JlkU?VKXU??VIVm@_n??L?a?l?w?VnU@UUwma@a?aYa?LmUk@@W?@U@@X?wVWYUUUk@@VmL?KV?nwUw?aUL@`mz?JUIV?UaUw?KUaVIlJ?an?lLVUn@?a?@VV?@@UUwVK°Vn_lJ?L?éW@UUU?@?lm@aTIVwXW?UUkkm@U@a?U@?mwU£VWU_kWm?XwW_°yUkkK@U?K@kkUVym?óK?U@KWI?bUak@mJ@bkbmLk??Um?kVU?W|@lnb@?@V?°ULml@nkV?a?VmLUnk`±@?X?WW@kb?|X?ˉ?Wx?I@xmbmxXlWV??@b??Uz@J?b@bTb??U@Wbk@?xk@WXˉV???WYbYUkVUU@alI@a@akLWa?m@UˉUUm?L@K@aU@ˉVUk?KmX@`@?kJ@nV?Ub@?lbV?XVW?ULU`VbkLUV@XWl@bXJ?@??VbV@Vl"], encodeOffsets: [[115335, 41209]] } }, { type: "Feature", id: "1404", properties: {name: "长治市", cp: [112.8625, 36.4746], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@Uk?Lky@I?JVa??@mTaW??y@_?W@_W?XVlUVw?@nw°K@m??U?Va?mV?kU@mmmnLVUmKXa?U@IlKVUnK@UmWkX@WV_V?@akU@a?KWIXy?IUVmUn?Ua@?WaXUVKVmkUWVkU?LU@@V?b?K?b?IUm?@mbVL?x?WUUkn±Vˉw?b?JUbmLkbmK?K?bVnUb?V?KUb?KUbmL?Km??b?a?KkUm@U?nn?VnxU?VlUxl??kˉJUbU@Vbk@W?U@UVóI@`ˉnWxkL?K@nk`Wn@lUn?V?nm??XU`@?mb@lkV@?VnklVVUblz@`nbWnnJ?IVJ@XUVV?UV@l?X?xnKlL@m?aè?ll?I?a?LV`?UlVV@@b@X?JW?Ub@??n@L?@lJn@@UVKVa?UlnlJXb?k?Wn_@mn@VkVK@a°@XklKVUUwVWU??????@?U2@@blLVWn@@bVa?XllVnnaVm?a@ˉVLnan@???mVm@knUVJ"], encodeOffsets: [[116269, 37637]] } }, { type: "Feature", id: "1406", properties: {name: "朔州市", cp: [113.0713, 39.6991], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@XXWVXVWnnlnn@è??@??xl???V?nbl???V?è?UVl??@?bln?Lü??mUkU@Ua???@WI@aXk@WVUlKUaV_VKX?WUU?ka@?VaU?@mlI@?@_nW?LVl°UV@@b@LèKVn°V@V?nXblK@b@bkJ@bVVlUTVTa?Xü?°UXWl@?wl@XaV@??Ya@a?a@IVy??@a??XUWknwna@w?JXw°?W?è¥kI@W@kmKm?ˉIUmkXWWka?bkImJ?UkL±a?V?b@lWXkJ?Uk??k??@UmU@a?Kk??V?UkJlaU_?y?@UU@aUUˉLW`kLWnkJó??b?U?bmK@aU@UVVL@V?L@?UVUL?K@xUL@VUV@nmlˉ@UkmKUxmbVbUV@X?lXVmnVbkxUbU@?bm@@VUlUV?b°@VXˉ?m?"], encodeOffsets: [[114615, 40562]] } }, { type: "Feature", id: "1405", properties: {name: "晋城市", cp: [112.7856, 35.6342], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@lV?L?b?an??LnKVa?LVa?L?UVaUm?a?LnLlanKVa?I?a°x2UlmVV?X?wUKna?@Vn?J?a?L?a@UV@@alUkKVKnkmmVwUk?w@??@kxWUX?W@@m?k@aUa@aˉa?LkKmwkUm@kL@K@aWIXm?V?X?WkUVakL@UVK?w@aUK@UUKmLU@ˉn?KUwV?UIWJ?UWmka?@UX?J?k@UkmW@kLWK?V?x@bmI@VUaVU@aˉ@UUmV?KmX?@±`?kYKVxUL±akL@V?b?LkKmV?@X?WVUb?VXb@lm@??@lW@@xk?lVUbnnmbU?lJ@?@L?@@V?b@?WX??UlkxVV@??wn@ümnLlVkz?`UbmL@V?@XL?m?VnIT@VU°x@VnL?x?V@LU°"], encodeOffsets: [[115223, 36895]] } }, { type: "Feature", id: "1401", properties: {name: "太原市", cp: [112.3352, 37.9413], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?@VV@wVKnLVal@na°n?aVJ?Ulm?L°a@b?@lx@bULUlmx@Ln@lVkn?l?@XI?w?K?Vn?°aVXVx??UaVU°K?nUl?UVL?K?V?2??lnXalLè??L?KUaVkUanmWU?a?@WwkUWUˉyˉ?@anIl@@aVU?m?I?ymU?LUUVakaU@@LmJkw±L?KmVUI@Wˉ?VaU_l?kbW@kK@m?UkaV??mVaU??IVm?alk?W@wnIVy@klk?WUU?V?I@??U?Vkam@knU@mmmK@b?blVUX@VkLV`@n±KU?UL??UnVV??Ub?KmV?Imbm@k?ó@Ul?b@VmV@b?Xma?K?@?UUxkV?V@??xW?UxVnkVVJ@XnJ@XlV2L??VbnL@l?@°?"], encodeOffsets: [[114503, 39134]] } }, { type: "Feature", id: "1403", properties: {name: "阳泉市", cp: [113.4778, 38.0951], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@°@nb?@lb@b?b?b?@?x2al@lb?KXU@m?kUWkkmUU?VwV@XUW?@?naVklKXblKnL??nLVanImaXKlL?a?V@U@KUKW??al?XK@£WKXUV@VU??UUVW?_V?@W@?@K?@??U??IWmXUm?UL?n?JkImmYaUb?L?K@U?Wk@mn?U?@kVWb?@Ubmx@l?zUx?`U?ULml@?X?Wl?@UV@nk@U?Vb@X?Jm??@@Vkn?yk@?z?J?nUV@bk@mJ@b°ò°zXVlVXx?@?bXVmnVbUlVb"], encodeOffsets: [[115864, 39336]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/si_chuan_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "5133", properties: {name: "甘孜藏族自治州", cp: [99.9207, 31.0803], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@?aXam?ˉwm?@±°wUwV@UaVw2K???U@U?U?¥?a??@£T??x?Knkm?X¥?IU?Y?Uwlk°V??@?è??KUwlkUyV1?m?x2Xll??W????l?w°U??n????J??lˉ°V@w?IV?n?nUll?L??V??L??X?W£@±??@¥k_?J?kUé?k???wXa@??Llw2?Vx?b?m??èxlLè??VWTnˉm???UYl?kwl???m?ULmwUJ??@wkm@?lUX???????Va??U??ˉ@w?ókbV?mnU@@yˉI?K?V@1?a?é@k?mTU°¥@aˉ?@anKlblU?¥@ó??@??w@wk?la??Y±kˉ±@?YU?mYˉw?@kb±?ˉakXWükXU??U?¤X_?w?V@¤?XU??b?U???IUl?Uk??@?aX?mlU?lèUV@?mVk|Vx??@|±?ˉ??ˉˉanlW?ˉn???w@w°KVak£m@kl?Kkn?U??óK?īlaUaV£?@??ˉ@??U?V???Y?X???l??ól???WU?Jˉ£mx?L???oX??VlUll2bl???l??xónn°Y?U?mJU?ˉn???V@ê?°U??w?@m?@?ˉkm?Xam?ˉaUwYKU¥??m?n¥Wmn??1n±????Xê±?n???U?l?k?Vòˉ?Vn??ˉān???@?k°V°ˉ?Vlk?Vxm?X2??@?VxknWü°?U?ˉn??Y?@`??Y2?ò???zn?mX@x?è°K°??U??ó?Y???ó??ê?ò?bm?k@V?????@ò?l@n?ü?ê?x@?ml???Jˉ|óx?°Y?m?ˉL?è?ā@???l°?????X@xm?kV@z@???°bl?nT°J@bn@??UV?Uó?óL?°X°YL?xUn?°???n@lnL@??@?n?K?xnUnV?In?m?nx???I?óT@???bU??mV??¥l?k??wnL?m???¥X??w?U@w?wU?T?@alUU???U?Vkkm°aU?°ó°w°U???b°a??2K?ˉ???@èbT??a???XVm°In?????k?Vb?a?J???£V??an??k????n?üU@anKn??bèm????nI?é?£??"], encodeOffsets: [[103073, 33295]] } }, { type: "Feature", id: "5132", properties: {name: "阿坝藏族羌族自治州", cp: [102.4805, 32.4536], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@l@@t2I@l??VL°wnJ°U???è?Ilw?V°¤n??¤Y?lè?L@???@x?l?è2??_??Vè?J?īlbX??èV?kx?V??n°?|üb@è@nn@@°?Uè¥W??_UalaˉˉU??k???mVwk??k2°VxlL@¤?_@x?`è????b??@l2alX?a@bnK°|VK@nnWmx@nUnl@@l?l??k°l°UXkmW@Un?`k??L??W??èVx?VVlVk@l?IXb@ylXèW???W?z?y@?mI??2??J???@n?°@V??J°a??@??kV??k?aUw?KVw??V??@nkm?@±?k???J???In?m±nI??T??Xè??x?Uèbüyè£V?kw@kVUV??m@??a??übèm?UXwYx?Un¥@?°????a?JVk?aWˉ?@W¥?U???@ˉ?kU??@a?I@mmanwT??W@???mw°?U?k1±W?xVxˉ|U°?z?W?w@?°?V?kˉ@??y°a?£?@?m?nl??a?YYakwU?±a?Iml?n@?m@kkV?ˉ?m???°x??l??@??XVTml?Y??U?¥mw?¥VaUw??X??????aV???lwU?ˉ?U?ó?±??x?V±ˉˉnˉm???Lm?n?m??@?_kJWa?XmwU??K???@mwXY?U??kK?w???n?aUw±?kx?K@?Wb?x???lVê?lèIl`@|??@2X¤W?ó??KUè???KkkmVm?UèóJ@xˉUk°???I??m?ō?ˉV?x?k??X??òkk±W?w?nUoVzklVx?L??@???ˉUklVxT?V??JW|n?ml?LówY?@¤???b?|?V@V?V??±LUxVbU@Vxˉx@2n?°xn?Wb?b"], encodeOffsets: [[103073, 33295]] } }, { type: "Feature", id: "5134", properties: {name: "凉山彝族自治州", cp: [101.9641, 27.6746], childNum: 17}, geometry: { type: "Polygon", coordinates: ["@@?ó?Knw°¤?IXV??k???k??èW?Tè?üU?V???°@???@U¤Vbkb???L??èVlm?Llkn@l¤UbˉL@x?x??°mX?mk°b?°°?2?@¥??Uwl¥nU@?VUk?V?nkW??b?@l?èVVk?J???V?aV??W@£?U?xW`?£èVV?lWX?lW°b2?la?@°xnTVü?T2@l°T2?èkbl?@xèx@??ènal£nU??2@??TK?nn¤@??°U??nV??XU??bn??UVbUlV?°LX??@lV?èüUnK@_?y?XVyUwmIU?V??k?¥??kkVˉm±n?@?nˉüanVV??z@??b?wüb?m@w?a@k?mk?@??a@?VUUó?w?@nb°m??X?mnVbT?V??anw?J?ak£lw???L??nY@wl¥?I?ó?@U??L??kV???óˉkVmmw@?n_?Vn?°L??@é???īV?Y@Y?U??a?VY???ˉ?l???l?@óT???@ˉnkUó??m±?IV?UwóKUn±ˉ?K?w???KY?V?nl@?óxUw???£??Um???Y?K??YU?lmK?£?UV?@Tè?W|?ò@??nny?@nòm?V???@°Vbl@VlnUUwl?°a@???@llnk°lbnKWān?U?VxU??2??m|???????aU?Vb??@|m`móX??Umm?x?@±Tnè?2?Uˉ?m??V?m@w?U@wY?Ym?L?a@??V?Uk?l°ˉ?VlkV?|U?mx?aULUèVx@?kIUxmWV?ˉVmèˉ?U?nl?è?@m????VWx?b??W@k?m@kVV|mlnn@?ō?l|???xk?"], encodeOffsets: [[102466, 28756]] } }, { type: "Feature", id: "5107", properties: {name: "绵阳市", cp: [104.7327, 31.8713], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?ńlV°??@???VX??U???J?w?@è?m??£°K?k@?n????@?w°JUwnw@w?bVb?@Vl?LUw?a???aUklyUUVakwW?XwW?UxkL?mn¥m??wk??UX?lJ?w@a?Ik?°X?¥W?2?l¥?aU??Ilmkkl?èL@m°nlWU??aW??@V??@UaV¥@a?k@?k1?K@a?K@k?Kk??X@VU@kx±V?èkIWwUVUkkK?@?a@wkmlˉ@kUWn£Wa?aVwnaVY?wˉ@UaWx?n?J??UxU?ma@L@?mbU??U±VVnkxU???V?m@k?kKW°?X@¤?Uk??nU|ˉ?k?mLVw?K@Uób???V?|?L@?±êX|mVT?küYnWU???@k???ˉw??n?°òU?lln@@??mnk?J2bV?lxTb?T?bk??m?n?@?¤ˉb?z@?l°Uòˉè@??x?X?yVˉ°¥Uw?w2XloV?ˉ?nx??@??XY?mxnb@n?J@b"], encodeOffsets: [[106448, 33694]] } }, { type: "Feature", id: "5117", properties: {name: "达州市", cp: [107.6111, 31.333], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@Uxn°?bn?lUnò??nn@n?¤?LnxlU???V@??l?x°XXxl`X??VW??L?è??±nèb??°b@?2x°Kü??°??V|lJnU@|?T?JT??m?LT??xU?lb?V?ann?al??V??X@ln?V?mU?ma?X?a@aWm?@?£@w?JV?kk?kkm?nk@?mna@??al??K???J@?Tw?m????@ambkU??@??KU??K?U@m?akˉ±??a@a???aVw?Xlw?±??V¥l@@a?k???@@£?m???YónWV@??nY??x?Umb?aVkk?k@m???@m°?YyXm?ak??ī?@@?mb?@@xm?nb?@mx??k?WL@?ˉb@WUXmW??WKkbm@kx?Xmm@LUl?xlêóK?nU??all?L?l?Ló°m?ˉJV?U??K??@x?K2ā?|l°"], encodeOffsets: [[109519, 31917]] } }, { type: "Feature", id: "5108", properties: {name: "广元市", cp: [105.6885, 32.2284], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?L???x°??|?W???Lè?@xTKü°TnVx?ālònJ°a@w??Vˉl@X?WknKnw?Vè?°XXa?lX°VI°b?W?n?a???¥@??w°?n@?y?@nkT@°ˉlJn?°Ièl?U?lX?@?lUV¥VUUYT?UU?@Uw?JUk?m@y??lk?WUwVw??WJk@V?UK??lUkaV?U?mLk?m@???@U??Ik`@??UmlUkV?ˉ?XKY_mmˉ@U??`kwm??l??±KVˉ?ˉVk±Vk±kzma?KUn?±?bk|±?X??|ˉWl??J@b?xkIW??Vl??xn?m|?nlKVwX?WxX?lxUbVVkzVl?b???bVx?KUk?@Ua?a@xmxVxˉI?x?@??mò@è?lˉL?¤n?"], encodeOffsets: [[107146, 33452]] } }, { type: "Feature", id: "5118", properties: {name: "雅安市", cp: [102.6672, 29.8938], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@ln@x?èVInxVKn???k?lxküVT?ònèm°nx?@???LV?nx?WXblI?`?@n?m?n??K????l?U?mU?K21@???Vó?ˉVyTW???UVmX??bnw?KU????@UmmIUbˉ¥Uw??ˉ??m????manUm?UU?l?k?¤?aˉbV?U_W??m???±?Ul?U?l??V??kU?@W?ˉKU?VkUa?Vm??aV??WU??mV??ˉ@?m£?mYL??±@?èmVk¤mb@??|kVkamL@b°?@bˉ|YV?n@l?ê?b@o?U?L°J@zV@nmU?la??@x?°Vò??Ub??ó??òW?kV@ò"], encodeOffsets: [[104727, 30797]] } }, { type: "Feature", id: "5115", properties: {name: "宜宾市", cp: [104.6558, 28.548], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@Vlènl?XnWLX`m?2nV?@b°x??ln?Vm?nn?@@?°?Uz?lV°nT?òkxl??w?`UnVb?m?L@albTKè??mü?°@X???@wmW@??K?L?lV??LV???TL2±??kw@?U??y@1lKX?lKVa@w???@?w@??a??Uˉn?@?@w?ak??aō????K@???VakUWm?wkb?¥mL?ak??@?T?°ˉxVVT@V??xV??VWx?XlxU??@k2WV??ULmèULV?kl??V??JVx±n??ˉ|mw?@m??l?kkl±@k?Uk@ˉ±??K??kxl¤?b?Imx"], encodeOffsets: [[106099, 29279]] } }, { type: "Feature", id: "5111", properties: {name: "乐山市", cp: [103.5791, 29.1742], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@k?V?k????k?V2UloèIlx?LXèülU??XU?mk?bVè?x°@??@?°Knnn@m??IUbnJ@bVI°b°±@?nK@mVakk?Klˉnb?m???èl@Vnèl?UUw?wmwnm°¥?L??lLn?U@Va?Imbk?mK????nk@m?b???LV??JVUU??VnkV?mb@aˉJUa?kk¥?IW¥?Klw??mYUˉ?kVyˉ?@??@mmn??Ukm?èˉw@aU?±mn?W_XKWmk??mUkóbU?Y?UanmW???ˉnma?@?xV?UV@??b@?l??n@l?b@x?n?a?x?a@??yU?mU?bm°@?m?n2U°ll?āè|?lU?V?nJVxUz?W?z@`mL"], encodeOffsets: [[105480, 29993]] } }, { type: "Feature", id: "5113", properties: {name: "南充市", cp: [106.2048, 31.1517], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@è2Vm?Lnblyl22UUl?°U°2L???kn?lx?_V?°@nnT`WL°èU?Vlnk?V@?l_?JV??@??n@l?nKV£?????UVˉ?m?@laX??U??UbVx?@Vk?JU?°Jn?@??wUk°wn?U?V_nJmknmmˉVwkˉó¥±??L@w???LV?U?kU?bXˉmykI@a±Kk|ULmaX??Vmˉ?K?z±?klUIVb?J??kLˉ?l??U???U?lU?kJ?Um?UUkVVklKk@@a?U@??J?2?x?|k?@?±oXnWb?x?U@x?x@l?L@b?Llo@è?l@bU|Vb?@U??@X??bV?kXˉm@n?Kk?llkn?JV?"], encodeOffsets: [[107989, 32282]] } }, { type: "Feature", id: "5119", properties: {name: "巴中市", cp: [107.0618, 31.9977], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@V?U?lbkV??VLU?l@XI??UxVx?Xkl??@t?nVl?IVx?@VVY?VTUVU|kV@?W??2?@V?Tn?@Va?b2W@??K@?XUm?UW°ˉ°Ina@y?_lWn?lLUb???Kla@?nkUy???x°@??n£?Y@¥mVkIU¥???ˉ??ˉL±w@?ˉa???a2m?????KX??UW?k_WwˉW?w?k@??U??kVmw?K?£@mmm??m?kVm??amnnlmIU`V?m?ˉxVl?x@?m?ˉIV?óIUl?@UwVa???VW?kb?@?nU°?V???èU¤"], encodeOffsets: [[108957, 32569]] } }, { type: "Feature", id: "5105", properties: {name: "泸州市", cp: [105.4578, 28.493], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@VVXwVKn??wnV?n?l@bˉxmKUbVn°°X°@blL?ènV?@Vn?l@U?LnmmUna?VV_?V@wnJ??l@@kkKVólaUwnJm??wU?lm@a??Ua?KV?nJWbT?@V?wVLX¥VV?_T`?w??W?T?mmnIn¥W?@k?WV?ˉ@?°kI???Lk??@k¤±Xk??nmYˉUl??KWVˉk?lUwkL?ó?@U?@??w@?XV???WX??@UbVb??V??_k?V?lU°lnw?|Ta?ˉnmmˉ?U??m¥nkVmk?l_ó¥ˉU?lˉ@???L?k?`ˉ??LUyˉ@mw???°?_??U°ml?n?VUT??@????_?JUnV?UX?bl??b@x@?m?V°?è?b@??x?@??@xUbkLW?kL@o?zV?@?lx??±2"], encodeOffsets: [[107674, 29639]] } }, { type: "Feature", id: "5101", properties: {name: "成都市", cp: [103.9526, 30.7617], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@°n°m2°üU?w2???V?°?V?kxü?U??b????laèL????@k?wV??@??n???è?UY°Kl_?V°U?`Vbn@VbèL?aVU@???V?nIl??UUa?±lIk±?@V?nKm??@Wa?K?|?lV?ō?kK??Y@maX?mwˉIU?@k?V?wUmVI???????U±??@ˉè@x?K@w?LUb?K??@mY£@yóUóóUxkI@WlIUa?b?a??Vā?Lmx?aW?Un?V??YXUt?°U?è?@?±o?LnVVòk?ó?"], encodeOffsets: [[105492, 31534]] } }, { type: "Feature", id: "5120", properties: {name: "资阳市", cp: [104.9744, 30.1575], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@?è??UJVn?x?U@lV?°JnxWènbT@??lL??U??k?¥?LXb?@n?mLU?@zlbXmlnVynL???JVb?UnómUnamU?an¥lKV_2aValW??n@n??bV??K°ˉVblW@kk?lUnlV£°W@w?UXk°KVw?mV?kwVyVI@wkm?V?_Umm@U?mbk£?xUaVw±V??V¤kLWxU@Uk?b?y?X??óm?°V@@zYòkK?n?±U@@_VVk??aVwnLWa?lm@@kkVVl?|kIV`±n@w?K??k2?a?VUUV¤?nkxmUkVWVnLUbVb?`kUU?mLU?mX@`?b??XbWLX??n"], encodeOffsets: [[106695, 31062]] } }, { type: "Feature", id: "5104", properties: {name: "攀枝花市", cp: [101.6895, 26.7133], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@?b?KTnT?@x?V@x?n?Un?°??V?±m?2Y?@?wnn?VW?n?n_@¥??UaV??b???èü?n¥???±V?UwV?m?X?mLkalˉkm@k??@?ˉbk?VxmVUkk@Ua@ˉ??U?n?m??@mz?m@ī??X¥??@Y?xU|?????Ukx@?lb?UWVX?mV@x??±@@?ˉxU??Ln?m??x@nXL±lUUVw?KWak@Wxkb?T???bUn@??@@xó|??"], encodeOffsets: [[103602, 27816]] } }, { type: "Feature", id: "5114", properties: {name: "眉山市", cp: [103.8098, 30.0146], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@??Vx°|VanJVn?@?b?aVbkJ@XlJVw???V@zT¤@n??èLVa?K@x?L@w°??@2??V?ā?mW?XKWaè??a@_nWV?nKV?lV?_UaVamKXUWwnmmw??m£@ynU?kW??UkWVkkV±?kJm?kK???Kˉ|mnnx?xVx?V?kUmk@?????nmak°?LllUb@nmL@?ˉ2ˉaUJ@amIVa?Jn?m@mmˉL@???ˉ@?wU??anlV??WV??kW??Kkw?Jk1±V?U?l???V?2è??nX?V`U?°a?b?£?l?kVVn?mVnb?è??èn°?"], encodeOffsets: [[105683, 30685]] } }, { type: "Feature", id: "5116", properties: {name: "广安市", cp: [106.6333, 30.4376], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?VlIV??k?V?ā?Vk?°?lK??èIUaVJlk2??y?Ln°?UW?nbVKl¥2L@blJnzW°?alV°In??ˉ?K?k?Kkk?bV??m?Lké?wVk@Knn?Wlwn@laXL??nXVW@X°a@?XKl???nw?@man?@w?@na@??@?w?????wU?kUWb@mk@?|?¥mU?b±y?n@bml@?kV@??lknVbmVnlm??b?kˉbWyk@V_UamJ@I?@Wa?VXamIVWkUkbVa?UUx?@VnkVU??bkKUxmK???@W??xnV@n"], encodeOffsets: [[108518, 31208]] } }, { type: "Feature", id: "5106", properties: {name: "德阳市", cp: [104.48, 31.1133], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@nUW¥2é@??K?¥?Uè??a@V?LUxnKl?°?V¥èml?èV@£?WXˉlLl?n@U???V?lwUm2U?VV?na@?@KnbV?Vw???I?mXwW?kIVwY??VUa?I?èmKUzkmWnka@y?@l2kJ?2Vb?Vk?mJU???@?UV?b?KUam@Ua?_ˉV?Uk`ˉLVT????mü???@Uè?x@l?????KkbW???VxUb?|nx?|?V"], encodeOffsets: [[106594, 32457]] } }, { type: "Feature", id: "5110", properties: {name: "内江市", cp: [104.8535, 29.6136], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@2èlUUllX?VX??lmV@zn¤?ònxmnXxlUnVlw?mU£VV?U?bl±???L@x2mU_lJ?¥UklU@ln@?kXbmKUxèbl?UU@`V@?2?mlLT?@yU@?ˉ?n???W?z?aVlV@XwlKU£???aVaUwm@mwUVUwk?l?V?2Ll??KV?m_@y?kUm?@mU??kKmxkIU?Y?@LUJ@n±?ko?LXb??@mmIXa?@mamnkW???KU??x?_U`UklwUw?mUb?V?2?akb?mkn@`?Umò??VxUb?I?`U??aYè"], encodeOffsets: [[106774, 30342]] } }, { type: "Feature", id: "5109", properties: {name: "遂宁市", cp: [105.5347, 30.6683], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@T?UxlJX?Vb°@?xUTmbUx?bXbm¤VX@lk°ln@x?bè@lLVlVUXxlJ??2UlwV@@UèWl??L?w@w?V?wXaWm21@?lī?¥?w?±?I@??V@bl@kLUllUVVn?@mmU?wX??bVb?@VUkbmam??W@k?a@??k@?laUa?@ˉb@??mmwó@@lkXUaˉ°?LU??am?m@ó?kXUb±bU`kLm|?bnVmbnVm?"], encodeOffsets: [[107595, 31270]] } }, { type: "Feature", id: "5103", properties: {name: "自贡市", cp: [104.6667, 29.2786], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@lIT??bV??_?JVaUw??n??V@_lm?nla?b?±?UVa?nVxkxVlV_?`?wV??L??lXnmnb?@WbnJ@n??Wa?Kl12?@mVI@KT?V?lJnw@aWˉˉˉUmVanL°w@a?k?mmU?xm?ULWxUUYKōèU??KU??k?K?L@?nX@x??Wèˉ@???n?üYLka@b?K?nUaVm?_?xk??LX|?Jl|?lVb°I@bnaU?ml?UV?UV?IU??K???a@nml????nLl?na?JUbV@"], encodeOffsets: [[106752, 30347]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/tai_wan_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "7100", properties: {name: "台湾", cp: [121.0295, 23.6082], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@\\s?@pS?}?aekgKSu??SsM?`?CqZ·be@Q^o@?gieMp??]}?}?c_Kk?{?ù??A?r?[uom@???Jiq?m?qˉBq]ùYgS?k_gwU-isT?E?????iqiUEku?e_?OSsZ?aWKo??-q?yc?Y£w}????S§Z?S?N¥SyL??±Ks^IY?Pd?Y[Uo?Fp}′\\?\\j]?eü?ò?¤??ā a\\bn?U?o1ìs?j?[cí?E???`?f???K|V?D?dKGpVnU?FjpH?F`?B?[pMox?jbp?xp???|??üòC?2??üAp?ZG~??d?TàV¨|??`|?2tx~\\~|dFf^zG???h?dL\\h?????OaP?lV`p\\]Xpll??¤?CpQ|oF}fMRi?NSon_2q?m?M?NM?\\?"], encodeOffsets: [[124853, 25650]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/tian_jin_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "120225", properties: {name: "蓟县", cp: [117.4672, 40.004], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@EUDAEI@WNMNCBFAHFFNACDJDPBD@@GD@DIFFHEFGDBDEQOFG@EI_KG@OcJQM]RMEKBGPG@[LaCIICBWK?CEEG@WBQHCDFD@HSLEJI@IHWECFGAAEKCGDBFCBSBIDCKKHEADMJMFABKOKEQAA@IEEG@GIQAEK@OZEESMOL?lu@SLUTYFQCMG@@SQUAYKAACA@IB@BDB@B@DC@@BGAEFAA@BEGKJCC@AGAIHA@@JC@QEIP@@A@EGIDC@O@C@@@@CJCWKABFLBBEBSQGBAAMIEM@AKBcJEN@BEBCFMAEFEF@J@BG@BFABECKFG@AFQ@@F@BEB@@A@@AAAKAE@GFGDECEFEECBKIKDELDFEDYH@EIACDCHKBEB@BAAC@ADBHABKJIAIJICEDGDCD@@A@A@DHCHJHDFEFGBKRKBGIK@GIMHSBCH_BOJECCJCFKKMD@DNJEDEGC@OJCJHRUL@HRJ@H[DCNKDZHCTFDHCFFKR`TANVDFZRDLFARB@HPAPG`ILAR@TERNDFNHDLCLDDCXDYbHF@FEB@LDDVE@JPNfXPINCVDJJD@NJPAJHLXHDNANHhB@DPNLRMTBFRBHHr@`NBFEBOCCBIAQJDHCHLHFA@HSDCRLFTB@HEFLNF@PELBDJALFLTC@EPFLLP@tUHQJDfIHGTB^JTCPDLKAIBATFPADIEGECEMJ@JIAIHGECFEAGDI\\SPOXAFCL@BQTQBBTMZECYGAHA@GJAE@HCAEME@IECFKJADDBABLTHHG@ILEAMNDJCDHEBF@@JNFJELDFKTOT@JETBFFHBHEHKI@@IJEJ@XKEOUMS@AF@CEB"], encodeOffsets: [[120575, 41009]] } }, { type: "Feature", id: "120114", properties: {name: "武清区", cp: [117.0621, 39.4121], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@FW?μ@IFCLIB@EHNBp]AGEAKAEDMGZKFGBGME@ILGP@HEFB@BXMEAHUGC@IHCLOD@X[NWHWPKAEF[@EKIOL@EKGBNMJ@EIEHKBIC@BAKMIACCFQZCF]DB@ERAKADIHGEIBCGIIECFaGLZO@EFCNGAGDGAKL@BMG@IE@ADSDEH[JGC@CGA@BMDeK@EIACFE@@GG@FIAMM@CCGC@EM@ADE@CFMAAGHBDKIEAJG@DOGCDEKAGIS@KFCHKAEHIE]BeKNO[IFIOELC@A]GMBKVYCDDgGAICARc@MW@AQE@DGI@@AQ@@BKBAIQQYEFW@CEADIGGBCEIiMEMF_LGEKMBBDWEBGRC@E_CHYGCH_IAED@FFBQh@FGJaJ}AHRAREF@bE\\C@CT`FHC@\\BBF@BID@HGDDJ@@FAHKBARECKDAZBJIVNHCTA@EREAMLHDAFFBVFFC@RNRETHD@FOJMACH@CAB@P@DF@@FGDWE@FFSIEMKQDYCCHKb^JADOCIDGNDBdBCFJB@EC\\A@BJEA@JAAAD@HHD@LFBCFF@BERDHNhZQHMBGHOACCEBWEGD@PSJKCGEUD@CINLFGHE@AJK@HDABBHTB@F`DBFLBBHEDARCFG@ABJBAPVFE^FBGLGCFG_BMLEXGAAFE@@JNRVJHFALFBEHQJCTbNDHCF@PlFLJSXCHFHfVBTNJ\\BPJXC^FAVNFCHFB@FFH@JF@\\ABCFD\\BDMCAAJKQBGAILOEGHILECQLWFENJHADC@QxNHFJNLDFA@CBA@D?U?mR@FBL@BD"], encodeOffsets: [[119959, 40574]] } }, { type: "Feature", id: "120115", properties: {name: "宝坻区", cp: [117.4274, 39.5913], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@TZbB@JHD@DODCLM@AP@LL@BNH@ETFN@`E@DNG@CHLBCJA@AICFKDDBKA@\\N@AFNAGRBFjFFFL@DHLBLFQPcXAZMJ]GAVHAIZJFNE@JpDRRDCLFDGXA@EFF@CFFPDfEBDB@DCHCFCJDJIJBLI@I@CB@@ADBB@FALADGDC@@H@BB@FZGFCCE@@FMLALJDAFFFEFDFCB@@AHCF@L@@BBB@BB@FC@E@@R@BEL@HEFD@G@AH@AIB@@@FEFEBALDDEFAFO^IF@JCBBFPNJJ@D@PRDCEKBAXL@BIFD@T@JE@BHHJORFDI@@B@JGH@@B@BDDLIFFHCD@D@DEE@BAAAB@DAF@B@H@NGLJLMRDNMfGIEPMI@GDAKK@KIDIJ@GE@CFDN@FE@GFEPGV@TCDFKHBBF@RW@DD@@ID@TJFKIKLI@EP@IGBCLAEKLEN@KSHIGYACSD@SEAMBBMGEBMQBCMIGKFB[D@HDLPHDBC@IFITDLG@IIIFGVBNJDLN@VIRI@YIAIHIC@CLKZCBEE@JECEIHEAKGDGECBGEEM@@DA@CCCBBEGA[GEDBBoNAAH]MKiIAWKQoIIPMFQAEEDMH@FMSUYIeF@EK@BIOEKJEBICFKaKP?FAFSE@LWCCFMHDDEKESBOGBKIEIODLG@CCDEQCEDWEMDIEIB@EHGEEDAEAa@@HqDEJGF[AECCFa@WCEIKAAEQB@FCAE^YDERDDJBLNABD@AJGLJF@FNIAMLH@FPKLJ@FE\\BFOLGXMXW\\C@KPGD@JHDGVFBWN@AEAGFO@KH@JNFAHEHYLNHFCLBFBBHo^MAFGA@KJED@Jó?EX"], encodeOffsets: [[119959, 40574]] } }, { type: "Feature", id: "120223", properties: {name: "静海县", cp: [116.9824, 38.8312], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@NGFMDATCNDR@CCbINEHNJA@C\\EEGVE@IhE?[?w?epc¢·2?^QEKIEKIgiQDkehY£uSDBMkUDOJDHC@GF@CAFBFEN@C?Q@BeP@@G@HD@@MHQKi@[IGCOCESE@GMA_OcCGDu`a?@VZzKDkJBLNXGDqKEWE@cFEFA@?ISIi@@KMABJGBcMuFEzGVH\\ATSEUBeA?LCEMG@CEBUHUCGXaBPtUBBFIBFTDFF@DDKBFNGBJPHXDDMDCLJ^mBIHIL@LR\\@LCR[@@z@NFD@LLBNb@RHDBNTPT\\F@BJF@BXCFBHHBDLFB@HODADE@@JHVXCPDHCFTLBBFNCDCCCU@@GAABEHHZHBCAEdEjFDD@GfD@DXFCHF@ERFDLBH@"], encodeOffsets: [[119688, 40010]] } }, { type: "Feature", id: "120221", properties: {name: "宁河县", cp: [117.6801, 39.3853], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@BFLBFJXDb@DEFD\\BHEFIrC@Gb@FBCBFFGH@FJAJFNCXFFCRDCFDDH@CKJPJFALPHTALFCFGCENDDKXF@ETEBO?bLELJDFALIPFAJL@@FfEZJTVENG@CNFFRBNEJOpJLRBXjJNLG^BBpMAAFC\\HHBAFDADDB@@CN@FFAHFDCHLHFBJGFCFUNKJJTD\\XUXF\\^F@DDDQXXBRLRCBDFEVCDLVDpUl@LEDJHAPRFGL@CETGPBTCDDVI@CFF@GFDCCVGLKEK[Y@MECISG@BKNSCGCKWEAaEBEKNGFSECO@GGM@GYI@D?CMLHPTF@DJHAVVNKEGDETJ^[TJNNd@NOAMFYJ@@GFANDPEJB^aOadSTQSI@MHBDIEOKCG@EEFCKCqXO@@DMFENCDDHCCGJ]AKFoDaGGHYFDHKJiCMFGC@EQ@AEHGAC@IEAATKOHGIC@IXIFEo?GE[JCFCDHNmRADFZMF[EEBMO{GU@AOW@@]ZeHBDEHBKEfQkuIWBs?@EC@d[@[^EDMTKCEEcI@cDAB@FCBCACmOCG{PYHeBgPwPFDDALFFFCHQGSD@BHFAR[TaFYXMASUiGFL@DQNCJI@@D@PLDN`ETEFIGMCGBCE?~CAIFDPEHGEQPHJADFJGHCJLB"], encodeOffsets: [[120145, 40295]] } }, { type: "Feature", id: "120109", properties: {name: "大港区", cp: [117.3875, 38.757], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@JFFL°_`ONJKDDFIFZN xlb~yFVNR?rdJGzDPVFBCTNND\\UR@E`F@@Ip@IWGUoawOEE@?DgK{?EEMF?C?b??@?KwOCDHHKBDJCDEEEAGHOABFABMCgDLSQ@CFEB?MgYIDQINE@AUSwSAdYEHQMEyK[KI@GRMLE@@OqOoBOnpJ@BmEAFHL^FDB[C@BBDVFAHFJENB@sNEjQAMYsUgCSBGDJH@\\LjGR@NC@@G@HO@AfR@D?M@EFEADBE@@HGDICCPlVANTC¤vgZlfRChjLJ"], encodeOffsets: [[120065, 39771]] } }, { type: "Feature", id: "120107", properties: {name: "塘沽区", cp: [117.6801, 38.9987], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@|ODHnPBDADEDA@CB@ddJFFLDNSFC\\]\\@@cFD?@nACOMW@M@ITURBRZNHNWRQ?oO?j?f?cq?AqeiD?íyó?FL|Ch@DFFxPpbHVJXo@@JCTR^BPABQA]^MB@bE@@FQBFVJRH@FXtPNZSBAja@@N?DT?LJrQTHFXZFB`"], encodeOffsets: [[120391, 40118]] } }, { type: "Feature", id: "120111", properties: {name: "西青区", cp: [117.1829, 39.0022], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@@LHAHRHATh`LHNHDG`HDGZ`D@FQDAHXFACNAFLVRTBFOfHDCVBFQH@HSXHEPFB@LDBF[bDbLFKJBFLADBDjLvCPEI]FGEIGCBEUSjcFiBIVWfaHCjN^HtwBBFGPBJGjFBEGECGDONMFAP]TDHQOWCMGAMHKIJEIGQ]aDlUG]VGEGDC?{PEbBZmE@@GH@BCA@FMQCFMYMJECELCMI_Pˉ`]R±???od?f?x?\\gF@JUFFH[F@DIBGMMFaJDDQ@MCSDCBENMH"], encodeOffsets: [[119688, 40010]] } }, { type: "Feature", id: "120113", properties: {name: "北辰区", cp: [117.1761, 39.2548], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@ROHFFGCOJEDB?}DFHANDJHFEFSM_KC@O@CJ@DIRM@CEKKA?L?FKACHoLSJSIBETDJaEIIE]E]K[MYUYQILC@GF[MGNKEK@A@BCWECAIFEFYAGFOMI[OFuDiKACBCEKIAELaKaCE\\CA@KEAFOWGGTG@ERUACDeGEPSAUQKHE`FNjNFJADHHCJFB@DEXZFRRBJLA@AR@@BJ@CHF@BRX@@NQdDBBJhHCCZDLUNA^H@BKDPFEJ\\JMPfL^AJFFGLBDGLET@HJLBCFHDCPH@BIJFCLGABHNBDEF@BCN@@FHDDDN@BNEJH@@HF@DEJB@FfLNC@AHB@DHD\\IFGTCBCF@@JNH@ALKHBHCHBDMFEP@KYbHDEJF"], encodeOffsets: [[120139, 40273]] } }, { type: "Feature", id: "120110", properties: {name: "东丽区", cp: [117.4013, 39.1223], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@ZV\\N^L^FJFFJIbSCAFTJTIpKDGLB?E?KLBjHTVNBZWbE\\SBQGE@ATCRHDGEEKECBECxOhOfAZGA_YEEWSGqRKIS??C@Mb@BiTAMYsOEWG@IQEURA@EF@@acUOXQRYCUDCHDTEF[SUEgAYDcVGJM`iAWDWLQRMHUHgDsDBLHJFCFDFGHBFFVEAGHCJN@RJF?PIhBD\\FENCPWA@LFBAFHBEJUEARCDIAEDQBRNa^"], encodeOffsets: [[120048, 40134]] } }, { type: "Feature", id: "120108", properties: {name: "汉沽区", cp: [117.8888, 39.2191], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@LMEI\\MTABKN@FCDMH@COAcH[AoēA?M?Wa[Meq??pQRMXMGQYQASV@J@NNXDPmBAtJXlveRLFGACFGAYf@^X@BPV@|HNPFA\\FNEEYBCnQGMDCDE\\IHFp?EFWJ@JJDGHLPBSFB@JBDGHBFR@@FHDNEjDLICGZEHGbHpCLE^BHIDDCGDCFMNE@CP@rWLDEDFFH@"], encodeOffsets: [[120859, 40235]] } }, { type: "Feature", id: "120112", properties: {name: "津南区", cp: [117.3958, 38.9603], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@TLv@CNHFFBHGZFETNPhCVGNGRQXKXCjBN_HIdUZChBVF\\TFECSDGVCZDRQPWdVNA^]RBBAAOQ]DSE@F_Q@[VMCSMADUECOHycI?qMQEU}zka?wENRDENB@ADG@@HF@YnaAOF?|CDFHUHH^kVbCR^JHIFLJNGHBDNPXGRSCO^EBMNCPDHHFAFiEIHOAEH"], encodeOffsets: [[120045, 39982]] } }, { type: "Feature", id: "120103", properties: {name: "河西区", cp: [117.2365, 39.0804], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@d@hZNFdcLYXKRCtCMOFSYEGHEAGEDMu@SKAAsx]GMTGt"], encodeOffsets: [[119992, 40041]] } }, { type: "Feature", id: "120102", properties: {name: "河东区", cp: [117.2571, 39.1209], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@ZBVFFIGABEEA@KXBDOFM[EACJg?OIE@QIMGDBHUFEEGAEHECEDGIAKQDWLKZcdQPEP@FOFBJTJ@HNORJf@DBCN"], encodeOffsets: [[120063, 40098]] } }, { type: "Feature", id: "120104", properties: {name: "南开区", cp: [117.1527, 39.1065], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@NMVDCG\\E^B@HlB@YEDS@C?HsNSiMGDebUXAJEjidVTAFHDFJ"], encodeOffsets: [[119940, 40093]] } }, { type: "Feature", id: "120105", properties: {name: "河北区", cp: [117.2145, 39.1615], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@DBXFADB@L@LFHM\\NHED@JKZRb]QMRAFCJBDCBQYADMCAe@QIMP@GSIAIPE@E[EGH@ZEF]^HJAXK@KF"], encodeOffsets: [[119980, 40125]] } }, { type: "Feature", id: "120106", properties: {name: "红桥区", cp: [117.1596, 39.1663], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@J\\PNHEZBFEJELEL@BWGI^]FEkA@G]A[FDHUCMNEHJ^"], encodeOffsets: [[119942, 40112]] } }, { type: "Feature", id: "120101", properties: {name: "和平区", cp: [117.2008, 39.1189], childNum: 1}, geometry: {type: "Polygon", coordinates: ["@@D?T@FCHG\\FFOROMEgYc@"], encodeOffsets: [[119992, 40041]]} }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/world_geo", [], function () { return { type: "FeatureCollection", offset: {x: 170, y: 90}, features: [{ type: "Feature", id: "AFG", properties: {name: "Afghanistan"}, geometry: { type: "Polygon", coordinates: ["@@??????????ǚ?????????M???????????i????β???????y??????????×?A????я??????λ?ΣīллΛ??????????Υ?2????t?????D?????Γ??????????????????????ι?????"], encodeOffsets: [[62680, 36506]] } }, { type: "Feature", id: "AGO", properties: {name: "Angola"}, geometry: { type: "MultiPolygon", coordinates: [["@@???????????????????????H???Rf???ū?????-??üκs???1???С???????Z???????????Ж???????~??Й???????a???????????????ɡ???????????с??ǎ???g???["], ["@@?????δ????????λ"]], encodeOffsets: [[[16719, -6018]], [[12736, -5820]]] } }, { type: "Feature", id: "ALB", properties: {name: "Albania"}, geometry: { type: "Polygon", coordinates: ["@@????Β?i????˙?С?Dg????А??????é?θа????????ê?"], encodeOffsets: [[21085, 42860]] } }, { type: "Feature", id: "ARE", properties: {name: "United Arab Emirates"}, geometry: { type: "Polygon", coordinates: ["@@?¤?????u?{???????????G?????ǒE???u????ъ????"], encodeOffsets: [[52818, 24828]] } }, { type: "Feature", id: "ARG", properties: {name: "Argentina"}, geometry: { type: "MultiPolygon", coordinates: [["@@?§???x?@A???р??????п"], ["@@?????????????????χ????????????ж?ф?i?????????????T???Y????????ν§Ч?????????????щ????????????????????ū????E??????????????????????Ο¨????Α?h?????ó??φ???ь????ě?ξ????ǚ?Μ????????????????E???o???D?????????????????????д????????"]], encodeOffsets: [[[-67072, -56524]], [[-66524, -22605]]] } }, { type: "Feature", id: "ARM", properties: {name: "Armenia"}, geometry: { type: "Polygon", coordinates: ["@@??????ǜ????ˋΦ???l??}??H?χC???u?????Ф??"], encodeOffsets: [[44629, 42079]] } }, { type: "Feature", id: "ATF", properties: {name: "French Southern and Antarctic Lands"}, geometry: {type: "Polygon", coordinates: ["@@??????????q???ê?"], encodeOffsets: [[70590, -49792]]} }, { type: "Feature", id: "AUS", properties: {name: "Australia"}, geometry: { type: "MultiPolygon", coordinates: [["@@???????éD???ē???????????????t???"], ["@@?????ΡЖ??????н?????????????λ?????????η????????????t???А?μ?????j?ǖ?χ??Э???г???н????aˇ???????????ψ?????????????????????ьЭ????Р??Ч????????Ь??????????~??????????z?Ц?ā?????è?????????q????????????у?Зˋ???B????l?к?????????????????s?????????τε??и???a?е??????????р????ú?????Ц????à?????????ü?o??????????v???Π?Φǚ???Тψ????а??ц?`?τ?d?τ?О??????M????Д?????κ???????e????ū?????????????????еɡ????????п?Э???????????B????????ǐ????????О??ī?ō?????????t????Щ?????Λ?ёú???"]], encodeOffsets: [[[148888, -41771]], [[147008, -14093]]] } }, { type: "Feature", id: "AUT", properties: {name: "Austria"}, geometry: { type: "Polygon", coordinates: ["@@???Cǎ??????sщ??T???????????x???????2ь???????Ж}??t????ń???????ú???a?∥????"], encodeOffsets: [[17388, 49279]] } }, { type: "Feature", id: "AZE", properties: {name: "Azerbaijan"}, geometry: { type: "MultiPolygon", coordinates: [["@@??ψDG?????щ????v"], ["@@??????????????????????vз?¥???д???×??k???Υ?????ǜ??????????1??б???????"]], encodeOffsets: [[[46083, 40694]], [[48511, 42210]]] } }, { type: "Feature", id: "BDI", properties: {name: "Burundi"}, geometry: {type: "Polygon", coordinates: ["@@á?????????????T?????????"], encodeOffsets: [[30045, -4607]]} }, { type: "Feature", id: "BEL", properties: {name: "Belgium"}, geometry: {type: "Polygon", coordinates: ["@@?á???ο?????????????????`???ǔ"], encodeOffsets: [[3395, 52579]]} }, { type: "Feature", id: "BEN", properties: {name: "Benin"}, geometry: { type: "Polygon", coordinates: ["@@??????ǜ??Ю?????????ξЪā?????F??????ǔ???С???∥?t?μ?"], encodeOffsets: [[2757, 6410]] } }, { type: "Feature", id: "BFA", properties: {name: "Burkina Faso"}, geometry: { type: "Polygon", coordinates: ["@@???????????????Τo???????О?Κ????????Β?????JáС?????Н??m???Щ??ν???l?a??ω???q???"], encodeOffsets: [[-2895, 9874]] } }, { type: "Feature", id: "BGD", properties: {name: "Bangladesh"}, geometry: { type: "Polygon", coordinates: ["@@i???????μ??КΕ???ü???Χ????????????????????????εВ£?????^?????μ???????F??"], encodeOffsets: [[94897, 22571]] } }, { type: "Feature", id: "BGR", properties: {name: "Bulgaria"}, geometry: { type: "Polygon", coordinates: ["@@????????и?????????????????Uл???????|??с?????????Сδ÷???"], encodeOffsets: [[23201, 45297]] } }, { type: "Feature", id: "BHS", properties: {name: "The Bahamas"}, geometry: { type: "MultiPolygon", coordinates: [["@@?£??????????J?"], ["@@???????{~?"], ["@@????`???Cī??"]], encodeOffsets: [[[-79395, 24330]], [[-79687, 27218]], [[-78848, 27229]]] } }, { type: "Feature", id: "BIH", properties: {name: "Bosnia and Herzegovina"}, geometry: { type: "Polygon", coordinates: ["@@?F?σМ?ū?????˙?ū????Θ??????Щ??Β?????n???\\??"], encodeOffsets: [[19462, 45937]] } }, { type: "Feature", id: "BLR", properties: {name: "Belarus"}, geometry: { type: "Polygon", coordinates: ["@@?M?????????????????????Ё???????????ɡ???????????1???х???????????j???à?m??Г?e?????L?????"], encodeOffsets: [[24048, 55207]] } }, { type: "Feature", id: "BLZ", properties: {name: "Belize"}, geometry: { type: "Polygon", coordinates: ["@@O????????ZHū?Ga??ε????à?īщǔ??ǔ??@à?P?"], encodeOffsets: [[-91282, 18236]] } }, { type: "Feature", id: "BMU", properties: {name: "Bermuda"}, geometry: { type: "Polygon", coordinates: ["@@OEMA]NOGNG\\Q^McMOI_OK@CQSGa@WNLVWHFLJXVFGJ`ZRTDLeeWKIHGIK@@[MQNi`]VDTBHCJAPBJLVFjT^LV\\RJZRn^RH`TfJjZHHOTTFJP_NOX[EYQQKMEJOLANJH@HQHAARF@ZEPS[U_IcRQXE@EEKKOCGGCQCOGISKYGUC"], encodeOffsets: [[-66334, 33083]] } }, { type: "Feature", id: "BOL", properties: {name: "Bolivia"}, geometry: { type: "Polygon", coordinates: ["@@??????????????????????Ы???α??????рh?¤??????í?n?????????????????????ǖ???T????ǐ?Zγ?a????ū??????????ρ????a????^??Е?s?????"], encodeOffsets: [[-64354, -22563]] } }, { type: "Feature", id: "BRA", properties: {name: "Brazil"}, geometry: { type: "Polygon", coordinates: ["@@????????j?у?е?ǒ???B?????????y??????ǐ??è???????????????ě????????bYδǐ??????S???ǖ??????????ě??????????m?????īè????v????????Γ???A???????????????????pθ????L???ǚē????Y??k???ˉǐ??????????????Τ??ˉ??e???????t???????????????????σ?????????ы????Ю¥?ǒ???????í???????ǘ?????ē??ξ???????Дò???????¢??????x???????????????Ш?????????????????????????ё????????g??ò?????ˇ????????η???F?????????????????Ч??????????????ψ????????{????"], encodeOffsets: [[-59008, -30941]] } }, { type: "Feature", id: "BRN", properties: {name: "Brunei"}, geometry: {type: "Polygon", coordinates: ["@@?????Я·?Б?????"], encodeOffsets: [[116945, 4635]]} }, { type: "Feature", id: "BTN", properties: {name: "Bhutan"}, geometry: {type: "Polygon", coordinates: ["@@?????{?è????kǚ???????qπ?"], encodeOffsets: [[93898, 28439]]} }, { type: "Feature", id: "BWA", properties: {name: "Botswana"}, geometry: { type: "Polygon", coordinates: ["@@ǜ???????D??????????????????Г?????¤Б?Ο?Х??Г??п?????ü?????A???|??????????D???ù??"], encodeOffsets: [[26265, -18980]] } }, { type: "Feature", id: "CAF", properties: {name: "Central African Republic"}, geometry: { type: "Polygon", coordinates: ["@@?ú???g????Τ??????ü??????ю???ī???F??Γ?????ο??T???Ζε?????ˉ???p???????}???н???Y???ǐ?????????яù??2?????????????????????ΞT???ц?"], encodeOffsets: [[15647, 7601]] } }, { type: "Feature", id: "CAN", properties: {name: "Canada"}, geometry: { type: "MultiPolygon", coordinates: [["@@???xЯ????Φ?????С"], ["@@Хc?????????Η|?"], ["@@х?????????????e?????????д?????"], ["@@??????????????????????Ν????????ń?????????1?~????λ???????????????"], ["@@@@@@@@???????D????ч??τo???"], ["@@??χ??? ????k??"], ["@@???n?????Siǎ"], ["@@?υ???????????T?????????????????д??????"], ["@@?¥?ЪΦ?????X?????"], ["@@???????????ζ????????"], ["@@G?????????????°??Y?ū?й?з?????У???????у???ο?????Ρ??????????±????????ǔ?ε???????Ο?μ????????????????????????????????ν???????????????????}??????????????????????????????????????????????????P?í???ω?????????????Ы??ˊ????п????????????????????????????B?????????????Υ??¥???A?M?????????B?G???ǒ??e??л?????@????n???????ǚ???????ū??@ǜ?¥?ǎē???????????????????S???????????????IE??B?A?@?@?@?@?@?@?@?@?F???δ???????Ψ????i??Кw????????????????????π???|J?N????Й???Ζ?????τ???Α?????????????????·?Λ???????э?з?????????ь?Φ?????????????????o??????K????u?????????????χ???Э??"], ["@@н????щ??????фΒ?????????????е???σ?????????????????ā?????????ě???????????j?????[??????????"], ["@@??????????"], ["@@???|?j????????Иè?ě??"], ["@@???????????????ы???ν?????????????????????????????????????????????????????????Ц?????Т`????????d?????о???????Р???????′?????????????????Hˉ?????????"], ["@@???ń???Е?α?????ê????j??????Р"], ["@@??????`к?Ψ?????????ǎ"], ["@@?Й?????Τ???????????±???Ν??????@ν"], ["@@?????????????ˇ"], ["@@??????????j??Yá?????μü?"], ["@@???????Щ?????η?m????④?????????????????????"], ["@@???F???????????????e???????????????c???????ж?ξ???????á"], ["@@?????£??????@@?????[??"], ["@@?y??ɡ??]????"], ["@@????????????"], ["@@?ǐ?Bb???????"], ["@@??????á?????????"], ["@@?Ε??????????????????"], ["@@???????ó????^????O??????????ο??¨????????"], ["@@???????ɡ?η?????J???????????ě?????б????????????l??????????a?Ж??б??D?γ????????????Υ??????????á?????????????????????????????????á?á"]], encodeOffsets: [[[-65192, 47668]], [[-63289, 50284]], [[-126474, 49675]], [[-57481, 51904]], [[-135895, 55337]], [[-81168, 63651]], [[-83863, 64216]], [[-87205, 67234]], [[-77686, 68761]], [[-97943, 70767]], [[-92720, 71166]], [[-116907, 74877]], [[-107008, 75183]], [[-78172, 74858]], [[-88639, 74914]], [[-102764, 75617]], [[-95433, 74519]], [[-123351, 73097]], [[-95859, 76780]], [[-100864, 78562]], [[-110808, 78031]], [[-96956, 78949]], [[-118987, 79509]], [[-96092, 79381]], [[-112831, 79562]], [[-112295, 80489]], [[-98130, 79931]], [[-102461, 80205]], [[-89108, 81572]], [[-70144, 85101]]] } }, { type: "Feature", id: "CHE", properties: {name: "Switzerland"}, geometry: { type: "Polygon", coordinates: ["@@???????wá?χ??????????Л?α???Б?^??????????M????"], encodeOffsets: [[9825, 48666]] } }, { type: "Feature", id: "CHL", properties: {name: "Chile"}, geometry: { type: "MultiPolygon", coordinates: [["@@B??@?w????Э???????????????????????????"], ["@@?????????г????????????ā???????C???p???F??????????????????Λ?ǚě?ν????????ыˇ??υ??????g?Β??????PЙ?????Σo????@@??????х???Φ???????????????????????????é?Π?????Τ???????????????????????Ь????Ρ????"]], encodeOffsets: [[[-70281, -53899]], [[-69857, -22010]]] } }, { type: "Feature", id: "CHN", properties: {name: "China"}, geometry: { type: "MultiPolygon", coordinates: [["@@????????????????", "@@?З??y?а????o??σσ??"], ["@@???????C?????????????????????wLя?????α?????????????????????????????????????????????????u???????у??????????_????????????÷?????????????????й?с?????·????????????????Й????ī?J???ū???x÷?}???ε??????ǎ??????????{?ν????ù???Μ???Ν????????ο??r???????????????τ?ǔ?Ж??????Α??????????????????????????????????????????ǐ????????????????????????????¢??ā???è???????????η?????????????n?????????B?????????????????????ù??????????????????????????????Ц?????Qτ????W????м???v???????α????"]], encodeOffsets: [[[124701, 24980], [112988, 19127]], [[130722, 50955]]] } }, { type: "Feature", id: "CIV", properties: {name: "Ivory Coast"}, geometry: { type: "Polygon", coordinates: ["@@?U?ǒ?W???????vT???}?ΣΚˉè?????О ??B?ξY???????????ǘT?ú???O???g??????????????????????Ο???θ???"], encodeOffsets: [[-2924, 5115]] } }, { type: "Feature", id: "CMR", properties: {name: "Cameroon"}, geometry: { type: "Polygon", coordinates: ["@@?°???????n??????????X??????R???b????āΔ???ь????????????????????????ê??????T????????μ???????х???Y??Ν????e?????????ó???????"], encodeOffsets: [[13390, 2322]] } }, { type: "Feature", id: "COD", properties: {name: "Democratic Republic of the Congo"}, geometry: { type: "Polygon", coordinates: ["@@????????????±???O??????Yy?????????ǘ??????ē???????χ??????????ì??R???Ψ???????????ü?qμ??r?o??ιt????????????e??Qò??G-??????????????????????\\???h???????μ?????????S???????Ш????θ????Мī?t???????ǐ?????ú????????????ǐ???T???о???~???e???o?ě??????????????"], encodeOffsets: [[31574, 3594]] } }, { type: "Feature", id: "COG", properties: {name: "Republic of the Congo"}, geometry: { type: "Polygon", coordinates: ["@@?????γ?????????????З??????????ζ??ǘ?????ξ???????????????±·???ǐ???????s??ˋ?Л??η??????Ч???????T???ē"], encodeOffsets: [[13308, -4895]] } }, { type: "Feature", id: "COL", properties: {name: "Colombia"}, geometry: { type: "Polygon", coordinates: ["@@??Э????????_?????ú?т??иêΞ????????????????Т????????????ěT??????f???é?ъ??ОК????ǎ????п??????????????a??????é?????????ě?-?ī????????ǜ?????эл??????∥?ǐ??ˊ???lZ??ē??ǚ???K?????oη??п??p????????????????????ɡā"], encodeOffsets: [[-77182, -155]] } }, { type: "Feature", id: "CRI", properties: {name: "Costa Rica"}, geometry: { type: "Polygon", coordinates: ["@@???????????ǔ????????ǘ???????L????????ň????ˊé???????????Ω??L??????????ǖ"], encodeOffsets: [[-84956, 8423]] } }, { type: "Feature", id: "CUB", properties: {name: "Cuba"}, geometry: { type: "Polygon", coordinates: ["@@???W?????????????\\?????????????¥?a???????è?????????????ǐ???¨???[??е??????????ǎ????"], encodeOffsets: [[-84242, 23746]] } }, { type: "Feature", id: "-99", properties: {name: "Northern Cyprus"}, geometry: { type: "Polygon", coordinates: ["@@DJ???Y???Χ?????ù?j¥?i????V????"], encodeOffsets: [[33518, 35984]] } }, { type: "Feature", id: "CYP", properties: {name: "Cyprus"}, geometry: { type: "Polygon", coordinates: ["@@????Щ????????e?Uò?j?|??i?úě?"], encodeOffsets: [[34789, 35900]] } }, { type: "Feature", id: "CZE", properties: {name: "Czech Republic"}, geometry: { type: "Polygon", coordinates: ["@@??Ё????ù?????????Π???????ǎ???ī???????????????????Я?C????????wy?ē?b??"], encodeOffsets: [[17368, 49764]] } }, { type: "Feature", id: "DEU", properties: {name: "Germany"}, geometry: { type: "Polygon", coordinates: ["@@d???S????????ˋ?ё?????????????????ǎ???????Ο??????????y???Е~??????ы??±?????Nń?ь?????′?ǘ??????@??????ǐ??°???в?????ō??"], encodeOffsets: [[10161, 56303]] } }, { type: "Feature", id: "DJI", properties: {name: "Djibouti"}, geometry: { type: "Polygon", coordinates: ["@@??Α???????????b_???????????"], encodeOffsets: [[44116, 13005]] } }, { type: "Feature", id: "DNK", properties: {name: "Denmark"}, geometry: { type: "MultiPolygon", coordinates: [["@@?????Β???у"], ["@@???????Х??????}??????à???????˙????"]], encodeOffsets: [[[12995, 56945]], [[11175, 57814]]] } }, { type: "Feature", id: "DOM", properties: {name: "Dominican Republic"}, geometry: { type: "Polygon", coordinates: ["@@???I???t???h????Ю????????¢????????????§?j?????T?ó?"], encodeOffsets: [[-73433, 20188]] } }, { type: "Feature", id: "DZA", properties: {name: "Algeria"}, geometry: { type: "Polygon", coordinates: ["@@????????U?????????????f?@êQ????????т?????ò??????????1???????????????ш????P????????????????R???????°???????ò??Η????????????"], encodeOffsets: [[12288, 24035]] } }, { type: "Feature", id: "ECU", properties: {name: "Ecuador"}, geometry: { type: "Polygon", coordinates: ["@@???ξ??????????????í????????`??????Ю?????????????????Ιъ???áw????Δ"], encodeOffsets: [[-82229, -3486]] } }, { type: "Feature", id: "EGY", properties: {name: "Egypt"}, geometry: { type: "Polygon", coordinates: ["@@???????????????ù????????????ǘ????????@?@?@@?@????????Ж?b???????ˊ???ê???е?????3а???"], encodeOffsets: [[35761, 30210]] } }, { type: "Feature", id: "ERI", properties: {name: "Eritrea"}, geometry: { type: "Polygon", coordinates: ["@@???????????X????????????β???????ь??????У????????а????ò"], encodeOffsets: [[43368, 12844]] } }, { type: "Feature", id: "ESP", properties: {name: "Spain"}, geometry: { type: "Polygon", coordinates: ["@@|??θ?????N???a???????????????????????????????ǘ???_?h????Щê??????é???????????δè????Z????ф?????C?Ь?ū??"], encodeOffsets: [[-9251, 42886]] } }, { type: "Feature", id: "EST", properties: {name: "Estonia"}, geometry: { type: "Polygon", coordinates: ["@@???????????????|???????ˉ?D??ρ???"], encodeOffsets: [[24897, 59181]] } }, { type: "Feature", id: "ETH", properties: {name: "Ethiopia"}, geometry: { type: "Polygon", coordinates: ["@@???????W???????????ω??à?`??a?D???????Й?????N???????e???B???Ι?Γ?à???wˇT???@??@?????????эЦ?ò???r??[??????????и????????"], encodeOffsets: [[38816, 15319]] } }, { type: "Feature", id: "FIN", properties: {name: "Finland"}, geometry: { type: "Polygon", coordinates: ["@@ū??????????????????????á??????????С?А???????ē?????u????Ъ?????|????Ь?????Ρ?"], encodeOffsets: [[29279, 70723]] } }, { type: "Feature", id: "FJI", properties: {name: "Fiji"}, geometry: { type: "MultiPolygon", coordinates: [["@@?????????τ??????"], ["@@????о?ˊ°??@Ч??"], ["@@é-@Ш???З"]], encodeOffsets: [[[182655, -17756]], [[183669, -17204]], [[-184235, -16897]]] } }, { type: "Feature", id: "FLK", properties: {name: "Falkland Islands"}, geometry: {type: "Polygon", coordinates: ["@@????????????????п?"], encodeOffsets: [[-62668, -53094]]} }, { type: "Feature", id: "FRA", properties: {name: "France"}, geometry: { type: "MultiPolygon", coordinates: [["@@??????ǜ?????"], ["@@???à?????j????ы??????ü????]?В??ρ???????????η?????????????????????????ю????????ˇ?????????ū??_??"]], encodeOffsets: [[[9790, 43165]], [[3675, 51589]]] } }, { type: "Feature", id: "GAB", properties: {name: "Gabon"}, geometry: { type: "Polygon", coordinates: ["@@????????????ǜ????SO??????ň?ˉóν???è?ǘε????????????И??????????"], encodeOffsets: [[11361, -4074]] } }, { type: "Feature", id: "GBR", properties: {name: "United Kingdom"}, geometry: { type: "MultiPolygon", coordinates: [["@@?????[????????"], ["@@?????I???????????????????????????R???ǒ???ī???ǘ????OB???????????÷D@????_\\??????????·?щ??????á?ì"]], encodeOffsets: [[[-5797, 55864]], [[-3077, 60043]]] } }, { type: "Feature", id: "GEO", properties: {name: "Georgia"}, geometry: { type: "Polygon", coordinates: ["@@?????????????????Е????????????в????o???????Ю??"], encodeOffsets: [[42552, 42533]] } }, { type: "Feature", id: "GHA", properties: {name: "Ghana"}, geometry: { type: "Polygon", coordinates: ["@@??????????η???Π?????r??¢?????á??Ζ?C????????й????"], encodeOffsets: [[1086, 6072]] } }, { type: "Feature", id: "GIN", properties: {name: "Guinea"}, geometry: { type: "Polygon", coordinates: ["@@?t???Jǐ?è?Η????m?3V??????Μ???D?∥?o??ī??σρ??????ǖ??ū????Ц?e???D??????d?МU???lú??á?′???B??????????????ǚu?????Ι???˙????????ǘY??????????T?·ν?A"], encodeOffsets: [[-8641, 7871]] } }, { type: "Feature", id: "GMB", properties: {name: "Gambia"}, geometry: { type: "Polygon", coordinates: ["@@???z??ˊ`???I????ε?ιd?????Q???l"], encodeOffsets: [[-17245, 13468]] } }, { type: "Feature", id: "GNB", properties: {name: "Guinea Bissau"}, geometry: { type: "Polygon", coordinates: ["@@?ΘΝè??L???á?????????c???e??ō?C???f?Х"], encodeOffsets: [[-15493, 11306]] } }, { type: "Feature", id: "GNQ", properties: {name: "Equatorial Guinea"}, geometry: {type: "Polygon", coordinates: ["@@?????mP??T?μ"], encodeOffsets: [[9721, 1035]]} }, { type: "Feature", id: "GRC", properties: {name: "Greece"}, geometry: { type: "MultiPolygon", coordinates: [["@@??????q??????íT??ǎ?Φ"], ["@@?????|?ā????я??A??????рЁ????ж?^??????????Y?μ????????é??Т????j??????g?????{?????āVмЦ?"]], encodeOffsets: [[[24269, 36562]], [[27243, 42560]]] } }, { type: "Feature", id: "GRL", properties: {name: "Greenland"}, geometry: { type: "Polygon", coordinates: ["@@??????????????????ш??????????????????????????????????????ˇ?????y???????????E??\\????????????????????????ˉ???????I??????????????[?ы??????????????L??????э??????????????Θ??????????é????\\????????????????????XΚ???????×???????????????И?И?????????ěΓ??????R???????á?˙????"], encodeOffsets: [[-47886, 84612]] } }, { type: "Feature", id: "GTM", properties: {name: "Guatemala"}, geometry: { type: "Polygon", coordinates: ["@@???f?ǖ??r?????К??Ft??????????DB??B?UO????@??ò?????????aǒ??????????}?"], encodeOffsets: [[-92257, 14065]] } }, { type: "Feature", id: "GUF", properties: {name: "French Guiana"}, geometry: { type: "Polygon", coordinates: ["@@??Г???????ν???ò?????á???????????????"], encodeOffsets: [[-53817, 2565]] } }, { type: "Feature", id: "GUY", properties: {name: "Guyana"}, geometry: { type: "Polygon", coordinates: ["@@????z??o?Ч??????°??????A????????˙ɡ?????ǒЭ|??ó??ь?????????τ????????i???????????"], encodeOffsets: [[-61192, 8568]] } }, { type: "Feature", id: "HND", properties: {name: "Honduras"}, geometry: { type: "Polygon", coordinates: ["@@???òD????òσ??????ǚ?ì??áǒD??????????\\t??|?ù?v???????é?nǖò???k?????????j?????A??ǚ????{???Ra????????????P?qlЭūQ????"], encodeOffsets: [[-89412, 13297]] } }, { type: "Feature", id: "HRV", properties: {name: "Croatia"}, geometry: { type: "Polygon", coordinates: ["@@??ˊ??????[???m?????ΑЪ????????Η???????????????Ξe????γ??n??b???????gG??ē????ˊ???????"], encodeOffsets: [[19282, 47011]] } }, { type: "Feature", id: "HTI", properties: {name: "Haiti"}, geometry: { type: "Polygon", coordinates: ["@@??????Y?????i????í???????????????θP?????"], encodeOffsets: [[-74946, 20394]] } }, { type: "Feature", id: "HUN", properties: {name: "Hungary"}, geometry: { type: "Polygon", coordinates: ["@@??ǎ??Dü????????ǚ?~Ц????????????ē???????????∥??????????ˉ?ǎ??V"], encodeOffsets: [[16592, 47977]] } }, { type: "Feature", id: "IDN", properties: {name: "Indonesia"}, geometry: { type: "MultiPolygon", coordinates: [["@@Λe???ǒ??????"], ["@@???????????ǔf???"], ["@@???è?Υ?ǜ???P???P??"], ["@@ū?????E??????ü??"], ["@@?????З???????????w????????Γ??????????·??Β???"], ["@@??????????C?"], ["@@????ǐ??¢??"], ["@@?????ì??????????"], ["@@?????????B??????b?b????ǜ???}Φ?????Е????ê???У?ó??Gκ?Ю???g???D????Ρд????????"], ["@@?????ǐ?¥????????????λūι?????????Q?????М?????????????????????????ΛP??????ф???????????????"], ["@@??????????????ǚ??????óā?"], ["@@??????????u??????????′л????О?ˉ????н?Е????????????????ъЖ????????????@????????"], ["@@?k????????з?????????????????ó??????????Γ???_???????????s??????Ф?????"]], encodeOffsets: [[[123613, -10485]], [[127423, -10383]], [[120730, -8289]], [[125854, -8288]], [[111231, -6940]], [[137959, -6363]], [[130304, -3542]], [[133603, -3168]], [[137363, -1179]], [[128247, 1454]], [[131777, 1160]], [[120705, 1872]], [[108358, -5992]]] } }, { type: "Feature", id: "IND", properties: {name: "India"}, geometry: { type: "Polygon", coordinates: ["@@???????????????????????Э?????ё?ā???bī???Tβ??ì?lǚ???????|D????????????Ξ???Λ??ü???è?????~???§Х????????ěΣг????E?????????????]??ó?Б¤?ζ???????????????????Z??′???????????C?л???????????Σ?I?????????????????????????????Α???H?ǎ???????И????????Cǘ??ю???????ù??????_????д????Ьβ??????"], encodeOffsets: [[79706, 36346]] } }, { type: "Feature", id: "IRL", properties: {name: "Ireland"}, geometry: {type: "Polygon", coordinates: ["@@?????????????????????\\??"], encodeOffsets: [[-6346, 55161]]} }, { type: "Feature", id: "IRN", properties: {name: "Iran"}, geometry: { type: "Polygon", coordinates: ["@@?????{τ??y?э??????ò?????κ?????à???????ж????υx?Д?ê???????????Χ?Е????Н??????????????????S??@??????????ц?ù???????ǐ???????ъ????~???????г???|?????у??????"], encodeOffsets: [[55216, 38092]] } }, { type: "Feature", id: "IRQ", properties: {name: "Iraq"}, geometry: { type: "Polygon", coordinates: ["@@??ú?х????????????@T????¤?ê????????????????ā???????????Ж???"], encodeOffsets: [[46511, 36842]] } }, { type: "Feature", id: "ISL", properties: {name: "Iceland"}, geometry: { type: "Polygon", coordinates: ["@@???????????????ψ?Ъ?ǎ??????????????????"], encodeOffsets: [[-14856, 68051]] } }, { type: "Feature", id: "ISR", properties: {name: "Israel"}, geometry: { type: "Polygon", coordinates: ["@@??????????????p?н?????????????zV?Ct??\\`???hM"], encodeOffsets: [[36578, 33495]] } }, { type: "Feature", id: "ITA", properties: {name: "Italy"}, geometry: { type: "MultiPolygon", coordinates: [["@@????????ё??????????ò"], ["@@???????????????¥р?"], ["@@???Я?Χ?ū??2з???ё?чц????L???ǘ??????????????Ν?????Η1??ΕYH????????шΑ??δ??ε???????????й???????Γ?īθ?ń????????β?М¢????А?????ψ?a?????????"]], encodeOffsets: [[[15893, 39149]], [[9432, 42200]], [[12674, 47890]]] } }, { type: "Feature", id: "JAM", properties: {name: "Jamaica"}, geometry: {type: "Polygon", coordinates: ["@@?÷?????e????????Μ???"], encodeOffsets: [[-79431, 18935]]} }, { type: "Feature", id: "JOR", properties: {name: "Jordan"}, geometry: { type: "Polygon", coordinates: ["@@???????????у??????????ε?????о?o???@?"], encodeOffsets: [[36399, 33172]] } }, { type: "Feature", id: "JPN", properties: {name: "Japan"}, geometry: { type: "MultiPolygon", coordinates: [["@@????????????R????ī?Μ??"], ["@@???с?????????????????e?????ΝН??????????????????????Б??????????????}???b?"], ["@@???Τ???????????]??д??2????????"]], encodeOffsets: [[[137870, 34969]], [[144360, 38034]], [[147365, 45235]]] } }, { type: "Feature", id: "KAZ", properties: {name: "Kazakhstan"}, geometry: { type: "Polygon", coordinates: ["@@????ο??K??????ХNú??????????????e?????£??????χ?±??Ζ???????????ā???????????£???σ??я??????w???????????????t?????Π?j???????????Ц??????????Ш????Β????????é??′????????????????К???ΨΥ????????????????????????????у????x???Ξ?????????ρ"], encodeOffsets: [[72666, 43281]] } }, { type: "Feature", id: "KEN", properties: {name: "Kenya"}, geometry: { type: "Polygon", coordinates: ["@@?????Ε??????ǐ???????????S???а???σ??т????????@????@???S?x?ī???Δ?Κ???A??X?"], encodeOffsets: [[41977, -878]] } }, { type: "Feature", id: "KGZ", properties: {name: "Kyrgyzstan"}, geometry: { type: "Polygon", coordinates: ["@@???????????Ν???w??ф??ū?????????????ǐ???????????Y????????????????????"], encodeOffsets: [[72666, 43281]] } }, { type: "Feature", id: "KHM", properties: {name: "Cambodia"}, geometry: { type: "Polygon", coordinates: ["@@??ы?????????????????????τ??ó???ū"], encodeOffsets: [[105982, 10888]] } }, { type: "Feature", id: "KOR", properties: {name: "South Korea"}, geometry: { type: "Polygon", coordinates: ["@@????P?????????????χ??????ú?????¢Ψè??"], encodeOffsets: [[131431, 39539]] } }, { type: "Feature", id: "CS-KM", properties: {name: "Kosovo"}, geometry: { type: "Polygon", coordinates: ["@@???Pé????????ò???2????ō???ǎ??L?????×????"], encodeOffsets: [[21261, 43062]] } }, { type: "Feature", id: "KWT", properties: {name: "Kuwait"}, geometry: {type: "Polygon", coordinates: ["@@?χ?????u?А?????é"], encodeOffsets: [[49126, 30696]]} }, { type: "Feature", id: "LAO", properties: {name: "Laos"}, geometry: { type: "Polygon", coordinates: ["@@????????????ǜ??y????o?????3?η????????w?????????O????????????????????????"], encodeOffsets: [[107745, 14616]] } }, { type: "Feature", id: "LBN", properties: {name: "Lebanon"}, geometry: {type: "Polygon", coordinates: ["@@?[y??D??м?f??§??????"], encodeOffsets: [[36681, 34077]]} }, { type: "Feature", id: "LBR", properties: {name: "Liberia"}, geometry: { type: "Polygon", coordinates: ["@@?Q?А???????????????n??Θ???ǐ??I???s???Н????ˊ?ΤΙ~???Y?"], encodeOffsets: [[-7897, 4470]] } }, { type: "Feature", id: "LBY", properties: {name: "Libya"}, geometry: { type: "Polygon", coordinates: ["@@?????βρ????????????Θ??ń?ó???ˉ???Ш?eΠ?Β????Ц?′???Μe???????ǎ?Ι?йЦ?Ж????Ф?????????I???????Е??????@?@?@??GYΙ??????"], encodeOffsets: [[15208, 23412]] } }, { type: "Feature", id: "LKA", properties: {name: "Sri Lanka"}, geometry: {type: "Polygon", coordinates: ["@@??Ι?????????????О?"], encodeOffsets: [[83751, 7704]]} }, { type: "Feature", id: "LSO", properties: {name: "Lesotho"}, geometry: {type: "Polygon", coordinates: ["@@???У????????????????ξ?"], encodeOffsets: [[29674, -29650]]} }, { type: "Feature", id: "LTU", properties: {name: "Lithuania"}, geometry: { type: "Polygon", coordinates: ["@@??ě?χ????????á???????Сā????????N????"], encodeOffsets: [[23277, 55632]] } }, { type: "Feature", id: "LUX", properties: {name: "Luxembourg"}, geometry: {type: "Polygon", coordinates: ["@@ǘ?3ρ?i?ò????"], encodeOffsets: [[6189, 51332]]} }, { type: "Feature", id: "LVA", properties: {name: "Latvia"}, geometry: { type: "Polygon", coordinates: ["@@??Ю??????h?????????CК??С???????Т??????????"], encodeOffsets: [[21562, 57376]] } }, { type: "Feature", id: "MAR", properties: {name: "Morocco"}, geometry: { type: "Polygon", coordinates: ["@@?Υ????κU??o??????????????????с??????R??@@@p??????@???ě????Ё???????????aD ???????????????p???????f\\ц?????т????????????????????I"], encodeOffsets: [[-5318, 36614]] } }, { type: "Feature", id: "MDA", properties: {name: "Moldova"}, geometry: { type: "Polygon", coordinates: ["@@???????????????Η???????×?|????ò??????????????ˉΠ????"], encodeOffsets: [[27259, 49379]] } }, { type: "Feature", id: "MDG", properties: {name: "Madagascar"}, geometry: { type: "Polygon", coordinates: ["@@?Υ???????З????∥????Υ??????б??????????Ρ??????????ù?????D?Д?????????????м?????τ\\?????ц??Φ???f?????"], encodeOffsets: [[50733, -12769]] } }, { type: "Feature", id: "MEX", properties: {name: "Mexico"}, geometry: { type: "Polygon", coordinates: ["@@???????Ч???Чǚ??????б???Ι????????????è??????????????Й???????γ?????c?Y??????P??V?AA??C????????s??EЙ?????q????????ó??ч????????????В???o??Γ???с??Ц??????J???ù??ъ????У??????????Ф???????Ф??????^??????????Е?????????ó???\\ǜ??????ё???ρ??2?К?????q?Ν??J?????Р???????????????????ú?3?????????????????T???ǒ?С???P?@D??@???ˇ?σ???????????h??ф??????????????|"], encodeOffsets: [[-99471, 26491]] } }, { type: "Feature", id: "MKD", properties: {name: "Macedonia"}, geometry: { type: "Polygon", coordinates: ["@@ńO?????????bт?ò??????h????Α???ń?"], encodeOffsets: [[21085, 42860]] } }, { type: "Feature", id: "MLI", properties: {name: "Mali"}, geometry: { type: "Polygon", coordinates: ["@@????ˊp???ǖ?????^????Л?Л??d??????????V???F???í??????????I?????Α??????Ι?Н???ū???p??Σ???????????h???P???ù?????????????Κ????ǚv???????????????Aμ???í???ǔ???"], encodeOffsets: [[-12462, 14968]] } }, { type: "Feature", id: "MMR", properties: {name: "Myanmar"}, geometry: { type: "Polygon", coordinates: ["@@?η????Ο?О??????????у??ī?_?????С???????????????ε??у??????????????????????j?д??Τ????????¨Ц??}????????????ú??ξ?|????????????ǎ????ζ???~???????"], encodeOffsets: [[101933, 20672]] } }, { type: "Feature", id: "MNE", properties: {name: "Montenegro"}, geometry: { type: "Polygon", coordinates: ["@@á?ηЯêˋ?T??εǖ???????ü?????ě???????ó"], encodeOffsets: [[20277, 43521]] } }, { type: "Feature", id: "MNG", properties: {name: "Mongolia"}, geometry: { type: "Polygon", coordinates: ["@@?????????]?????????????????????Λ???ō?ō?З???T?????????????êХ??????ń?????????????????????????ú?????????????????????A?????????m?????????????θ??????????"], encodeOffsets: [[89858, 50481]] } }, { type: "Feature", id: "MOZ", properties: {name: "Mozambique"}, geometry: { type: "Polygon", coordinates: ["@@?????ń?t???a?????????????Ы?????????С????????í???ǔ?Z??|{??????ΓΗ?????ρ?eΟ?éí??R????í?????Г??????ú??????ǐ?E??????????g??ā????Е?ü????????????ζ?í?Ι????]????"], encodeOffsets: [[35390, -11796]] } }, { type: "Feature", id: "MRT", properties: {name: "Mauritania"}, geometry: { type: "Polygon", coordinates: ["@@??????Г??UЧ?йe?????а?????к?мɑ??δ???M??????????F????cМ?М??????]???è?ǖ??ˉo????"], encodeOffsets: [[-12462, 14968]] } }, { type: "Feature", id: "MWI", properties: {name: "Malawi"}, geometry: { type: "Polygon", coordinates: ["@@?????^??Κ???ε?????×???·??????Ж????????ǚ?????????ǜ?????"], encodeOffsets: [[35390, -11796]] } }, { type: "Feature", id: "MYS", properties: {name: "Malaysia"}, geometry: { type: "MultiPolygon", coordinates: [["@@à??????y??Μ?????????????e??é???????????????Τ???ρ"], ["@@?????@??????????Еó?щ?ò??????????ǜ???????Ь?????В???а??ш??H?ы?ι???????¥?Ч"]], encodeOffsets: [[[103502, 6354]], [[121466, 4586]]] } }, { type: "Feature", id: "NAM", properties: {name: "Namibia"}, geometry: { type: "Polygon", coordinates: ["@@??????????m???????????????К????}???D???Е???????μ??Pé???C????????{???B?A?????????????Гг"], encodeOffsets: [[16738, -29262]] } }, { type: "Feature", id: "NCL", properties: {name: "New Caledonia"}, geometry: {type: "Polygon", coordinates: ["@@????????????????β[??φ???"], encodeOffsets: [[169759, -21585]]} }, { type: "Feature", id: "NER", properties: {name: "Niger"}, geometry: { type: "Polygon", coordinates: ["@@n???О????aТ?????e??????E????????α????????`ˋΔ?????????γ?Δ?C??m???μ?ˋ?m?????????????~?Χ?q?????b????????????í????E??"], encodeOffsets: [[2207, 12227]] } }, { type: "Feature", id: "NGA", properties: {name: "Nigeria"}, geometry: { type: "Polygon", coordinates: ["@@???????l???????Y?B??s?????Т???ǔ????????????????????a?????r?Ψ?}???·?????????n???????????????????ы???Γ?????a???Q????"], encodeOffsets: [[8705, 4887]] } }, { type: "Feature", id: "NIC", properties: {name: "Nicaragua"}, geometry: { type: "Polygon", coordinates: ["@@??????Ο?с?????úò?????RkЮ?r?O????ē?????b??Qň??|??ǚ??ń?B?ō???i??§?????ě??υ??t???y?ì??? ??????è??ˉê??????"], encodeOffsets: [[-87769, 11355]] } }, { type: "Feature", id: "NLD", properties: {name: "Netherlands"}, geometry: {type: "Polygon", coordinates: ["@@?y???????@?????π???a?????Θ"], encodeOffsets: [[6220, 54795]]} }, { type: "Feature", id: "NOR", properties: {name: "Norway"}, geometry: { type: "MultiPolygon", coordinates: [["@@????????????????Ы??ω???¥??????ū??????H???????????b?????э????υ???????????ˇ????????????????π?-?????ǘ"], ["@@?????????ǚ????"], ["@@???????∥???????????????????\\??????"], ["@@???????????d??????????"]], encodeOffsets: [[[28842, 72894]], [[25318, 79723]], [[18690, 81615]], [[26059, 82338]]] } }, { type: "Feature", id: "NPL", properties: {name: "Nepal"}, geometry: { type: "Polygon", coordinates: ["@@Yαō????a???????????Ю??????Β????????Е?ǔ?σ????"], encodeOffsets: [[90236, 28546]] } }, { type: "Feature", id: "NZL", properties: {name: "New Zealand"}, geometry: { type: "MultiPolygon", coordinates: [["@@?????ΡBΝ???????З?Y????????н??l???D???????????????????????Χ"], ["@@??l???????????ю??????jɡ?tαū???з?????Ε???????z?????????v?Б???Η??à???ɑ??"]], encodeOffsets: [[[177173, -41901]], [[178803, -37024]]] } }, { type: "Feature", id: "OMN", properties: {name: "Oman"}, geometry: { type: "MultiPolygon", coordinates: [["@@???a???э?????F???Х???P??J?П??????3??????????v???F??ǒ??è??H??????????????C?????Ο?"], ["@@????????ā?"]], encodeOffsets: [[[60274, 21621]], [[57745, 26518]]] } }, { type: "Feature", id: "PAK", properties: {name: "Pakistan"}, geometry: { type: "Polygon", coordinates: ["@@????????????Ыα?????г??`????????ú????ī??эǘ??D?????????∥?e??????é?Г?w??φ??е??????????ó?Δ?????C???ō?y??±?Φ??????????мΜ?м?Τ?μ????????"], encodeOffsets: [[76962, 38025]] } }, { type: "Feature", id: "PAN", properties: {name: "Panama"}, geometry: { type: "Polygon", coordinates: ["@@??????????л?οá????????В????????????????è???C???aǖì???????K?????i???ā???Ю?Ψ??????·???????????ū??∥??ò?С"], encodeOffsets: [[-79750, 7398]] } }, { type: "Feature", id: "PER", properties: {name: "Peru"}, geometry: { type: "Polygon", coordinates: ["@@??????????????????????????????????П??????Γ??x??a??Κщ???????????????????????????????e?????oр?? ??????ó???????BΡ??Δ??????μ???u????????????£?g??п????β???"], encodeOffsets: [[-71260, -18001]] } }, { type: "Feature", id: "PHL", properties: {name: "Philippines"}, geometry: { type: "MultiPolygon", coordinates: [["@@??o??????э?????????????Α???????????????????v·???êхD?"], ["@@????????????????????ā?"], ["@@??Ь?????????????"], ["@@???BgΗ?Σ????ò??А"], ["@@????j????????a????Y????m??"], ["@@???о??????"], ["@@????ü??Α????????????????????ē??Ю????????л?¨???????б??μ?????????A"]], encodeOffsets: [[[129410, 8617]], [[126959, 10526]], [[121349, 9540]], [[124809, 12178]], [[128515, 12455]], [[124445, 13384]], [[124234, 18949]]] } }, { type: "Feature", id: "PNG", properties: {name: "Papua New Guinea"}, geometry: { type: "MultiPolygon", coordinates: [["@@??ε?ρ?????????Р?????"], ["@@?????????B????ê????à?Ж?r???ü???????fǜ?g???"], ["@@???????ω???∥?Ν?????????????????π????ń???????a?a????????х???????ě??"], ["@@?ɡ∥???????????????Μ??Λ????"]], encodeOffsets: [[[159622, -6983]], [[155631, -5609]], [[150725, -7565]], [[156816, -4607]]] } }, { type: "Feature", id: "POL", properties: {name: "Poland"}, geometry: { type: "Polygon", coordinates: ["@@??à?????????????????ú??Y???^?ě???ω??K?????f?ц?ě?з????????????ē??ч???3??а???????ɑ??à??ò??"], encodeOffsets: [[15378, 52334]] } }, { type: "Feature", id: "PRI", properties: {name: "Puerto Rico"}, geometry: {type: "Polygon", coordinates: ["@@???ǖ???L??·????K"], encodeOffsets: [[-67873, 18960]]} }, { type: "Feature", id: "PRK", properties: {name: "North Korea"}, geometry: { type: "Polygon", coordinates: ["@@???oη?????????????η?η?????σ??Χ???????áùС????é??ɑü???φ?????????????????????????β????"], encodeOffsets: [[133776, 43413]] } }, { type: "Feature", id: "PRT", properties: {name: "Portugal"}, geometry: { type: "Polygon", coordinates: ["@@?????Ы?D?????у??Y??ū??γ???????????ê????????????t??????ò???kΤǚ???"], encodeOffsets: [[-9251, 42886]] } }, { type: "Feature", id: "PRY", properties: {name: "Paraguay"}, geometry: { type: "Polygon", coordinates: ["@@??t?Ж????]??b????????ǐ????t?????????A???ǒ??????????????ψ????????"], encodeOffsets: [[-64189, -22783]] } }, { type: "Feature", id: "QAT", properties: {name: "Qatar"}, geometry: {type: "Polygon", coordinates: ["@@????????d??????ǖ"], encodeOffsets: [[52030, 25349]]} }, { type: "Feature", id: "ROU", properties: {name: "Romania"}, geometry: { type: "Polygon", coordinates: ["@@δ????G????????Π@????ˊΟ???ρ?Ω????????p?П??ā????????з???????????????????????????????????"], encodeOffsets: [[23256, 49032]] } }, { type: "Feature", id: "RUS", properties: {name: "Russia"}, geometry: { type: "MultiPolygon", coordinates: [["@@????????y?????????????????????????????u???"], ["@@?]???τ????ψ?????"], ["@@?????????λ?ēs????~?????θ?????????????Σ@???????"], ["@@?????Ζ@?"], ["@@??@?ň??E??????"], ["@@?M???????t????"], ["@@????????????"], ["@@???z????????????"], ["@@?ó??????ū????????????????????????????з????????????"], ["@@?г???Y?Ч??????????????????τ?????????′????L?????Ι???????????????????ζ???????????????????v?ǒ?????????????o?Б?ν@”MK?σ??????????ɑ?????????????????????????????????????Δα????????????????И???a????????????????????????????ē?????Э??????????а????о?????????????????????????Y?Ф??????K??x?????????????????????D???????????β???????u???л??X?????Rσ?????é?????????????S???И???????Μ?????????????????????^??????????????ΧΦ??Й??????????????????3ê??????????Α??Ч????????????Х???????????i?Ο?????s???????????????x??????????????????????ωì???????????????Ж????????????????????u???????????????W????U??????lǒ?θ?¤é????????|?????????ā????????????????????????????íТЙ??ˊ?????????????????????????????????ü?????????????????ɡ??????????????ňР?????????????μ??????Ъ?????????N????????А???£???????x????????????????????{???????}??????ǒ???????ˋ?????????????????ж???????ê??????????мn???????????????????????ō?????x?и?????t?????a?δ?Ψ????????"], ["@@????????????"], ["@@?ō???????????~???X??????????"], ["@@?????????ǔ?????ч????"]], encodeOffsets: [[[147096, 51966]], [[23277, 55632]], [[-179214, 68183]], [[184320, 72533]], [[-182982, 72595]], [[147051, 74970]], [[154350, 76887]], [[148569, 77377]], [[58917, 72418]], [[109538, 78822]], [[107598, 80187]], [[52364, 82481]], [[102339, 80775]]] } }, { type: "Feature", id: "RWA", properties: {name: "Rwanda"}, geometry: {type: "Polygon", coordinates: ["@@??μ????????àt??T????????"], encodeOffsets: [[31150, -1161]]} }, { type: "Feature", id: "ESH", properties: {name: "Western Sahara"}, geometry: { type: "Polygon", coordinates: ["@@o??@@ée?E??a???÷?????N????bC?????????????????????@????"], encodeOffsets: [[-9005, 27772]] } }, { type: "Feature", id: "SAU", properties: {name: "Saudi Arabia"}, geometry: { type: "Polygon", coordinates: ["@@????Y?????????????ī???????????°???????????лI????????ζ????????????ф???????????????v??а????Λ?????????????ǖ?ò???????щ???????????????????§?????m?ù???ЭēΟρˋ"], encodeOffsets: [[43807, 16741]] } }, { type: "Feature", id: "SDN", properties: {name: "Sudan"}, geometry: { type: "Polygon", coordinates: ["@@?hdм?????????ìí?????e???л??????????????@???????????????????∥??? ?????ΔE?????Z???U????μ???Ζ????????????¥?ZΚ?H@??@?@?@????ū???????ы???????α?ě??????з????????D?"], encodeOffsets: [[34779, 9692]] } }, { type: "Feature", id: "SDS", properties: {name: "South Sudan"}, geometry: { type: "Polygon", coordinates: ["@@X????q????юХ?????????????F?????????????????????ˊ????Εζ??S????????????????????í???????@????ē??????ēм????????a????????????cл?g"], encodeOffsets: [[34779, 9692]] } }, { type: "Feature", id: "SEN", properties: {name: "Senegal"}, geometry: { type: "Polygon", coordinates: ["@@??н?φ?Р?????к?Ш??VД?????????ǔ????????3?aù??k??ЛV???????????k???R????κcζ??????J??ˉ_???y"], encodeOffsets: [[-17114, 13922]] } }, { type: "Feature", id: "SLB", properties: {name: "Solomon Islands"}, geometry: { type: "MultiPolygon", coordinates: [["@@???N????ǜ?"], ["@@?m????à???????"], ["@@???????@???З"], ["@@?ǜ?Φ???????????ˉ"], ["@@ǘ3ο???¨??Ρ??"]], encodeOffsets: [[[166010, -10734]], [[164713, -10109]], [[165561, -9830]], [[163713, -8537]], [[161320, -7524]]] } }, { type: "Feature", id: "SLE", properties: {name: "Sierra Leone"}, geometry: { type: "Polygon", coordinates: ["@@???????????τ?????p???C???Λ????U??′????????"], encodeOffsets: [[-11713, 6949]] } }, { type: "Feature", id: "SLV", properties: {name: "El Salvador"}, geometry: { type: "Polygon", coordinates: ["@@???^???ǘ?à??~????????????ǚ????τ???????"], encodeOffsets: [[-89900, 13706]] } }, { type: "Feature", id: "-99", properties: {name: "Somaliland"}, geometry: { type: "Polygon", coordinates: ["@@?????M?????К????????ǒ??ΗкG??????и?????KaE?A?@?"], encodeOffsets: [[50113, 9679]] } }, { type: "Feature", id: "SOM", properties: {name: "Somalia"}, geometry: { type: "Polygon", coordinates: ["@@?????Fp?y?H?????Й???????????????????????W??????f??????????@?B?F?Lb?h??"], encodeOffsets: [[50923, 11857]] } }, { type: "Feature", id: "SRB", properties: {name: "Republic of Serbia"}, geometry: { type: "Polygon", coordinates: ["@@??à???????????????Тγ???ˋ?????a?μ???????Kǎ?? ???à???±????èe????ū???????Л??τ?E??ˉ??????????ˋ"], encodeOffsets: [[21376, 46507]] } }, { type: "Feature", id: "SUR", properties: {name: "Suriname"}, geometry: { type: "Polygon", coordinates: ["@@?ǚ????????a?????ó??Λ?????????ǘ÷??è??ō??Bω???ˉ?????"], encodeOffsets: [[-58518, 6117]] } }, { type: "Feature", id: "SVK", properties: {name: "Slovakia"}, geometry: { type: "Polygon", coordinates: ["@@′???ш???????????ǐ?????????Ё?ě?Х??}?ǚ????ё????ń???a??xt?¢???????D"], encodeOffsets: [[19306, 50685]] } }, { type: "Feature", id: "SVN", properties: {name: "Slovenia"}, geometry: { type: "Polygon", coordinates: ["@@?Yъ??t???Uǎ???????H??h???????ú?Ψ?а"], encodeOffsets: [[14138, 47626]] } }, { type: "Feature", id: "SWE", properties: {name: "Sweden"}, geometry: { type: "Polygon", coordinates: ["@@????????????????????????????ˉ?????φ??????ю?????a???????????G?????????Щ??v?????"], encodeOffsets: [[22716, 67302]] } }, { type: "Feature", id: "SWZ", properties: {name: "Swaziland"}, geometry: {type: "Polygon", coordinates: ["@@???ě??S??????òш???eω"], encodeOffsets: [[32842, -27375]]} }, { type: "Feature", id: "SYR", properties: {name: "Syria"}, geometry: { type: "Polygon", coordinates: ["@@????gN??_????????¨????????°??ǐ?????F???a????????????"], encodeOffsets: [[39724, 34180]] } }, { type: "Feature", id: "TCD", properties: {name: "Chad"}, geometry: { type: "Polygon", coordinates: ["@@???nD?Γ?δ?????????Γ?_???????…?…?|??D??????????ɑΕ??????V???Y???э?????????????Σ??????h???ù??????λ????????D?S????é???"], encodeOffsets: [[14844, 13169]] } }, { type: "Feature", id: "TGO", properties: {name: "Togo"}, geometry: { type: "Polygon", coordinates: ["@@????ɡ??к??????D?Ε????k???????Эǜ?????"], encodeOffsets: [[1911, 6290]] } }, { type: "Feature", id: "THA", properties: {name: "Thailand"}, geometry: { type: "Polygon", coordinates: ["@@???e???Ká???˙?ì?????????????????????????ж??П?????????Т?????`??????ф????????Н?Π??????θ??θ?′?????p??????zǜ??í??à?????˙?????????"], encodeOffsets: [[105047, 12480]] } }, { type: "Feature", id: "TJK", properties: {name: "Tajikistan"}, geometry: { type: "Polygon", coordinates: ["@@????ā??T???????????????B??????????t??¢????α????ū?j???????????????φ?????????????v"], encodeOffsets: [[72719, 41211]] } }, { type: "Feature", id: "TKM", properties: {name: "Turkmenistan"}, geometry: { type: "Polygon", coordinates: ["@@?????????ю?tσ??|??????ū???????????????????????ψ????????¤?\\?ц??????????????а??????Щ??w?????????ǚ???????????"], encodeOffsets: [[62680, 36506]] } }, { type: "Feature", id: "TLS", properties: {name: "East Timor"}, geometry: {type: "Polygon", coordinates: ["@@?????????????ο??e??ǔ"], encodeOffsets: [[127968, -9106]]} }, { type: "Feature", id: "TTO", properties: {name: "Trinidad and Tobago"}, geometry: {type: "Polygon", coordinates: ["@@?????????ú??i?"], encodeOffsets: [[-63160, 11019]]} }, { type: "Feature", id: "TUN", properties: {name: "Tunisia"}, geometry: { type: "Polygon", coordinates: ["@@Ω???Q???ó?????????????}ы??ò?пЫM???ō??х???a????3?Х??????Α?ΟЧ?"], encodeOffsets: [[9710, 31035]] } }, { type: "Feature", id: "TUR", properties: {name: "Turkey"}, geometry: { type: "MultiPolygon", coordinates: [["@@?????????¢?Э???У????????ǐ???Е????ň?????b???E?????ǐˉ??????????í???????????Α?????e????Ц??В????Μ????????l??"], ["@@????\\?????Х????????????±Ω?"]], encodeOffsets: [[[37800, 42328]], [[27845, 41668]]] } }, { type: "Feature", id: "TZA", properties: {name: "United Republic of Tanzania"}, geometry: { type: "Polygon", coordinates: ["@@????ì?????????~??????Г???????????b???s??????????ǜ?????????Η?????ǘ?????? ??????S???·??????????[?à"], encodeOffsets: [[34718, -972]] } }, { type: "Feature", id: "UGA", properties: {name: "Uganda"}, geometry: { type: "Polygon", coordinates: ["@@?\\??????P???2????????????????????E?????сτ???Я???T???"], encodeOffsets: [[32631, -1052]] } }, { type: "Feature", id: "UKR", properties: {name: "Ukraine"}, geometry: { type: "Polygon", coordinates: ["@@?????¥??????ê??£?ηkǒ???????V?˙X???????????????????????Ъ???ǐ?????????????????????????????Ё????????????????{????D????Θ??ò???????????Ο@?????????H??γ?í???ǐ????μɑ???и???х?Д????n?????i???????¢???ц???o"], encodeOffsets: [[32549, 53353]] } }, { type: "Feature", id: "URY", properties: {name: "Uruguay"}, geometry: { type: "Polygon", coordinates: ["@@?ě???|??????χ???ε????ǚ?ě??????T???S?????"], encodeOffsets: [[-59008, -30941]] } }, { type: "Feature", id: "USA", properties: {name: "United States of America"}, geometry: { type: "MultiPolygon", coordinates: [["@@????|???|???íǔ?tüe????????qˉ????"], ["@@????īèQà???ā????"], ["@@??|ú?а?"], ["@@-μóZ????????ê???"], ["@@????a????ij?"], ["@@???????????????T?????????????????ǎ?|?ǜ??@?????Ё??ǚ???Ё???mē?????@?????мf?÷??ǒ???H?A???à?????N?B???|Φ?????????????A??????П????????S???Βs????????Зh??λ¥?¥?????????C|?????????×??a??????^??????????????ε?????????í??????????нáэ?????????????????Lε??????????Я??????????????????????|С????????í????a??ǔ?ō???????????????????γ?Б??U?¨Е???{????????????у????g???????????τ?????@C??@?O???Тāǒ???Y?????????|??????????????χ?????????????????????ˇ????ǐ???????????@?@?@?@?@?@?@?@?B?AF??J"], ["@@???????????éΤ???"], ["@@?????????ù??"], ["@@???ē????é????????μ??o?"], ["@@??????1????????ā????????@@M?I??{???ρ??????????????????x??Й?????????????r?????????í???Ψ?????á?????????????????????С???Η???ω???????T??????????????????в????ǚ?????????????ю???м???B????????????I??????????????М???????????W??????????Λ????Θ?Ш?@?н???????р?Ψ?????????Ф???ī???é????"]], encodeOffsets: [[[-159275, 19542]], [[-159825, 21140]], [[-160520, 21686]], [[-161436, 21834]], [[-163169, 22510]], [[-97093, 50575]], [[-156678, 58487]], [[-169553, 61348]], [[-175853, 65314]], [[-158789, 72856]]] } }, { type: "Feature", id: "UZB", properties: {name: "Uzbekistan"}, geometry: { type: "Polygon", coordinates: ["@@x????Ъ????Я???????ě????????х?[?????????????ū?à??ù?ЦM???????Lπ????????????????????u??????ˋ???? ?υ?????????N"], encodeOffsets: [[68116, 38260]] } }, { type: "Feature", id: "VEN", properties: {name: "Venezuela"}, geometry: { type: "Polygon", coordinates: ["@@y?????Y?υ???δ?????§??????????_?????Q????????X????\\?????×?Я???n????ó???????j????????????????????y?ɑ??????°????Σ????????????????юм????ǜ?à????????????????ń?????ê????á??????è?????????р??"], encodeOffsets: [[-73043, 12059]] } }, { type: "Feature", id: "VNM", properties: {name: "Vietnam"}, geometry: { type: "Polygon", coordinates: ["@@????????????????????????????????????σ??????????????????????????P???????I????К?????А???"], encodeOffsets: [[110644, 22070]] } }, { type: "Feature", id: "VUT", properties: {name: "Vanuatu"}, geometry: { type: "MultiPolygon", coordinates: [["@@?ō??????"], ["@@?????-??i?Д?"]], encodeOffsets: [[[171874, -16861]], [[171119, -15292]]] } }, { type: "Feature", id: "PSE", properties: {name: "West Bank"}, geometry: {type: "Polygon", coordinates: ["@@@???????????????"], encodeOffsets: [[36399, 33172]]} }, { type: "Feature", id: "YEM", properties: {name: "Yemen"}, geometry: { type: "Polygon", coordinates: ["@@????o??Ο????υ±?o?Α?????μ??????еl???¨??z???ǒ???ǚ¤?????ξ???Π?Ю???ú?n?????¨??????????????"], encodeOffsets: [[54384, 17051]] } }, { type: "Feature", id: "ZAF", properties: {name: "South Africa"}, geometry: { type: "Polygon", coordinates: ["@@ǐ?Σя??????????????????е??????????????oΣ??fα?????L?˙???s???х?AF??Дд?????ó??????B??????????ēр????ДЦ?Π?В??£?????Д???????????UО?????Д???????ч???ā???T????????Q????ɑ??щ", "@@ν??????????????????Ф??"], encodeOffsets: [[32278, -29959], [29674, -29650]] } }, { type: "Feature", id: "ZMB", properties: {name: "Zambia"}, geometry: { type: "Polygon", coordinates: ["@@??????ǚ??????????????????????????o?????úOê?????????????Yí?????īТ???q???r?????????????Χ???Q?????????????ψ????????Θ???????"], encodeOffsets: [[33546, -9452]] } }, { type: "Feature", id: "ZWE", properties: {name: "Zimbabwe"}, geometry: { type: "Polygon", coordinates: ["@@????Н??V??????C???????ǜ??????ī?p?????à?????????h????Аó??F?ǐ????????ù????"], encodeOffsets: [[31941, -22785]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/xiang_gang_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "8100", properties: {name: "香港", cp: [114.2784, 22.3057], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@?@}ScT?@cWuJá?]?l|RLj?B?à? ?H@TOHCTDDDHDNAT@PEHDDNJLX@BABALHFF@DKHADBBLDHHFBLEJB@GDBBFBADDB@@KFAFBBJJA@BB@@FFDDADFF@FADDDBJC@AFBD@@DDD@DAA@D@DB@DHHBFJBBFEHDFAN@DGDC@DLCBDDCFDlAFBFCBEF@BC@GDAB@FD@DZJ?X′H?Mja@Y`?p_PCZ@lLnRGSDMFK|a\\?Y?}-?§????M?n"], encodeOffsets: [[117078, 22678]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/xin_jiang_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "6528", properties: {name: "巴音郭楞蒙古自治州", cp: [88.1653, 39.6002], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@?@èò?anw?V???|????üō???é???L?ó???a??±ˉ2Um??mè?V???W??ˉǔé???????ī?ī@??w???LTˉ?V???????V°w???k°ˉ???@????ǔ@?????L?ó?Y?L?ō???ó?K@ī@IU???m???Y????ǔ?ō@?2ˉV?ōK??Η????????L?ó?????V@Y?Uˉ???TL?T?J±?X??ōl?U?èˉ?K??°?X?ü±n??Vˉ?óaU??Uō????±???¥l?k?°?k¥??n??LˉYYU???l?°@?ō?X?YˉV??L?T????ó°YJ?|YKY£?ü?è?@?x?U???@ky?1?`U2?V???aˉ¥?@????ó@???J?wˉnóˉ?W???Y?w??Y??T??ō@ó£????ˉ??Tˉ???ōè?X??ó@Y?no???TV???U???????Y?V???°?n?V??èm???W¤????@°èXV??èn??bˉ?????±è?`?wō???mVV???Y¥ó@????@??bX??mV22`T_???b?è°?TW?èōmT??k??èU??n??V????ˉ°n|???è"], encodeOffsets: [[86986, 44534]] } }, { type: "Feature", id: "6532", properties: {name: "和田地区", cp: [81.167, 36.9855], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?¥?è??Θ??bU?T??ō????V???U??Y??m1T??@è??W????°??Y°ó????????n?m????oóU???@±wóLˉ°?L±?ˉV???bˉV?¥?2ǖbk¥?Kl?????@???óK@??aYX???x?????êˉK@??a???K??ˉVóaón?w?óTéU??bó???l1?aUó?KW???V?ˉ?n??????n??óx?w???°?w?°??X???ób±?kè?J??m2?x@òY????on?ó?n°?bUò±?X????Xmw?o?zèüm?nxmx2?mò?bn??êUo?ê?Vó?óU?????°????l?TL??n???@T??T?@?T°V???ж?????"], encodeOffsets: [[81293, 39764]] } }, { type: "Feature", id: "6522", properties: {name: "哈密地区", cp: [93.7793, 42.9236], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@Wn???L?|?o??lx?????????è@?2TU??ńV°ˉ?X|?m?b???a?????L????n?????nˉ?a?ˉ???ˉ°???laˉ¥?ǖǔw??l?О?n?m?????Uw°WUó????°yV±ó?ǔé?ˉ???éōǖ?Y??ǖw???ǔ?ǖVy?é@??L???????K?T??óK@2@°ō???l?ˉ?ó??lV????°k?????????Y?m??`@??ün?"], encodeOffsets: [[93387, 44539]] } }, { type: "Feature", id: "6529", properties: {name: "阿克苏地区", cp: [82.9797, 41.0229], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@V??x??T??°n??ò°2V?ˉV?????TTKèT?V???T?èō??W?2?VT??bl?ˉ?n_V??lmTnV?_???mǖ??é??W°°??J?k???w°¤è?lx?z?o?I2?ǔU?°?@T|??U?nU???ó?x?_2?????°??amō??U??W@ˉ????X£??n???Uˋm?ˉ????aΗ???°xW?Ux?ò?¤?w???ōóY??±°?@ˉ???2?", "@@ō?гw?¥?°???V??Tê???l??m|?W@ā?è?a?xèbT??IО?nI???Y????"], encodeOffsets: [[80022, 41294], [83914, 41474]] } }, { type: "Feature", id: "6543", properties: {name: "阿勒泰地区", cp: [88.2971, 47.0929], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@???Iè¥??U±?ykō°???ó???Xó????????ˉ?@??K?@@?V??р??V???@???ó??@???|?mlè??X?W??TY????t?ā???V???U?°°è??Uü??ó?V???2ê?l??°`n2???a????°±k??mm??@°Y????VaY?Vm???Yèb???@????nˉ??üU???@?ī?W?èǖW???I2ó?L@??X?mm?????k??ō@y°m?ˉ"], encodeOffsets: [[92656, 48460]] } }, { type: "Feature", id: "6531", properties: {name: "喀什地区", cp: [77.168, 37.8534], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@?@°????ó?@??@??@?£?lV??WV?ó?X??êT@?ò??lèèV@??Ik°??@èèā@??ò?@??@ò?l?_@?????ō?@b?Tn??lV?Y??W?????Y?@??èwWó?±?z??????YI?Yˉb????ˉ?V?°xU??¤?_?ó?I@l?X???l?????|???_?????T?????x?£??VwX?ˉw???????|ō???е???U?Yˉ@ōY???@Y??m???YKk??????ˉ?ī???V???U?éV1?ém??an?±?nwmwn????y?1?l?k?è?mōT?K???K?è?z????mx???I@t??YKY°@?è?Vo?@????U???n?Y?ǖ??Jm£YJ?|@??xV°?L????@?m@??óm???1??????TK?x?w?|???L2???U???±?????@??è??@ǔ?x?è??", "@@V????°?U??ˉmkˉó¥?I???b???a±ò?ālKU??_m?nw???m@è?|?bT°±T???°??Vé"], encodeOffsets: [[76624, 39196], [81507, 40877]] } }, { type: "Feature", id: "6542", properties: {name: "塔城地区", cp: [86.6272, 45.8514], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?n?¥???@???ò@??ōU????пU??L?K@??@?£T??????LVY???@??Ynmˉ??n??@n???@ˉómó?Y?ˉaYó?¥??ōUmx?b???@?bUoˉXˉ??bVò?nǖwˉ°??V????@kx±U???n???K??ˉ???U°?L@°?xn??ā???L?????T??k??āǖ?????U??°?|??ü?°x@°?????V???L°??b???óTl?wT??VTw?x??è?üL???@", "@@óK?āV????????zXl°??L2????è?ǔ?|l??°?T??????m??????īV¥ˉ?°?@??I????m?n??a?????b??V??w??ˉ@U?ōa??YJ????k?Tāl??|"], encodeOffsets: [[87593, 48184], [86884, 45760]] } }, { type: "Feature", id: "6523", properties: {name: "昌吉回族自治州", cp: [89.6814, 44.4507], childNum: 7}, geometry: { type: "MultiPolygon", coordinates: [["@@?L@è°??????£????Wó?b?????|??W¥°?Uˉ??Vē±Y@ó??????????kw???1?¥?K??Xm??щwǔ¤??@wó?ōV?£?????a±ò??óè?IV???k¤ó1?Jmx??YU?2?@????????m???"], ["@@T?°bT??ü?n@°?ń??k???UT?K????Y??¤?@@??L?K@???l???W¥?V?y@?TēU???@??ǖ??k???V?ó?X????K???ê?è?????ń"]], encodeOffsets: [[[90113, 46080]], [[87638, 44579]]] } }, { type: "Feature", id: "6530", properties: {name: "克孜勒苏柯尔克孜自治州", cp: [74.6301, 39.5233], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@????°UU?ˉ±??m??ˉYōˋō?wU?±???°??@2ˉ???`???¥????ōk???W@k?Jó??`?£V?ˉwU?°???èò°a?TTJ?????ī?y?2X??xè??@?T?????XTīU??km??Y@a???ī??@??`?k@????@??@???@???lˉ?J@??Uk??ò??Y@?éW???U?óXU??k?¤?@@?ō?ó@ó???ˉ??@@ò?¤k?????k??KXˉ?w?????ò?IV???ˉU????n????b°ò?VVèT°??ó¤V?°?V°2ê?l?ò?U?|?????VV?ǖI???T?é?n?W???a??èw±ī???¤?????w???U?|?éǖ??ā??lTkò°x°?Tx???V2?ǔ??b°wT??¥°n???V@°???è???b"], encodeOffsets: [[80269, 42396]] } }, { type: "Feature", id: "6521", properties: {name: "吐鲁番地区", cp: [89.6375, 42.4127], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@?K???a2?lü?@?ê°?????2?üb?ó???¤?U??@x??ǔ£ъx??m?è?@??_n?Tō????????l??ˉ??U?ük??°?k?????@ˉ@±?ó??ǔ@?????@??ˉ°ól??ˉx?U?????ò?UY°?Kó??x@?ō?????ó???ǔê?°Xò??U???ˋnn?±V2°?UōY?b?ǔ??@??a?è"], encodeOffsets: [[90248, 44371]] } }, { type: "Feature", id: "6540", properties: {name: "伊犁哈萨克自治州", cp: [82.5513, 43.5498], childNum: 10}, geometry: { type: "MultiPolygon", coordinates: [["@@??????mTˉāX°±?@?ˉ?°?Yt?|WüTb???U??mwVU?ó?@?Y??n??Jn?????ōL?ó?ˉ?¥ǔaǖ?ōa?Y?L?x???L???m??2Vlwè@??U???°ˉǖx?mU??a°?°WV1?a???èm¥°ˉ?ó???Um????V???lY??n??YXˉ????a??Y`±_U±?nW??a@??ó???ˉǔV±??J?1?ykw??ˉ£?x???l?Iˉ?Xˉ???êǖ??n???`±?kT@???Y?@T°x???I??Uxō?ˉ2ǔ??lU?"], ["@@Tāl??|ˉ??KT??????b??V??w??ˉ@???J"]], encodeOffsets: [[[82722, 44337]], [[86817, 45456]]] } }, { type: "Feature", id: "6527", properties: {name: "博尔塔拉蒙古自治州", cp: [81.8481, 44.6979], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@???Y????èKōō??mī?w@ˉ?KVˉ??°??w?KóT?bǖ?ǔb?|?°???K????m??Im????Tó@??UVnx?è?V??Ya?b?£ˉ°l?óx???k??Ty?ê?m?xV???è??X??Θ???????°LX??????b"], encodeOffsets: [[84555, 46311]] } }, { type: "Feature", id: "6501", properties: {name: "乌鲁木齐市", cp: [87.9236, 43.5883], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@??W???U?è?l????ǖ@???@ylü?XV?T??|V?k?óò?èk????@??nō???ō?????@?±TV??nw?I?ol£??U??J???óˉī?éó@k?±??b??óL???b@??ó?ǔ?a?T?V???b????"], encodeOffsets: [[88887, 44146]] } }, { type: "Feature", id: "6502", properties: {name: "克拉玛依市", cp: [85.2869, 45.5054], childNum: 2}, geometry: { type: "MultiPolygon", coordinates: [["@@?T???yVa??m??????īV¥ˉ?°?@??I????m?n??aY??L°?óK?āV????????zXl°??L2????è?ǔ?|l??°"], ["@@?I??@UUwōa??YJ????k?"]], encodeOffsets: [[[87424, 47245]], [[86817, 45456]]] } }, { type: "Feature", id: "659002", properties: {name: "阿拉尔市", cp: [81.2769, 40.6549], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@nI???Y????ō?гw?¥?°???V??Tê???l??m|?W@ā?è?a?xèbT??IО?"], encodeOffsets: [[83824, 41929]] } }, { type: "Feature", id: "659003", properties: {name: "图木舒克市", cp: [79.1345, 39.8749], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@VéV????°?U??ˉmkˉó¥?I???b???a±ò?ālKU??_m?nw???m@è?|?bT°±T???°??"], encodeOffsets: [[81496, 40962]] } }, { type: "Feature", id: "659004", properties: {name: "五家渠市", cp: [87.5391, 44.3024], childNum: 1}, geometry: { type: "Polygon", coordinates: ["@@????l?U??¥Y?U??Wk?@tVńY?@ń?t?UX|??"], encodeOffsets: [[89674, 45636]] } }, { type: "Feature", id: "659001", properties: {name: "石河子市", cp: [86.0229, 44.2914], childNum: 1}, geometry: {type: "Polygon", coordinates: ["@@l???m??@m???n°Tm???@"], encodeOffsets: [[88178, 45529]]} }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/xi_zang_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "5424", properties: {name: "那曲地区", cp: [88.1982, 33.3215], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@???büoTwnx?bT°?@?????Iè??J?è?U?Y?¤ǔLT??@???bl??L????è¤?L?¥TITˉ?x???????XV??ˉ?K?ǖ??ˉIU??£ˉó?£V???T??w???£ǖxT?±?YaU?è?Uˉ??UōèY?wW???±Y?ó??°IT±m??ˉm??¥°Un??????w???w??????????°ó??èa?m??@¥°wǔ?ǖ?°????????????bè???°@?w2?TJ???b2?°ê?UT?lè2?V?èK?ò????????U???kˉ@???k?l???l???V?ó?@?°@????Vˉ????nˉU????ˉm?ˉb?è@ò°??b??????kx?y?Jk£YaU??ó??kó?n??Y???ó?Tmn£m??ˉ@???Vˉ???k@Yów?????±ǔLō???V??è???è±b@ò??U?óak?l£?ó@?ˉL@??lUó??ˉa?è??YL??ˉ?ˉ@W??x?òènW°??U2ǔó?2V°ˉ??ǔYL????k???Y?Y?ˉT?V?w??Y?ō?è????mˉ£W¥?Kkó???W@ˉ±kō??è?b@ò???a??ˉa???kó????|Yaˉ?Y??@????m?ǔx??ˉlVā?T?b???JU??V???W?zō?ō??W?n@èˉTóVkw?nk??T?ò?Tˉ??y??Ux?ènè±b??Y?è??w?wT@m?èV@y?°???x?a?YˉX?¥?èóW@?kxln?xVèó?k???@°ˉ??L??±?YV?T?V???T???ak???@è??????°ò?LT??K???Vèò???¤??V???U?èt?L@??Tlüèn?òU??@????W°?°X???@??t???ò?|@???Wā??UT????°??@??V°?bU?nzm¤???è"], encodeOffsets: [[88133, 36721]] } }, { type: "Feature", id: "5425", properties: {name: "阿里地区", cp: [82.3645, 32.7667], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@????n£myV??aUˉ?ó?@ˉ?????VYó?X??ó@??¥????èy@???W??ˉXˉ?????@V?è??mk??Y@ó?K?yV???Uó???£?????U???LYó?Kˉ??????ō@???l?èb??èY???U?YTU2ō???K°?@ˉUK±????bō?m?è??ó??ób???ó?¥kī?ˉól???K??U???V??¥n??mˉ1????@???óxYk??U¤?b@?ˉ??xˉ??Km°?āk|l??Kn????|W???m??°ōU?¤U???°??KT???ǔ|?T??????ˉbm?U?YlˉUm??lˉ£?w???aYn???k@ˉ?K??ō??n?aT??nkml??¥U???k?????V??ó°L?ī?U???ǖ?z±K?¤?2ō¤ˉ?ˉUY¥V??óè?Yw?è??k¤ó???Wy????V??Vó???ǔ??°k?±VU±?|U?Y??JV??¥XU?U??l???ǖ???ˉw?T?@???lY?ó??ò?nU???lxólY???±??L??YL@??ˉXˉ?U??óaó¤??Xò??óLk|?????????K???|??????ˉImò°|n°ˉTl?Y?n??ò?K?T??k?ly?????I???òn?m?ˉln?óT@?ó|??????n°Y°?èU??blTó?@?ǖ?°Uè?°X?t?????l????2?m|°?@¤??X??blü?zko??mX???WV?óTn°l??x?a°??L???b@?°X?Y?x???a???°è@??@è?|ü??W?Tk?è@V?°l?k?±2|?U??°aè??b???b?¥TI?l???VèU???b?k??n?mnXb?ò???@?????ó??????"], encodeOffsets: [[88133, 36721]] } }, { type: "Feature", id: "5423", properties: {name: "日喀则地区", cp: [86.2427, 29.5093], childNum: 18}, geometry: { type: "Polygon", coordinates: ["@@??Xt????l£?ò??Tx????U?T|°V°??£?±?£2L?y?ǖ?ā?Vó?ˉKó?U?????lò??V??|k?ln?mY??b?m?????L@°?l??Tm?b???x°¤?kn?°VTkV?n?°a???????Yǔ¥??Y?ōLˉ?ō?V??£?V?ˉn???X?ü¥??mī?Lk?l¥??nˉ?L°?èw°?@??aV£??Tl?wè?@ò????°o?nm??|Uń??V?ó??L?è?k?°l??|?????a??????nè?è?a??2?VL??l???U??wkmlw@ó?X???|°W?T?b?w??èˉ@t?Un?Y@?x?x?ńT???2am???Vw?è?t°??Y??èYl??mlx?U°Y@??m?X?????y?X???UV?èI???a?YU?°k??ǔwn?ü?è??@T?°?Tbè¥ü????l??°b??èb??@??a??ˉUUˉV?????ˉaV?ˉ?°??mn????V??±?ˉ¥V?ˉYk£?ō?w@±??°?V???@??a@??L???????aˉ¤YI??U¥??ō????ókYó??¥ˉ?U??£Xˉ???kY°V°ó?ˉèW?T?????kā?āówm¥ˉJ?1YJY?ōVV??aY??@??????ˉ_?????Vnx??ón???x???VYè?V?òó?ˉ?±??£???L???y????ˉV?nV¤Yè@°?TY¤????m|YxóK?¥?èU??êV????WY??aō|ó??l????n???V????o?@m|???mmˉYK??ˉb?????b???Lm??x?°?U??YXk?Ym?|W?ˉK?òknYaV?YèˉK?ńYKnTˉ?"], encodeOffsets: [[84117, 30927]] } }, { type: "Feature", id: "5426", properties: {name: "林芝地区", cp: [95.4602, 29.1138], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@?Vè?V?èk@?°K@???k¤l??bVò??@?2a??????U?????ǔK?2?????x@T?l???UlˉèLV???TJ?°ün???wübXê?VTˉ°??anaU?°w????W?°mèyèam¥T£?@?¥?blT???¥?xè?mY??????V??ō?ōnó??èī?IU???°??LTˉVò??@ā?b??W?è@V??ó?Kè?U??wV??nWòèx???l?£?ō?x2ˉ@???Uˉ???@?¤°£?é°k°l??èó@ˉ??è??kk?ó¥YX???ü@òó?Yˉ°?ów??±|?JUò?ā?wˉ°m?ˉ?±akxY?n???l??K@?ˉlU?ˉUV?ˉó?ˉmō?Vǔ??T?WYè?@??ˉü?z?tˉ?ólm??????U????ˋ?ó??ō???b?w?°??k|?ò?nUt?ò??kǔ?èó@?2@?ōń?y?z?aY¤?I?¤???|??ˉ¤?bó?ˉó±?U2°¤??üVnè?????°???t?z?èVā???ā???X??ˉ¤ów??k|??Uò?z?@????Yx@2T@?¤?U?|U?°x?U"], encodeOffsets: [[94737, 30809]] } }, { type: "Feature", id: "5421", properties: {name: "昌都地区", cp: [97.0203, 30.7068], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@??V?m°???èU°???üˉ@@???Uò??k???kèl??ò@èl°è?V?ó??????a?????wn?ōw@¥?|°?TmV?°wn??w?wYw@ˉ?mT?°w???kT?l?2|°@???wVó?al@n???n°@|???UX?ǔ??V???K?èY??2???@l???è_m??zǖ?l??aU??wV°ˉ|??èa?l@???????n??I?x???@?¥??????k?????ó??@?è?V??T???mē????è?V?°?V???°?n??£m???2?ó?U?°m??ˉ@mxUāˉè??°?Y???Uˉ???è@°????ˉkˉl?êˉ¤?£?@?èV°??@?±°?w???¤?k???wX??mU??xV??ò?Ló?U??@Xó???a@???U?Y°?Kˉ??òV??J????m?????U???????nT??ów?|??kYóa?|?@Y¤n|?b?tˉnXò?ò??ˉxV?mb?bˉ?Y°?UWé?a?x???m?ˉYI??U??Kk°?V?ī??U°?ā@??°n?m¤Yn????T????ml?????VòTbl¤èI?tlw???????aˉī@???°an??°"], encodeOffsets: [[97302, 31917]] } }, { type: "Feature", id: "5422", properties: {name: "山南地区", cp: [92.2083, 28.3392], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@°TU?°|2???üLǖā????TL???êT@U?üU?°?ˉü?°W?ām??|?yV???l¥???x°£?ò?Wè???è?U????y?yó?ōˉ????m??U??ˉ£V±2?°????a°£?ò?¥???£?JT£?b?y?z??@??±?@??lǔ?ó??Vy?m??l¥?ó?ˉ?????Y?????y???ēV???°?m?TVY??ò?a??ó????èèèl?k¤YX@`T?????ō????KUYY£?¤@|?lˉò???ˉó??móxYT?V???K@??b@ü??Uòˉè?ü@2?x??l¤"], encodeOffsets: [[92363, 29672]] } }, { type: "Feature", id: "5401", properties: {name: "拉萨市", cp: [91.1865, 30.1465], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@??2l@°?X??l??LX|°¤?n??????Tèü??x?U°YT?T???l?????TK?ǔ°óUˉ?±ǔ?V±?óXˉ?m???wXī°@°???TK????°b?????U?VˉwV?ó¥?V?£Y@@±Tw????è@?¥nō??ˉX???°?ˉ?VV?Y@?é??YK????ǖ??Kóè???U?èmò?nˉ?°èU?°b????U?V°°V"], encodeOffsets: [[92059, 30696]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/yun_nan_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "5308", properties: {name: "普洱市", cp: [100.7446, 23.4229], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@U??2?a@?22?¥?V°???2bl¤k?Vxl?@??°??2@???y?@?|ˉ?@x?xVxU?V??bV??üm?????moXXW?@ā??m?mXU°?òm?Tx°w?@°?Xê??°?nV°U?l@k?@V±?ī@£?????£?KTy@¥?k@y?a@?nWV??UV??w?m?£?J?knm@wmkn??X???X?¥mUU?lUnb?ˉ°?nk??VIn?lIUw°?n?m?k@@mlanXlanm?k@wVWUw?_@é?a??nmUaü£?mX??¥ˉ@@?óUmYˉˉTYlKnx?£???????J°aV??UY?V¥?b?I@wm?ónˉy?L@?Wk??mè?`?IWaˉK@ˉmUn?maXm?bmak?ˉ????òYmˉ?mVˉK?bˉK??WW?X@a?V??kn?LUWV?kXóW@k?a@?óbˉU?wmb?¥UUlaU¥U£ma???KXk?mY@kwm?ˉ?k±?bUUVaka?|??kL@`???aˉx?m?????LUW?@?n??UV°LkL@b°°@¤?2???n??k?l°kè?òèzV¤è?W???nV@??|@?Ux"], encodeOffsets: [[101903, 23637]] } }, { type: "Feature", id: "5325", properties: {name: "红河哈尼族彝族自治州", cp: [103.0408, 23.6041], childNum: 13}, geometry: { type: "Polygon", coordinates: ["@@°°nT?V@?°@?|W??n?¤Vbmn???b@ê?`VxUX@x????TUnn?WT????è@??è@z?üW??êl?2??KnVˉ??x@bk@@?°J?£èbl??nnm°nl?UkVUUwVm?Kn??nV?TxVLX¥laX@@xl@Vzè?Vm?k@b°?è?m?V|?`W?X??bUb?bX?°x@a?VVkn@ltnXUlVx???y?IU?ka?I??@lXx@b?z@????¥?_V@l?n@???y@al_l`n?m?è?@k?mXwWK?Uˉ??a??@w?mU?YKUa?UU??wW?@w2?@k??V£?mm£VKk?V@@?nw?¥??@k??nllIVlnLVakalknJ??WmnaUaV?VVT?n¥m?@??ˉU?l?@???V??aXaVˉUyVLVk?@nJl?XLl?kxlbla2òl@n?VJVk?x?KlkUa?V??Y?U?@?mˉ@±?Uó°?ń??mU??@?ˉˉ??@nml@°ˉ?ˉ`@w?£@ˉ??k@??nm?ˉU??I??ˉL???n@bó°?U???wm?ˉ??Um?ˉa?????I@ykI?VU?ˉb?I??????ó¤mwkLYT"], encodeOffsets: [[104243, 23429]] } }, { type: "Feature", id: "5326", properties: {name: "文山壮族苗族自治州", cp: [104.8865, 23.5712], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?w???@2ˉmaUm?U?x?@X??bTInlVUVw?JVaU??K°¥?xmTXnlKlnna°@?????wUmnkl@°??£nyn@V?V@Vak??@@kTY?bmx°Vnw°kl?TIn?TVlKl?@?Xa°??KlV?U@??Jnx?U@è?bUKlm@ak_?w?anWUk°?l??k@Wk@lwU_?@UalóU¥??n???kJW??@??mVXx±b?K@n?V±a@??a?£YK2?WknamKkn??kˉ?aV??Vˉā?U???ò?¥?I@mmˉˉx??W@@`k@ó??UU?ˉlm£?Wl??w@mmw?mW??U@y±U?xmwU?ˉU?¥Y¥ˉ£m@k??VU?V°Vbkl?L?wUlUIm?k@±?kbkalwk?WKk?mI?@UlUKVzU°Wb?bUè??@?k?Vā?°@?n?m|Y?UUUòVbmbXn??mIkllbUbmKUkkJmk??@l???|mx@?U@lòULn¤?nU¤??@l±?@xX??xV??VVbTLV??n@x???b°??V"], encodeOffsets: [[106504, 25037]] } }, { type: "Feature", id: "5303", properties: {name: "曲靖市", cp: [103.9417, 25.7025], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@è|lKT?U?V?ˉUmˉ??VUnVVU??n????Ln°°è?J?w?@lbTa?|V?XJ°ˉWˉ?aTJVkU??a??@?lKn?mWUkˉaˉ?@?m±@??kkbWWX_WóU??_l?k?m@U?m@?l@IW?nˉl@VanV?UV?U?VwVx?Kè?VmUē?@??n@VY?L?w?VVwnVlmkUV??°ka@k??YaTUl£??????X±±??a@UnVnalónk@wl?UVmkYJ?aW??@?wóVVnnb±°?@ó??xXLWx?n@l??n?m?k_k`@bóz??m@k?U@?`?|ó?@nW?@ü?XWw?@?y?b?|@òlnUb@x?lü?k?@2?@U?ˉbmy@?kV@b?b?|U`lLVx@b?Ll?T¤@?°VVT?U@WT?Ub?J@nn?@lnnm??xU??UUb?K@??wklkU?VWakn@?lbU@@?ULVxkKUn?°ˉò@???km?|m@kl??@lU?l|?@Vl°w?nnt?U?bUx?b??V???U°?a?nna?V?al@@b"], encodeOffsets: [[106099, 27653]] } }, { type: "Feature", id: "5323", properties: {name: "楚雄彝族自治州", cp: [101.6016, 25.3619], childNum: 10}, geometry: { type: "Polygon", coordinates: ["@@mò?XU`Wn???@Xl±|??Uxnbl°knmKUx???xV?Ux°??òè?°JlnTK???W°|??Vx2JVw?_°¥@UV@@wnymknKˉI@???2b°??£V¥?wU??V?¤nL?k?Jèw??°?l??ˉ??V?UU@?@?°??YX?l@U?°??@U??ˉ@w±ˉVm?UUlm@m???nIVyUwmak£Vwm±?@?w@n?@Uxkwl?nL?mk??@±?k?ka@kóJVˉ??U£lwˉ?Xalbl¥ˉUX?@a??UaèL@?VIV?kaUˉmm?akLWkUJˉUmxn??@?kUxˉx??mW?īYkkb???bkxWmXwWkˉw?Kk??L?¤?ń??@¤ó?U2?@@l?kˉVmUˉ?@xV@k°l°kbU?°nm?VnU?@°???UVèT??bUòTnU|?V??l??@Vl"], encodeOffsets: [[103433, 26196]] } }, { type: "Feature", id: "5329", properties: {name: "大理白族自治州", cp: [99.9536, 25.6805], childNum: 12}, geometry: { type: "Polygon", coordinates: ["@@lb?KVIUa?@2m@b?x?òüxXLmbn?l@???K°???k?U??x?lV|nJ?U???n?m?@?x???w?bX??????LU?Vw?K@wlm?aVw?@Wknm?IUml?nJla@_?@kYmKUa??mˉXw°aUaV?l?2JV??b?Jk??ā2VVk?m?bVwUó?w??VwnLlmkˉmaVw??2¥Wk?@??XmV_?Wn?Uk?@kó???UV¥YmV??aY?U??V??@ˉV?Umn?ˉmV?lakˉlˉU@@w??Wéˉ??@ˉxYwˉ?ˉJ?aˉ?U¥mLU¤?bT??b?L?WUwmIUVW?kb?`U?VbˉL±??k??YKkw?K?ê?U?t?è?VˉTVbU?°KV?k2Y?mI??mV@k?m?Uk?Vxm?ˉKXè?JU|V°ULWx?L@m???b@bkx±LnVU?VLnküWnwlL??mW@kkJU_?V??W??T"], encodeOffsets: [[101408, 26770]] } }, { type: "Feature", id: "5309", properties: {name: "临沧市", cp: [99.613, 24.0546], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@?x??l`2X°?V??x@x°T°KXa??U??W?bnIl`X2°b?xl°???V@xVxk|mb?l@x?XV??zX¤????k?°?kx@l?êlaX?VUnJVx?XèK?aY??aV£nKV|°??b°I°?n???VˉnWn???@?X?WWn1??ō?n???U??aU?V?Uw?w@w°?ó¥?@?z??±@???ˉ@?k?Uwl?k£±a??ˉ??U?|±±@??bó±V?Y@ó¤?wˉI@m??óm±?X?ˉIól?K@??°Ullb?zkKlln@@??o?UmVk2?ò?x??UVóL?b??mèn?mbnl?a?x@z?@???|k?"], encodeOffsets: [[101251, 24734]] } }, { type: "Feature", id: "5334", properties: {name: "迪庆藏族自治州", cp: [99.4592, 27.9327], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@W?Xw??@akk@y??k?°īX¥?Uó?ˉw@?n?UaVaU???ˉ?m?V?k??T??@nˉx?òm?V?ˉ?@x??@?k??wm??a@?Ua?Y?ˉV??yV??a@???n?YVmank?mmT???@n£±??z?mU|?Vm?nümbn?@°nV@xmz?@moV|k°ln?¤?????n@xk??IUxU?@??|V?mVkmkXW¤XzVx@??x???Tˉb@lV???T?V?m?X?m|V???T@???1Vón¥?Kn??KX?ˉx@è?è±?X??a?xnlV@U?l?k?V¥??m?2?m?T???m°??m?X¤mzn???V|TVVb°bnTWbn?°l@?V?è@??V??±@ó?Inx?w?¥@£T?Wˉ?£U?UK??k?±akkkbmWm?è??a??U?è??W@wmknmUˉ"], encodeOffsets: [[102702, 28401]] } }, { type: "Feature", id: "5306", properties: {name: "昭通市", cp: [104.0955, 27.6031], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@m?nK@wm?U??¥m?óXǔ?mX@??V??mL@x???nk@mlU??ò??@??L@mmLkm??@b?X??W?kaˉl??ˉa???YY_@m?@@a?@UklwUm@ak@?b?Umb?m?bVˉ??U????aVw?a?Vmy?mˉxUk?@k¥V?UX?¤Vèm`@??ń?ü@ākn??k?????T??U?V??TI@?Ux?|n?l@??nxUò°|VbˉWUnW??Iml@xn?Ub?¤??èxlI???KV??@è??Jk?U?±?Vb@n??VüVUV??L?w?l?kn??@nx°¥??2mUw?@m??m?UlˉU???Um?Lll?Il±?@V?kw?W@w°@U??kU?óI°??????L???`nU?2lm?b?V@n?JUx?|X|l@????U?V??@lV?KV???V£UaTU??nW@ˉVU@ó??"], encodeOffsets: [[107787, 28244]] } }, { type: "Feature", id: "5301", properties: {name: "昆明市", cp: [102.9199, 25.4663], childNum: 11}, geometry: { type: "Polygon", coordinates: ["@@n@Vk?VUn2°@x?°V??@ˉ?V?k@W??Tˉ?@?@?VVU????°k?V??x?¤ō??x°mVk??è??L?°?x°X?°Vm?LVxU?°bX|VW@k??lkn@?¥ln??@?°??ˉVmlLUwVK@?V@ka@?lmXb?UlVlkèx@??LVa?VV??wn?mm@km?@m?IVaY?@X?VUYˉU@?Y£k??K@aUwkKV_?¥?a@alU@?nz°aV?è@@±l????k@wVakm@??¥?a?z?@Xx?W@?X?@m@??y@aWw@kō??JlbV??J?z??UwVkmWkym@Ul?U@bˉwVo?U?VUê???XUaUbV?U?WXUmkK??WnUUU?V????VV??Y@kk±??ˉ??L?k??±WkXlVkl?@?wXbmL???VUIVmk@Ubma@kkaVKU??kmlXLWn?Jˉò?°@zkolLU?n@@n???@l??nmKkèlxVw?@@mèx?@n2Uxl¤nbVxUzmJ?òn?"], encodeOffsets: [[104828, 25999]] } }, { type: "Feature", id: "5307", properties: {name: "丽江市", cp: [100.448, 26.955], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@l?@???@w°óU?n?ü?°w@m?ó?Yl?U?n?°???VüUbVbm?@?°x???VW|ˉ?l???@zll@b??WxX??a??X@???aXwl@Xa?|n??Jn?@mnKWˉè?Vˉ°ak?VanXVwl@VyU?VU?bèīlaUk°?kˉl?2V?Uk???@??I@mVw?a????Vaka???bU?VL?aXIWKUw???aW??KUaVk°?@?Uw??ˉ¥?X??YLkmˉI??ó?ˉ??a?nUl±U??ló?I?aU?±Ik?U?VbˉbWxn°?òVbnLlT?@@`kbmIk?Vn?JmnXl?@Ux?bkn@xóLUxV??Kóó??W??a?x???w?@?n?m???V????X??LlVU¤?b?|m???@ā?bU??zU??°?TVb@??bn??x"], encodeOffsets: [[101937, 28227]] } }, { type: "Feature", id: "5328", properties: {name: "西双版纳傣族自治州", cp: [100.8984, 21.8628], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@l2°?nòlxT@?nWl?L??nbV¤V|kbVV?|na?x°V?a@??b@l?XlWU?VX?Klm???U@b?WXXü?°Lèa°LnU°?Tn????°?l?nb?a?ˉˉKW??ó@kmK@U??V@k?°??VV1?a@y?_??l_nólL@anI@?óWl£VU??l?k?l??KVw?U@?kV?amˉ?L@b??Yk@Vn?Ub?bYw?@?¥ˉlk??????ò°b@|nlUn@??V??m??bW?U@Y?ōm?ˉ?aU??mk??WWw?@±??nˉU?è?a?L??ˉm?L??kw?l@°mnèòˉ?ów@V?x?āU¤°??°Xl"], encodeOffsets: [[102376, 22579]] } }, { type: "Feature", id: "5305", properties: {name: "保山市", cp: [99.0637, 24.9884], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@X°?Il?@|??è?m?TaT?l?èxV??lV?è?lLT£èolkU???Uw?ˉU?Vw?@n|mlnV?IW?°Ln?Uwl??V?n@lnU??nJT?l±U?ˉLV?Ua°Y?U???y?V?é?LlxTL?āül2?°KUaV??_?é@klwˉ?l?????W£?yU??W@w?knal¥Uw@w?U??kˉ?wˉaW±k_mJ?a?XVò??WbˉLˉY@w?wU?ˉ?±Wk_???w?wōKmb@¤?bk°l?????UJ??Vn?l??U?ˉ°VbnbWxX?m?T??WUā?L?yWz?KmbUxVKknY?k?V??ā?¤Ux??@?ˉ?m@?|"], encodeOffsets: [[100440, 25943]] } }, { type: "Feature", id: "5304", properties: {name: "玉溪市", cp: [101.9312, 23.8898], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@l??L°xXlWxXnlw?a??laTl??nX??°wVw?l?@m?nw°VVIXllK?bnnV°lbU?UJ@è?KVb??@bW?°Vk|kaWb°?kxV¤è?U°?I@llbl?2??@?@?ó@mm@V?kKl1@y?ˉ°??IXmWKnk?lV?ULlb@lnbVal@UnVJ?U??nKWa?x?@lkkUlW2X???l?K°???l2@l?TU??U??U?V?VVXm??lLVnXWV?U?VaVb?W??Vé?U?VU1W??aVa?aW?X??_U¥n???ˉ?@a?lUn??Uyk@@wW@kbW|UKYwU??mm??LUnVxUVVlk?ˉmmn?mk??a?¤ˉI@?l@@a?w°?mU?L±?k??éX?ü?@yè?@?????Y??XmmYV?????lmnkbmWkb@nl@n?m?ˉ?VxkJm?UJ??mlˉ??°makVV?nV?|?W???Wm?nl@xmn?l?I?¤?n?xU??VU?mX@??b@z?l@|Yt"], encodeOffsets: [[103703, 24874]] } }, { type: "Feature", id: "5333", properties: {name: "怒江傈僳族自治州", cp: [99.1516, 26.5594], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@WyX£lWlnnUU??¥@?V?Vw?Jl?@w?m?ó???£kmlˉU¥n1?@ny@wmU@ˉm?nam?n??UV¥èn?y2?m¤?@?ónY?nmlnbTU?¥?aV£kU?KW??ó??mIU¥ók?wVól???ˉ??L??k@m?naWK?wó??w@a±n?@VbUJ?Lka?YX????UV`lI@lnX??kKmx?XmlUKV?mU2Klw@a?aó?@n?KXwVKUˉV¥mUnkm¥?@UxV??°Vx??V?klmT??kKWākVW?nl°Lnm@?°?UxlV@nk|?JVè°?Vò@nX°@?l?U?mln??2nxm?nVV?ˉx@èm°XblVU?l°@xkXU¤WXX?W?X???mk?JmT?w±b?xUīkKm??VU?YèV?kx@??lX?lnk¤?Lk???k|?xU??L°?ˉ?@LnK@b°xVI?¥Ua°?@?nm@1?K?TèWln2n"], encodeOffsets: [[101071, 28891]] } }, { type: "Feature", id: "5331", properties: {name: "德宏傣族景颇族自治州", cp: [98.1299, 24.5874], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@?¥n@°?@???Vw?£??U?l?T?lmULVwnaüLXy?z?KV??XY?n?W?XwmaUa°ˉV????kUm??VI???ók?lˉ?a@£nama?@ˉmˉ?ó@óy?b?k?m±??ammVk?L?wU`Wk@V?kUm??lUUKmbkkUVUw?|ó?°??bn°?|lo?z@x??ˉ??@U?°n??U¤?U?°V?@èmlnzTl°|?a?xUx?LkxW?n@??2??W???@°èXl°Llx"], encodeOffsets: [[100440, 25943]] } }], UTF8Encoding: !0 } }),define("echarts/util/mapData/geoJson/zhe_jiang_geo", [], function () { return { type: "FeatureCollection", features: [{ type: "Feature", id: "3311", properties: {name: "丽水市", cp: [119.5642, 28.1854], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@@V?bVl@Xn?UX?KV?@|nxlUXV?n?KVmnL??UV@bn¤lLXK?2?`nnlJXIVJ?I?Vnn°KnnVll@VLXWV@UkVaVK?zV@???VVaUK@?U?VUl@@WnUU?@wVLn@Vwl@XW°LVbn@VU?@X?l`@XnKVbkl@XVJlUnlV??xlL@lnXl?@V?UnV°?°?@a?UVLXblWVXn@VVUV@L?¤VLV?U?VbnalLUUV?X_laVa?WVzXKV@@a@KU?mImmXama@k?U@yVIUK?aVa@kXK@aWU@V?IUmW@kkVm?U?@VwUa@K@k@U?`@kUKVk@UV@VaUm2?Vy@klUUWUkVmUa@_?KVaXa??Xm?U@mU?lWkaUX?@mmkL@w?J?nVV?bWKXa?@@I@a?JUU?@V?UL?W@akLmb@K@a?XXw@m?VmUVkUy@£@aU@@VkUWm@kUK?XUWU_mW@wkkmJUUkLWWUX?W@IkJ@k@mW_kó?_Ul?L?m@I@aUaˉm@k?aˉLUJ?@mVVxUb?a@LUKkX?bm@Uak@@a@Um`?IUbUJ@nUVW@@LnVV@l?UbVlUX@`??@blXklW?U?m?Xlm|U@@Vˉbml@?@nUb@llnn@VbX@lV@?UVULmU@JVn?bVbkb?VWxU@@nUVk@"], encodeOffsets: [[121546, 28992]] } }, { type: "Feature", id: "3301", properties: {name: "杭州市", cp: [119.5313, 29.8773], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@X@l?°KXXlW?b@2?`???b?I??X`l@??@bWl@n@VnLUV@V?@°|@?l@XVlU@?@xVbUb@Vkb@?@XVJVz?J@LT?@VmLUxUJ@LU?Vx?b?xXUl@Vaèw?b?aTa@Vl@XUVx@V@V?LlbnV?al@lb?Vnn?LnKnL@VlbVJXalI?b@KUU@mVInJ??U?Vl@xU?VLnU?@U?TaV@lkV@UanK?L@UlKVUnb?mn@@nUlVnVJl@@UXU?L@WVIVJVxVLXV@IüKnbn@V¥V@@I@????y°b@UUwnk°??VlU??Xm?£?a???IkV?@WV?@@aWIUWUIkb@WW@Un?K@UU@kaWVk?VIVVnU@?UWVUV@VmV?kKk?WIkVWaULU`UImJUImm?U@??wmwUV?IUWVkUamaU@mV?k?b@KVU@aVU@anKULVJ?U@k?U?JUV?kk?VakU@??aVwkW@UWkXmWaULUaUK@X?JUUm?VU@U?V?UkJ@ImwmKU@k?@lU?W@@akKm?kamIkWl_UwVm@UkaVUUa?@UamakbWlkL@aUalU@mkL@U@U?lmK@XkKm@Yakb@x?nXb?`?nUUU@??U@?wU@@?mKkk?VˉU@lULUbVbUb@V?a@L?oYb@b?LmK?x@VUL@bk@mxULWl"], encodeOffsets: [[121185, 30184]] } }, { type: "Feature", id: "3303", properties: {name: "温州市", cp: [120.498, 27.8119], childNum: 9}, geometry: { type: "Polygon", coordinates: ["@@ll@xnXV`VX?WVL@lXnlV@UV@@b@¤VzUlnV?U@nWx?W@b@LnalK@b?XVKU?è@VV?I@b@J?@WbXL?aUU?m?I@xlKnn?@VWlbkXV?@n?VWn??WbUb?L@`VbUnVlVXkV@lUz±?VnUbU@@VUlVL@l?_@V@l@LVbV@XLV`Vèlxn@lU@a?aVV?k?@XJ@nl@@LU`°LVb?L°a@a?UVy@anI@a?a?nV@2wüJX@V?VV°k??na@WVk?aWw?U@m@??k?aU??Y?Y?nèa?aóI??@±X?WkU?@kV±kw??UkWw??U?Y??k?l?ImaUaWóX??k?UnWV?mm?k?K?n?T?l??UlUx@XWb?V@JkX?°mb@VULVxUVk@@LWWk@WIk??UkJmUkVmI@y?@Ua??kLm?U@mUUUkaVk?@mK@U?lUU@UmKmbUUUJ@n@KVLUL@VkJWXX`mnULWlkL@JVLVb@°kxkU@LV??V@?VLV`UL@VUX"], encodeOffsets: [[122502, 28334]] } }, { type: "Feature", id: "3302", properties: {name: "宁波市", cp: [121.5967, 29.6466], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?|?ā°?nXTV?K?k????°?n???@w?¥üb?U°??XTWó??Y±IU?è¥@U°w??2mm_@aX?VKTVlk@akk??@£X?Vw??X?Waˉa?b?K?????x?Ló?k@???@ˉn?KUL@xkL??kWULUUmJUXV?U@m?UXˉ@V`mbXbV@@nn¤WX?x@?kJ@nVVUVl2UbYVUVk@Wx@V@??VXzml?a?L@VlLU`?XUVVVUnl@VbnJlnUVVn?lUKkbmnn?VxlJnxmbU@UL@KUV?X@xmb@lk@mnVVU??è"], encodeOffsets: [[123784, 30977]] } }, { type: "Feature", id: "3309", properties: {name: "舟山市", cp: [122.2559, 30.2234], childNum: 3}, geometry: { type: "Polygon", coordinates: ["@@l????t?V?L???X?ü?X?V???w??l???èóV?Vǔ@??w?kmK@?XīWa?U?Ym?ˉ??w?±±n??ˉx@V?|V?2J?T?èYX?Wˉ??V?aó|@x??m?ˉ??ā"], encodeOffsets: [[124437, 30983]] } }, { type: "Feature", id: "3310", properties: {name: "台州市", cp: [121.1353, 28.6688], childNum: 7}, geometry: { type: "Polygon", coordinates: ["@@lV?IVWVz@bXJl@Xal@°?nLll@nVxnV?K@?UJVb?|°?k`UIWJXn??@bUJ?Xl@lb?Wn@UzVV@bVV?mVnnJVXna?b?KUKnUVVUnVLlKVLXa?Jm£@mU@WanaU_°@VWn?V@U?VWnIVVVKlX?òlK@wVK?L°m?@??l@???K?w????U?l£@?U???Vk?m@?U??a?I?mUk@m?w@a?£?Wk@???Im±@ank?UlaU?Uwˉ?ōa?b?b?m?T?TV??b?l@?@n?VXx?bUl@Xmb??ˉlUUU?W@?I±xU@?m?b@bmJ@bUz?V@bˉb?KUaˉKV_@Kk@@mWI?@?lUU?b@bkVm@kwU?U_WKU@Ux?@?VUnllX@Vn?J@UXV@bWL@lUb?bVLUJ@z?V@lnbWbnnnJV?@L"], encodeOffsets: [[123312, 29526]] } }, { type: "Feature", id: "3307", properties: {name: "金华市", cp: [120.0037, 29.1028], childNum: 8}, geometry: { type: "Polygon", coordinates: ["@@nbVb?@VbUVlb@VUnVxk`lXnJlbn?lL@bX@V?@kl?V@nLnx@JlI?V?U@VUVn?VV?I@WVLVbVKXbWnXl@VlXUx?b@?lVUbl??lVU?IüVnalKX@@bV@@aUUlU?wUw?@naWW?UVaUU?aVb?LlxXJVk°?U?lkU¥@k?a@LVlXLVl?VWznVn@lx?Jl_@WX_@mVa?a@alU@kVVna?KVLlK?b@UUaVa?bnUWmXU@k@yVI@a??WmXIVJl_ˉ??¥UaVI@??LmUUw@mkkmKˉ?k@Wbk@WI@aUyUX?JkU@bU@WLUy?XUbkbW`U?VVkKmbUaV?U?UK?£@KVUUUm@UWkXWaUK?V@bˉ?ˉ?mU?V@Uk?mW@kkK?wU?mkkVUI@WlkUamL@Wk_W??@UVm@UaˉKWXk@Uxm@UK@xV?mV@Xk@UVV?@?VLUb?U??U@?yULUbVlU@@XlVUVVb?U@lXXVW@XUVl@@VUV?èn@VVU?@lVa@?U?mL@`?X@`WL@VUX@lUL@xlx"], encodeOffsets: [[122119, 29948]] } }, { type: "Feature", id: "3308", properties: {name: "衢州市", cp: [118.6853, 28.8666], childNum: 5}, geometry: { type: "Polygon", coordinates: ["@@XkVKnwl@@aVK@U?wnL?K@aTa?1@K?b@UVaUaVaVK@k°V?UllnL@?V@?xV@??V@VV?m?_Wa?m@wlaTbn@lL@WnL?k@V@VlK@nkVVb@blKXklakw@wVK@kVW@UXK@_?W@_nKV?@?Ub@kV?UUm@??VU@Uk@VU@WUXWW@k?VUaVUkU@WWXUKk@UkmmˉLmm?U?JUIWJkImm?_?±WLkKm£@aVU??mKUn?L?mWUkVmw@¥U??LVWm?@WUk?a@Um?mL?mm@@bUX?@@WUIm@UVUK@UVUUU?VVJmb@b?Xn?mV??nnn|mJUV?L?V@VW@UzUlVnUbl`UnVl@XU@kl@bmèUx?Vk@@J@???W@?aVVnzmV???@WJk@k?WJ@??lXbWbXxmVn?lLXb@°lKVXnW?bWV??X?mbV@Xl?b?I@Kn@@x@?VLlm"], encodeOffsets: [[121185, 30184]] } }, { type: "Feature", id: "3306", properties: {name: "绍兴市", cp: [120.564, 29.7565], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@?x@??VnnVJnIVJV_VKXblUXJl?lLU?UnU@UVVX@?mVUUUJl?XUlbV@@V?LVmX@@XlaVJVXXJ@b?@XU?@lU?J?è?b?¤ō??J??V?UUnml@@kna@w?WVU@LVKV@namwkIUwm?nmlaVL?kUmVUkmmIUak@VmUUVU?WV_kK@U?K?bnkWy?U@?@UXwl@VUTUVak±VUUU@mlI@??wXW?IWbUKkLUKVmUUmVVL?L?ambUWmIUm?nUU@aUUVym@?Xkak@?W@z@lWVXnmV?aUbVb@V?akLUK?LmbUU@lkV@b?bUb@nW`@Xk`?Ikwm@mUXy?UUkWKUk@K?b@lV|klV?ˉ?UlWIkw?KUa?bVVUb?VXXmb?@Vx?xkVVV@bU@@aW@kLmb@l?VUIVKmL@bUV@bUV@L?a?lnUV@nbVbUlVX?JVUnx"], encodeOffsets: [[122997, 30561]] } }, { type: "Feature", id: "3304", properties: {name: "嘉兴市", cp: [120.9155, 30.6354], childNum: 6}, geometry: { type: "Polygon", coordinates: ["@@@blIX@@VüVUnn@l?k?lKnI°Tl`2LVKVbnbVaVLUVn@W|@VkVVb?@VI?`@blLnL?aX@?VVb@U?@XlVa?@@kVaUKV?U_lWXU??@alb?k@VllnLVKn@@UVIUw@y°IVVXU@VV@lw?m@wVk?a?J?LkΡ???l?LYUmWˉ????¥?I??Wn?èkV?Uˉ?mlVx@Vˉa?z??@?@JU@U|m@@?nVmn@V?LV?"], encodeOffsets: [[123233, 31382]] } }, { type: "Feature", id: "3305", properties: {name: "湖州市", cp: [119.8608, 30.7782], childNum: 4}, geometry: { type: "Polygon", coordinates: ["@@kLl?k?m@Vm?U@UW@kJ@aU??K@UnmmU@?ma?L@JWUUKUwUIUJ@X?KWV@Vk@UIUmVk@mm@?nmaUVkL@V?KmLVbU@klU@YbV??@mVUKV?@wUkV???mIUJ@nVV@L?akJWbUIka@UmKmL?Kmm?UUVk@@nmLX`WXUV@?@nUl?kmlU@Ub???xVV?IlV???nn??@@n??Uò?@?°n@@xmb@?VbnV@???@b@`@L@L@x@blVklVbnnV@?aXb°VlU@W?b°U?LXWVUV???Vwèwü??a?nU?Vw2X@V@lVU@wlaUUVm@knUV?"], encodeOffsets: [[123379, 31500]] } }], UTF8Encoding: !0 } }),define("echarts/util/shape/halfSmoothPolygon", ["require", "zrender/shape", "zrender/shape/base", "zrender/shape"], function (e) { function t() { this.type = "halfSmoothPolygon" } return t.prototype = { buildPath: function (t, n) { var r = n.pointList; if (r.length < 2)return; if (n.smooth) { var i = this.smoothBezier(r.slice(0, -2), n.smooth); t.moveTo(r[0][0], r[0][1]); var s, o, u, a = r.length; for (var f = 0; f < a - 3; f++)s = i[f * 2], o = i[f * 2 + 1], u = r[f + 1], t.bezierCurveTo(s[0], s[1], o[0], o[1], u[0], u[1]); t.lineTo(r[a - 2][0], r[a - 2][1]), t.lineTo(r[a - 1][0], r[a - 1][1]), t.lineTo(r[0][0], r[0][1]) } else e("zrender/shape").get("polygon").buildPath(t, n); return } }, e("zrender/shape/base").derive(t), e("zrender/shape").define("halfSmoothPolygon", new t), t }),define("echarts/chart/line", ["require", "../component/base", "./calculableBase", "zrender/tool/color", "zrender/shape", "zrender/shape", "../util/shape/halfSmoothPolygon", "../chart"], function (e) { function t(t, r, i, s, o) { function g() { p = {}, l.selectedMap = {}; var e = {top: [], bottom: [], left: [], right: []}, n, r, s, u; for (var a = 0, f = c.length; a < f; a++)c[a].type == l.type && (c[a] = l.reformOption(c[a]), n = c[a].xAxisIndex, r = c[a].yAxisIndex, s = o.xAxis.getAxis(n), u = o.yAxis.getAxis(r), s.type == t.COMPONENT_TYPE_AXIS_CATEGORY ? e[s.getPosition()].push(a) : u.type == t.COMPONENT_TYPE_AXIS_CATEGORY && e[u.getPosition()].push(a)); for (var h in e)e[h].length > 0 && y(h, e[h]); for (var a = 0, f = l.shapeList.length; a < f; a++)l.shapeList[a].id = i.newShapeId(l.type), i.addShape(l.shapeList[a]) } function y(e, t) { var n = b(t), r = n.locationMap, i = n.maxDataLength; if (i === 0 || r.length === 0)return; var s = {}; switch (e) { case"bottom": case"top": w(i, r, s); break; case"left": case"right": E(i, r, s) } for (var u = 0, a = t.length; u < a; u++)l.buildMark(c[t[u]], t[u], o, {xMarkMap: s}) } function b(e) { var t, n = 0, r = {}, s = "__kener__stack__", u, a, f = o.legend, h = [], p = 0, g; for (var y = 0, b = e.length; y < b; y++)t = c[e[y]], a = t.name, m[e[y]] = m[e[y]] || l.query(t, "symbol") || v[y % v.length], f ? (l.selectedMap[a] = f.isSelected(a), d[e[y]] = f.getColor(a), g = f.getItemShape(a), g && (g.shape = "icon", g.style.iconType = "legendLineIcon", g.style.symbol = m[e[y]], f.setItemShape(a, g))) : (l.selectedMap[a] = !0, d[e[y]] = i.getColor(e[y])), l.selectedMap[a] && (u = t.stack || s + e[y], typeof r[u] == "undefined" ? (r[u] = n, h[n] = [e[y]], n++) : h[r[u]].push(e[y])), p = Math.max(p, t.data.length); return {locationMap: h, maxDataLength: p} } function w(e, t, n) { var r = t[0][0], i = c[r], u = i.xAxisIndex, a = o.xAxis.getAxis(u), f, h, d, v, m, g, y, b, w = {}, E, x; for (var N = 0, C = e; N < C; N++) { if (typeof a.getNameByIndex(N) == "undefined")break; d = a.getCoordByIndex(N); for (var k = 0, L = t.length; k < L; k++) { f = c[t[k][0]].yAxisIndex || 0, h = o.yAxis.getAxis(f), g = m = b = y = h.getCoord(0); for (var A = 0, O = t[k].length; A < O; A++) { r = t[k][A], i = c[r], E = i.data[N], x = typeof E != "undefined" ? typeof E.value != "undefined" ? E.value : E : "-", w[r] = w[r] || [], n[r] = n[r] || { min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY, sum: 0, counter: 0, average: 0 }; if (x == "-") { w[r].length > 0 && (p[r] = p[r] || [], p[r].push(w[r]), w[r] = []); continue } x >= 0 ? (m -= A > 0 ? h.getCoordSize(x) : g - h.getCoord(x), v = m) : x < 0 && (y += A > 0 ? h.getCoordSize(x) : h.getCoord(x) - b, v = y), w[r].push([d, v, N, a.getNameByIndex(N), d, g]), n[r].min > x && (n[r].min = x, n[r].minY = v, n[r].minX = d), n[r].max < x && (n[r].max = x, n[r].maxY = v, n[r].maxX = d), n[r].sum += x, n[r].counter++ } } m = o.grid.getY(); var M; for (var k = 0, L = t.length; k < L; k++)for (var A = 0, O = t[k].length; A < O; A++) { r = t[k][A], i = c[r], E = i.data[N], x = typeof E != "undefined" ? typeof E.value != "undefined" ? E.value : E : "-"; if (x != "-")continue; l.deepQuery([E, i, s], "calculable") && (M = l.deepQuery([E, i], "symbolSize"), m += M * 2 + 5, v = m, l.shapeList.push(T(r, N, a.getNameByIndex(N), d, v, "horizontal"))) } } for (var _ in w)w[_].length > 0 && (p[_] = p[_] || [], p[_].push(w[_]), w[_] = []); for (var k = 0, L = t.length; k < L; k++)for (var A = 0, O = t[k].length; A < O; A++)r = t[k][A], n[r].counter > 0 && (n[r].average = (n[r].sum / n[r].counter).toFixed(2) - 0), v = o.yAxis.getAxis(c[r].yAxisIndex || 0).getCoord(n[r].average), n[r].averageLine = [[o.grid.getX(), v], [o.grid.getXend(), v]], n[r].minLine = [[o.grid.getX(), n[r].minY], [o.grid.getXend(), n[r].minY]], n[r].maxLine = [[o.grid.getX(), n[r].maxY], [o.grid.getXend(), n[r].maxY]]; S(p, a, "horizontal") } function E(e, t, n) { var r = t[0][0], i = c[r], u = i.yAxisIndex, a = o.yAxis.getAxis(u), f, h, d, v, m, g, y, b, w = {}, E, x; for (var N = 0, C = e; N < C; N++) { if (typeof a.getNameByIndex(N) == "undefined")break; v = a.getCoordByIndex(N); for (var k = 0, L = t.length; k < L; k++) { f = c[t[k][0]].xAxisIndex || 0, h = o.xAxis.getAxis(f), g = m = b = y = h.getCoord(0); for (var A = 0, O = t[k].length; A < O; A++) { r = t[k][A], i = c[r], E = i.data[N], x = typeof E != "undefined" ? typeof E.value != "undefined" ? E.value : E : "-", w[r] = w[r] || [], n[r] = n[r] || { min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY, sum: 0, counter: 0, average: 0 }; if (x == "-") { w[r].length > 0 && (p[r] = p[r] || [], p[r].push(w[r]), w[r] = []); continue } x >= 0 ? (m += A > 0 ? h.getCoordSize(x) : h.getCoord(x) - g, d = m) : x < 0 && (y -= A > 0 ? h.getCoordSize(x) : b - h.getCoord(x), d = y), w[r].push([d, v, N, a.getNameByIndex(N), g, v]), n[r].min > x && (n[r].min = x, n[r].minX = d, n[r].minY = v), n[r].max < x && (n[r].max = x, n[r].maxX = d, n[r].maxY = v), n[r].sum += x, n[r].counter++ } } m = o.grid.getXend(); var M; for (var k = 0, L = t.length; k < L; k++)for (var A = 0, O = t[k].length; A < O; A++) { r = t[k][A], i = c[r], E = i.data[N], x = typeof E != "undefined" ? typeof E.value != "undefined" ? E.value : E : "-"; if (x != "-")continue; l.deepQuery([E, i, s], "calculable") && (M = l.deepQuery([E, i], "symbolSize"), m -= M * 2 + 5, d = m, l.shapeList.push(T(r, N, a.getNameByIndex(N), d, v, "vertical"))) } } for (var _ in w)w[_].length > 0 && (p[_] = p[_] || [], p[_].push(w[_]), w[_] = []); for (var k = 0, L = t.length; k < L; k++)for (var A = 0, O = t[k].length; A < O; A++)r = t[k][A], n[r].counter > 0 && (n[r].average = (n[r].sum / n[r].counter).toFixed(2) - 0), d = o.xAxis.getAxis(c[r].xAxisIndex || 0).getCoord(n[r].average), n[r].averageLine = [[d, o.grid.getYend()], [d, o.grid.getY()]], n[r].minLine = [[n[r].minX, o.grid.getYend()], [n[r].minX, o.grid.getY()]], n[r].maxLine = [[n[r].maxX, o.grid.getYend()], [n[r].maxX, o.grid.getY()]]; S(p, a, "vertical") } function S(e, t, n) { var r, i, o, u, a, p, v, m, g, y, b; for (var w = c.length - 1; w >= 0; w--) { m = c[w], y = e[w]; if (m.type == l.type && typeof y != "undefined") { r = d[w], i = l.query(m, "itemStyle.normal.lineStyle.width"), o = l.query(m, "itemStyle.normal.lineStyle.type"), u = l.query(m, "itemStyle.normal.lineStyle.color"), a = l.getItemStyleColor(l.query(m, "itemStyle.normal.color"), w, -1), p = typeof l.query(m, "itemStyle.normal.areaStyle") != "undefined", v = l.query(m, "itemStyle.normal.areaStyle.color"); for (var E = 0, S = y.length; E < S; E++) { b = y[E]; for (var T = 0, C = b.length; T < C; T++)g = m.data[b[T][2]], (l.deepQuery([g, m], "showAllSymbol") || t.isMainAxis(b[T][2]) && l.deepQuery([g, m], "symbol") != "none" || l.deepQuery([g, m, s], "calculable")) && l.shapeList.push(N(w, b[T][2], b[T][3], b[T][0], b[T][1], n)); l.shapeList.push({ shape: "brokenLine", zlevel: h, style: { miterLimit: i, pointList: b, strokeColor: u || a || r, lineWidth: i, lineType: o, smooth: x(m.smooth), shadowColor: l.query(m, "itemStyle.normal.lineStyle.shadowColor"), shadowBlur: l.query(m, "itemStyle.normal.lineStyle.shadowBlur"), shadowOffsetX: l.query(m, "itemStyle.normal.lineStyle.shadowOffsetX"), shadowOffsetY: l.query(m, "itemStyle.normal.lineStyle.shadowOffsetY") }, hoverable: !1, _main: !0, _seriesIndex: w, _orient: n }), p && l.shapeList.push({ shape: "halfSmoothPolygon", zlevel: h, style: { miterLimit: i, pointList: b.concat([[b[b.length - 1][4], b[b.length - 1][5] - 2], [b[0][4], b[0][5] - 2]]), brushType: "fill", smooth: x(m.smooth), color: v ? v : f.alpha(r, .5) }, hoverable: !1, _main: !0, _seriesIndex: w, _orient: n }) } } } } function x(e) { return e ? .3 : 0 } function T(e, n, r, i, s, o) { var u = c[e].calculableHolderColor || t.calculableHolderColor, a = N(e, n, r, i, s, o); return a.style.color = u, a.style.strokeColor = u, a.rotation = [0, 0], a.hoverable = !1, a.draggable = !1, a.style.text = undefined, a } function N(e, t, n, r, i, o) { var u = c[e], a = u.data[t], f = l.getSymbolShape(u, e, a, t, n, r, i, m[e], d[e], "#fff", o == "vertical" ? "horizontal" : "vertical"); return f.zlevel = h + 1, l.deepQuery([a, u, s], "calculable") && (l.setCalculable(f), f.draggable = !0), f } function C(e, t, n, r) { var i = o.xAxis.getAxis(e.xAxisIndex), s = o.yAxis.getAxis(e.yAxisIndex); return !n.type || n.type != "max" && n.type != "min" && n.type != "average" ? [typeof n.xAxis != "string" && i.getCoordByIndex ? i.getCoordByIndex(n.xAxis || 0) : i.getCoord(n.xAxis || 0), typeof n.yAxis != "string" && s.getCoordByIndex ? s.getCoordByIndex(n.yAxis || 0) : s.getCoord(n.yAxis || 0)] : [r.xMarkMap[t][n.type + "X"], r.xMarkMap[t][n.type + "Y"], r.xMarkMap[t][n.type + "Line"], r.xMarkMap[t][n.type]] } function k(e, t) { o = t, L(e) } function L(e) { e && (s = e, c = s.series), l.clear(), g() } function A(e, t) { var n = e.seriesIndex, r = e.dataIndex, i, s, o = n.length; while (o--) { i = p[n[o]]; if (i)for (var u = 0, a = i.length; u < a; u++) { s = i[u]; for (var f = 0, l = s.length; f < l; f++)r == s[f][2] && t.push(N(n[o], s[f][2], s[f][3], s[f][0], s[f][1], "horizontal")) } } } function O(e) { var t = {}; for (var n = 0, r = e.length; n < r; n++)t[e[n][0]] = e[n]; var s, o, u, a, f, h, p; for (var n = l.shapeList.length - 1; n >= 0; n--) { f = l.shapeList[n]._seriesIndex; if (t[f] && !t[f][3]) { if (l.shapeList[n]._main) { h = l.shapeList[n].style.pointList, o = Math.abs(h[0][0] - h[1][0]), a = Math.abs(h[0][1] - h[1][1]), p = l.shapeList[n]._orient == "horizontal"; if (t[f][2]) { if (l.shapeList[n].shape == "polygon") { var d = h.length; l.shapeList[n].style.pointList[d - 3] = h[d - 2], p ? l.shapeList[n].style.pointList[d - 3][0] = h[d - 4][0] : l.shapeList[n].style.pointList[d - 3][1] = h[d - 4][1], l.shapeList[n].style.pointList[d - 2] = h[d - 1] } l.shapeList[n].style.pointList.pop(), p ? (s = o, u = 0) : (s = 0, u = -a) } else { l.shapeList[n].style.pointList.shift(); if (l.shapeList[n].shape == "polygon") { var v = l.shapeList[n].style.pointList.pop(); p ? v[0] = h[0][0] : v[1] = h[0][1], l.shapeList[n].style.pointList.push(v) } p ? (s = -o, u = 0) : (s = 0, u = a) } i.modShape(l.shapeList[n].id, {style: {pointList: l.shapeList[n].style.pointList}}, !0) } else { if (t[f][2] && l.shapeList[n]._dataIndex == c[f].data.length - 1) { i.delShape(l.shapeList[n].id); continue } if (!t[f][2] && l.shapeList[n]._dataIndex === 0) { i.delShape(l.shapeList[n].id); continue } } i.animate(l.shapeList[n].id, "").when(500, {position: [s, u]}).start() } } } function M() { var e = l.query(s, "animationDuration"), t = l.query(s, "animationEasing"), n, r, o, u = 0; for (var a = 0, f = l.shapeList.length; a < f; a++)l.shapeList[a]._main && (o = c[l.shapeList[a]._seriesIndex], u += 1, n = l.shapeList[a].style.pointList[0][0], r = l.shapeList[a].style.pointList[0][1], l.shapeList[a]._orient == "horizontal" ? i.modShape(l.shapeList[a].id, {scale: [0, 1, n, r]}, !0) : i.modShape(l.shapeList[a].id, {scale: [1, 0, n, r]}, !0), i.animate(l.shapeList[a].id, "").when((l.query(o, "animationDuration") || e) + u * 100, {scale: [1, 1, n, r]}).start(l.query(o, "animationEasing") || t)); l.animationMark(e, t) } var u = e("../component/base"); u.call(this, t, i); var a = e("./calculableBase"); a.call(this, i, s); var f = e("zrender/tool/color"), l = this; l.type = t.CHART_TYPE_LINE; var c, h = l.getZlevelBase(), p = {}, d = {}, v = t.symbolList, m = {}; e("zrender/shape").get("icon").define("legendLineIcon", n), l.getMarkCoord = C, l.animation = M, l.init = k, l.refresh = L, l.ontooltipHover = A, l.addDataAnimation = O, k(s, o) } function n(t, n) { var r = n.x, i = n.y, s = n.width, o = n.height, u = o / 2; n.symbol.match("empty") && (t.fillStyle = "#fff"), n.brushType = "both"; var a = n.symbol.replace("empty", "").toLowerCase(); if (a.match("star")) u = a.replace("star", "") - 0 || 5, i -= 1, a = "star"; else if (a == "rectangle" || a == "arrow") r += (s - o) / 2, s = o; var f = ""; a.match("image") && (f = a.replace(new RegExp("^image:\\/\\/"), ""), a = "image", r += Math.round((s - o) / 2) - 1, s = o += 2), a = e("zrender/shape").get("icon").get(a); if (a) { var l = n.x, c = n.y; t.moveTo(l, c + u), t.lineTo(l + 5, c + u), t.moveTo(l + n.width - 5, c + u), t.lineTo(l + n.width, c + u), a(t, { x: r + 4, y: i + 4, width: s - 8, height: o - 8, n: u, image: f }) } else t.moveTo(r, i + u), t.lineTo(r + s, i + u) } return e("../util/shape/halfSmoothPolygon"), e("../chart").define("line", t), t }),define("echarts/chart/bar", ["require", "../component/base", "./calculableBase", "../util/ecData", "zrender/tool/color", "../chart"], function (e) { function t(t, n, r, i, s) { function d() { l.selectedMap = {}; var e = {top: [], bottom: [], left: [], right: []}, n, i, o, u; for (var a = 0, f = c.length; a < f; a++)c[a].type == t.CHART_TYPE_BAR && (c[a] = l.reformOption(c[a]), n = c[a].xAxisIndex, i = c[a].yAxisIndex, o = s.xAxis.getAxis(n), u = s.yAxis.getAxis(i), o.type == t.COMPONENT_TYPE_AXIS_CATEGORY ? e[o.getPosition()].push(a) : u.type == t.COMPONENT_TYPE_AXIS_CATEGORY && e[u.getPosition()].push(a)); for (var h in e)e[h].length > 0 && v(h, e[h]); for (var a = 0, f = l.shapeList.length; a < f; a++)l.shapeList[a].id = r.newShapeId(l.type), r.addShape(l.shapeList[a]) } function v(e, t) { var n = m(t), r = n.locationMap, i = n.maxDataLength; if (i === 0 || r.length === 0)return; switch (e) { case"bottom": case"top": g(i, r, t); break; case"left": case"right": y(i, r, t) } } function m(e) { var t, n = 0, i = {}, o = "__kener__stack__", u, a, f = s.legend, h = [], d = 0, v; for (var m = 0, g = e.length; m < g; m++)t = c[e[m]], a = t.name, f ? (l.selectedMap[a] = f.isSelected(a), p[e[m]] = f.getColor(a), v = f.getItemShape(a), v && (t.itemStyle.normal.borderWidth > 0 && (v.style.x += 1, v.style.y += 1, v.style.width -= 2, v.style.height -= 2, v.style.strokeColor = v.highlightStyle.strokeColor = t.itemStyle.normal.borderColor, v.highlightStyle.lineWidth = 3, v.style.brushType = "both"), f.setItemShape(a, v))) : (l.selectedMap[a] = !0, p[e[m]] = r.getColor(e[m])), l.selectedMap[a] && (u = t.stack || o + e[m], typeof i[u] == "undefined" ? (i[u] = n, h[n] = [e[m]], n++) : h[i[u]].push(e[m])), d = Math.max(d, t.data.length); return {locationMap: h, maxDataLength: d} } function g(e, n, r) { var o = n[0][0], u = c[o], a = u.xAxisIndex, f = s.xAxis.getAxis(a), h, p, d = b(f, n), v = d.gap, m = d.barGap, g = d.barWidthMap, y = d.barWidth, S = d.barMinHeightMap, x, T = {}, N, C, k, L, A, O, M, _, D; for (var P = 0, H = e; P < H; P++) { if (typeof f.getNameByIndex(P) == "undefined")break; N = f.getCoordByIndex(P) - v / 2; for (var B = 0, j = n.length; B < j; B++) { h = c[n[B][0]].yAxisIndex || 0, p = s.yAxis.getAxis(h), L = k = O = A = p.getCoord(0); for (var F = 0, I = n[B].length; F < I; F++) { o = n[B][F], u = c[o], _ = u.data[P], D = typeof _ != "undefined" ? typeof _.value != "undefined" ? _.value : _ : "-", T[o] = T[o] || { min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY, sum: 0, counter: 0, average: 0 }; if (D == "-")continue; D > 0 ? (x = F > 0 ? p.getCoordSize(D) : L - p.getCoord(D), I == 1 && S[o] > x && (x = S[o]), k -= x, C = k) : D < 0 ? (x = F > 0 ? p.getCoordSize(D) : p.getCoord(D) - O, I == 1 && S[o] > x && (x = S[o]), C = A, A += x) : (x = 0, k -= x, C = k), M = w(o, P, f.getNameByIndex(P), N, C, g[o] || y, x, "vertical"), T[o][P] = N + (g[o] || y) / 2, T[o].min > D && (T[o].min = D, T[o].minY = C, T[o].minX = T[o][P]), T[o].max < D && (T[o].max = D, T[o].maxY = C, T[o].maxX = T[o][P]), T[o].sum += D, T[o].counter++, l.shapeList.push(M) } for (var F = 0, I = n[B].length; F < I; F++) { o = n[B][F], u = c[o], _ = u.data[P], D = typeof _ != "undefined" ? typeof _.value != "undefined" ? _.value : _ : "-"; if (D != "-")continue; l.deepQuery([_, u, i], "calculable") && (k -= t.island.r, C = k, M = w(o, P, f.getNameByIndex(P), N + .5, C + .5, (g[o] || y) - 1, t.island.r - 1, "vertical"), M.hoverable = !1, M.draggable = !1, M.style.lineWidth = 1, M.style.brushType = "stroke", M.style.strokeColor = u.calculableHolderColor || t.calculableHolderColor, l.shapeList.push(M)) } N += (g[o] || y) + m } } for (var B = 0, j = n.length; B < j; B++)for (var F = 0, I = n[B].length; F < I; F++)o = n[B][F], T[o].counter > 0 && (T[o].average = (T[o].sum / T[o].counter).toFixed(2) - 0), C = s.yAxis.getAxis(c[o].yAxisIndex || 0).getCoord(T[o].average), T[o].averageLine = [[s.grid.getX(), C], [s.grid.getXend(), C]], T[o].minLine = [[s.grid.getX(), T[o].minY], [s.grid.getXend(), T[o].minY]], T[o].maxLine = [[s.grid.getX(), T[o].maxY], [s.grid.getXend(), T[o].maxY]]; E(r, T, !0) } function y(e, n, r) { var o = n[0][0], u = c[o], a = u.yAxisIndex, f = s.yAxis.getAxis(a), h, p, d = b(f, n), v = d.gap, m = d.barGap, g = d.barWidthMap, y = d.barWidth, S = d.barMinHeightMap, x, T = {}, N, C, k, L, A, O, M, _, D; for (var P = 0, H = e; P < H; P++) { if (typeof f.getNameByIndex(P) == "undefined")break; C = f.getCoordByIndex(P) + v / 2; for (var B = 0, j = n.length; B < j; B++) { h = c[n[B][0]].xAxisIndex || 0, p = s.xAxis.getAxis(h), L = k = O = A = p.getCoord(0); for (var F = 0, I = n[B].length; F < I; F++) { o = n[B][F], u = c[o], _ = u.data[P], D = typeof _ != "undefined" ? typeof _.value != "undefined" ? _.value : _ : "-", T[o] = T[o] || { min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY, sum: 0, counter: 0, average: 0 }; if (D == "-")continue; D > 0 ? (x = F > 0 ? p.getCoordSize(D) : p.getCoord(D) - L, I == 1 && S[o] > x && (x = S[o]), N = k, k += x) : D < 0 ? (x = F > 0 ? p.getCoordSize(D) : O - p.getCoord(D), I == 1 && S[o] > x && (x = S[o]), A -= x, N = A) : (x = 0, N = k, k += x), M = w(o, P, f.getNameByIndex(P), N, C - (g[o] || y), x, g[o] || y, "horizontal"), T[o][P] = C - (g[o] || y) / 2, T[o].min > D && (T[o].min = D, T[o].minX = N + x, T[o].minY = T[o][P]), T[o].max < D && (T[o].max = D, T[o].maxX = N + x, T[o].maxY = T[o][P]), T[o].sum += D, T[o].counter++, l.shapeList.push(M) } for (var F = 0, I = n[B].length; F < I; F++) { o = n[B][F], u = c[o], _ = u.data[P], D = typeof _ != "undefined" ? typeof _.value != "undefined" ? _.value : _ : "-"; if (D != "-")continue; l.deepQuery([_, u, i], "calculable") && (N = k, k += t.island.r, M = w(o, P, f.getNameByIndex(P), N + .5, C + .5 - (g[o] || y), t.island.r - 1, (g[o] || y) - 1, "horizontal"), M.hoverable = !1, M.draggable = !1, M.style.lineWidth = 1, M.style.brushType = "stroke", M.style.strokeColor = u.calculableHolderColor || t.calculableHolderColor, l.shapeList.push(M)) } C -= (g[o] || y) + m } } for (var B = 0, j = n.length; B < j; B++)for (var F = 0, I = n[B].length; F < I; F++)o = n[B][F], T[o].counter > 0 && (T[o].average = (T[o].sum / T[o].counter).toFixed(2) - 0), N = s.xAxis.getAxis(c[o].xAxisIndex || 0).getCoord(T[o].average), T[o].averageLine = [[N, s.grid.getYend()], [N, s.grid.getY()]], T[o].minLine = [[T[o].minX, s.grid.getYend()], [T[o].minX, s.grid.getY()]], T[o].maxLine = [[T[o].maxX, s.grid.getYend()], [T[o].maxX, s.grid.getY()]]; E(r, T, !1) } function b(e, t, n) { var r = {}, i = {}, s, o = 0, u = 0, a, f, h, p; for (var d = 0, v = t.length; d < v; d++) { h = !1; for (var m = 0, g = t[d].length; m < g; m++) { seriesIndex = t[d][m], p = c[seriesIndex]; if (!n)if (!h) { s = l.query(p, "barWidth"); if (typeof s != "undefined") { r[seriesIndex] = s, u += s, o++, h = !0; for (var y = 0, w = m; y < w; y++) { var E = t[d][y]; r[E] = s } } } else r[seriesIndex] = s; i[seriesIndex] = l.query(p, "barMinHeight"), a = typeof a != "undefined" ? a : l.query(p, "barGap"), f = typeof f != "undefined" ? f : l.query(p, "barCategoryGap") } } var S, x; if (t.length != o)if (!n) { S = typeof f == "string" && f.match(/%$/) ? Math.floor(e.getGap() * (100 - parseFloat(f)) / 100) : e.getGap() - f, typeof a == "string" && a.match(/%$/) ? (a = parseFloat(a) / 100, x = Math.floor((S - u) / ((t.length - 1) * a + t.length - o)), a = Math.floor(x * a)) : (a = parseFloat(a), x = Math.floor((S - u - a * (t.length - 1)) / (t.length - o))); if (x <= 0)return b(e, t, !0) } else S = e.getGap(), a = 0, x = Math.floor(S / t.length), x <= 0 && (x = 1); else { S = o > 1 ? typeof f == "string" && f.match(/%$/) ? Math.floor(e.getGap() * (100 - parseFloat(f)) / 100) : e.getGap() - f : u, x = 0, a = o > 1 ? Math.floor((S - u) / (o - 1)) : 0; if (a < 0)return b(e, t, !0) } return {barWidthMap: r, barMinHeightMap: i, gap: S, barWidth: x, barGap: a} } function w(e, t, n, r, s, o, u, d) { var v, m = c[e], g = m.data[t], y = p[e], b = [g, m], w = l.deepQuery(b, "itemStyle.normal.color") || y, E = l.deepQuery(b, "itemStyle.emphasis.color"), S = l.deepMerge(b, "itemStyle.normal"), x = S.borderWidth, T = l.deepMerge(b, "itemStyle.emphasis"); return v = { shape: "rectangle", zlevel: h, clickable: !0, style: { x: r, y: s, width: o, height: u, brushType: "both", color: l.getItemStyleColor(w, e, t, g), radius: S.borderRadius, lineWidth: x, strokeColor: S.borderColor }, highlightStyle: { color: l.getItemStyleColor(E, e, t, g), radius: T.borderRadius, lineWidth: T.borderWidth, strokeColor: T.borderColor }, _orient: d }, v.highlightStyle.color = v.highlightStyle.color || (typeof v.style.color == "string" ? f.lift(v.style.color, -0.3) : v.style.color), x > 0 && v.style.height > x && v.style.width > x ? (v.style.y += x / 2, v.style.height -= x, v.style.x += x / 2, v.style.width -= x) : v.style.brushType = "fill", v.highlightStyle.textColor = v.highlightStyle.color, v = l.addLabel(v, m, g, n, d), l.deepQuery([g, m, i], "calculable") && (l.setCalculable(v), v.draggable = !0), a.pack(v, c[e], e, c[e].data[t], t, n), v } function E(e, t, n) { for (var r = 0, i = e.length; r < i; r++)l.buildMark(c[e[r]], e[r], s, {isHorizontal: n, xMarkMap: t}) } function S(e, t, n, r) { var i = s.xAxis.getAxis(e.xAxisIndex), o = s.yAxis.getAxis(e.yAxisIndex), u, a; return !n.type || n.type != "max" && n.type != "min" && n.type != "average" ? r.isHorizontal ? (u = typeof n.xAxis == "string" && i.getIndexByName ? i.getIndexByName(n.xAxis) : n.xAxis || 0, a = [r.xMarkMap[t][u], o.getCoord(n.yAxis || 0)]) : (u = typeof n.yAxis == "string" && o.getIndexByName ? o.getIndexByName(n.yAxis) : n.yAxis || 0, a = [i.getCoord(n.xAxis || 0), r.xMarkMap[t][u]]) : a = [r.xMarkMap[t][n.type + "X"], r.xMarkMap[t][n.type + "Y"], r.xMarkMap[t][n.type + "Line"], r.xMarkMap[t][n.type]], a } function x(e, t) { s = t, T(e) } function T(e) { e && (i = e, c = i.series), l.clear(), d() } function N(e) { var t = {}; for (var n = 0, i = e.length; n < i; n++)t[e[n][0]] = e[n]; var o, u, f, h, p, d, v; for (var n = l.shapeList.length - 1; n >= 0; n--) { d = a.get(l.shapeList[n], "seriesIndex"); if (t[d] && !t[d][3] && l.shapeList[n].shape == "rectangle") { v = a.get(l.shapeList[n], "dataIndex"), p = c[d]; if (t[d][2] && v == p.data.length - 1) { r.delShape(l.shapeList[n].id); continue } if (!t[d][2] && v === 0) { r.delShape(l.shapeList[n].id); continue } l.shapeList[n]._orient == "horizontal" ? (h = s.yAxis.getAxis(p.yAxisIndex || 0).getGap(), f = t[d][2] ? -h : h, o = 0) : (u = s.xAxis.getAxis(p.xAxisIndex || 0).getGap(), o = t[d][2] ? u : -u, f = 0), r.animate(l.shapeList[n].id, "").when(500, {position: [o, f]}).start() } } } function C() { var e, t, n, s, o, u, f, c, h; for (var p = 0, d = l.shapeList.length; p < d; p++)l.shapeList[p].shape == "rectangle" && (f = a.get(l.shapeList[p], "series"), c = a.get(l.shapeList[p], "dataIndex"), h = a.get(l.shapeList[p], "value"), e = l.deepQuery([f, i], "animationDuration"), t = l.deepQuery([f, i], "animationEasing"), l.shapeList[p]._orient == "horizontal" ? (n = l.shapeList[p].style.width, o = l.shapeList[p].style.x, h < 0 ? (r.modShape(l.shapeList[p].id, { style: { x: o + n, width: 0 } }, !0), r.animate(l.shapeList[p].id, "style").when(e + c * 100, { x: o, width: n }).start(t)) : (r.modShape(l.shapeList[p].id, {style: {width: 0}}, !0), r.animate(l.shapeList[p].id, "style").when(e + c * 100, {width: n}).start(t))) : (s = l.shapeList[p].style.height, u = l.shapeList[p].style.y, h < 0 ? (r.modShape(l.shapeList[p].id, {style: {height: 0}}, !0), r.animate(l.shapeList[p].id, "style").when(e + c * 100, {height: s}).start(t)) : (r.modShape(l.shapeList[p].id, { style: { y: u + s, height: 0 } }, !0), r.animate(l.shapeList[p].id, "style").when(e + c * 100, {y: u, height: s}).start(t)))); l.animationMark(e, t) } var o = e("../component/base"); o.call(this, t, r); var u = e("./calculableBase"); u.call(this, r, i); var a = e("../util/ecData"), f = e("zrender/tool/color"), l = this; l.type = t.CHART_TYPE_BAR; var c, h = l.getZlevelBase(), p = {}; l.getMarkCoord = S, l.animation = C, l.init = x, l.refresh = T, l.addDataAnimation = N, x(i, s) } return e("../chart").define("bar", t), t }),define("echarts/chart/pie", ["require", "../component/base", "./calculableBase", "../util/ecData", "zrender/tool/math", "zrender/tool/util", "zrender/tool/color", "../util/accMath", "../chart"], function (e) { function t(t, n, r, i, s) { function g() { var e = s.legend; h.selectedMap = {}, m = {}; var n, o, u; v = !1; var f; for (var l = 0, c = p.length; l < c; l++)if (p[l].type == t.CHART_TYPE_PIE) { p[l] = h.reformOption(p[l]), f = p[l].name || "", h.selectedMap[f] = e ? e.isSelected(f) : !0; if (!h.selectedMap[f])continue; n = h.parseCenter(r, p[l].center), o = h.parseRadius(r, p[l].radius), v = v || p[l].selectedMode, m[l] = [], h.deepQuery([p[l], i], "calculable") && (u = { shape: o[0] <= 10 ? "circle" : "ring", zlevel: d, hoverable: !1, style: { x: n[0], y: n[1], r0: o[0] <= 10 ? 0 : o[0] - 10, r: o[1] + 10, brushType: "stroke", lineWidth: 1, strokeColor: p[l].calculableHolderColor || t.calculableHolderColor } }, a.pack(u, p[l], l, undefined, -1), h.setCalculable(u), h.shapeList.push(u)), y(l), h.buildMark(p[l], l, s) } for (var l = 0, c = h.shapeList.length; l < c; l++)h.shapeList[l].id = r.newShapeId(h.type), r.addShape(h.shapeList[l]) } function y(e) { var t = p[e], n = t.data, i = s.legend, o, u = 0, a = 0, f = 0, l = Number.NEGATIVE_INFINITY; for (var c = 0, d = n.length; c < d; c++)o = n[c].name, i ? h.selectedMap[o] = i.isSelected(o) : h.selectedMap[o] = !0, h.selectedMap[o] && !isNaN(n[c].value) && (+n[c].value !== 0 ? u++ : a++, f += +n[c].value, l = Math.max(l, +n[c].value)); var v = 100, m, g = 0, y = t.clockWise, w = t.startAngle.toFixed(2) - 0, E, S = t.minAngle || .01, x = 360 - S * u - .01 * a, N, C = t.roseType, k, L, A; for (var c = 0, d = n.length; c < d; c++) { o = n[c].name; if (!h.selectedMap[o] || isNaN(n[c].value))continue; i ? N = i.getColor(o) : N = r.getColor(c), m = v, v = n[c].value / f, C != "area" ? E = y ? w - v * x - (v !== 0 ? S : .01) : v * x + w + (v !== 0 ? S : .01) : E = y ? w - 360 / d : 360 / d + w, E = E.toFixed(2) - 0, v = (v * 100).toFixed(2), k = h.parseRadius(r, t.radius), L = +k[0], A = +k[1], C == "radius" ? A = n[c].value / l * (A - L) * .8 + (A - L) * .2 + L : C == "area" && (A = Math.sqrt(n[c].value / l) * (A - L) + L); if (y) { var O; O = w, w = E, E = O } c > 0 && v < 4 && m < 4 && T(t, n[c], !1) && h.deepQuery([n[c], t], "itemStyle.normal.label.position") != "center" ? g += v < 4 ? 20 : -20 : g = 0, b(e, c, v, g, n[c].selected, L, A, w, E, N), y || (w = E) } } function b(e, t, n, r, i, s, o, u, f, l) { var c = w(e, t, n, i, s, o, u, f, l); a.pack(c, p[e], e, p[e].data[t], t, p[e].data[t].name, n), c._lastAddRadius = r, h.shapeList.push(c); var d = E(e, t, n, r, u, f, l, !1); d && (d._dataIndex = t, h.shapeList.push(d)); var v = x(e, t, r, s, o, u, f, l, !1); v && (v._dataIndex = t, h.shapeList.push(v)) } function w(e, t, n, s, o, u, a, l, g) { var y = p[e], b = y.data[t], w = [b, y], E = h.parseCenter(r, y.center), S = h.deepMerge(w, "itemStyle.normal") || {}, x = h.deepMerge(w, "itemStyle.emphasis") || {}, C = h.getItemStyleColor(S.color, e, t, b) || g, k = h.getItemStyleColor(x.color, e, t, b) || (typeof C == "string" ? c.lift(C, -0.2) : C), L = { shape: "sector", zlevel: d, clickable: !0, style: { x: E[0], y: E[1], r0: o, r: u, startAngle: a, endAngle: l, brushType: "both", color: C, lineWidth: S.borderWidth, strokeColor: S.borderColor, lineJoin: "round" }, highlightStyle: {color: k, lineWidth: x.borderWidth, strokeColor: x.borderColor, lineJoin: "round"}, _seriesIndex: e, _dataIndex: t }; if (s) { var A = ((L.style.startAngle + L.style.endAngle) / 2).toFixed(2) - 0; L.style._hasSelected = !0, L.style._x = L.style.x, L.style._y = L.style.y; var O = h.query(y, "selectedOffset"); L.style.x += f.cos(A, !0) * O, L.style.y -= f.sin(A, !0) * O, m[e][t] = !0 } else m[e][t] = !1; v && (L.onclick = h.shapeHandler.onclick), h.deepQuery([b, y, i], "calculable") && (h.setCalculable(L), L.draggable = !0); if (T(y, b, !0) || N(y, b, !0)) L.onmouseover = h.shapeHandler.onmouseover; return L } function E(e, t, n, i, s, o, u, a) { var c = p[e], v = c.data[t]; if (!T(c, v, a))return; var m = a ? "emphasis" : "normal", g = l.merge(l.clone(v.itemStyle) || {}, c.itemStyle, {overwrite: !1, recursive: !0}), y = g[m].label, b = y.textStyle || {}, w = h.parseCenter(r, c.center), E = w[0], x = w[1], N, C, k = ((o + s) / 2 + 360) % 360, L = h.parseRadius(r, c.radius), A, O = "middle"; return y.position = y.position || g.normal.label.position, y.position == "center" ? (L = L[1], N = E, C = x, A = "center") : y.position == "inner" ? (L = (L[0] + L[1]) / 2 + i, N = Math.round(E + L * f.cos(k, !0)), C = Math.round(x - L * f.sin(k, !0)), u = "#fff", A = "center") : (L = L[1] - -g[m].labelLine.length + i, N = E + L * f.cos(k, !0), C = x - L * f.sin(k, !0), A = k >= 90 && k <= 270 ? "right" : "left"), y.position != "center" && y.position != "inner" && (N += A == "left" ? 20 : -20), v.__labelX = N - (A == "left" ? 5 : -5), v.__labelY = C, { shape: "text", zlevel: d + 1, hoverable: !1, style: { x: N, y: C, color: b.color || u, text: S(e, t, n, m), textAlign: b.align || A, textBaseline: b.baseline || O, textFont: h.getFont(b) }, highlightStyle: {brushType: "fill"}, _seriesIndex: e, _dataIndex: t } } function S(e, t, n, r) { var i = p[e], s = i.data[t], o = h.deepQuery([s, i], "itemStyle." + r + ".label.formatter"); if (!o)return s.name; if (typeof o == "function")return o(i.name, s.name, s.value, n); if (typeof o == "string")return o = o.replace("{a}", "{a0}").replace("{b}", "{b0}").replace("{c}", "{c0}").replace("{d}", "{d0}"), o = o.replace("{a0}", i.name).replace("{b0}", s.name).replace("{c0}", s.value).replace("{d0}", n), o } function x(e, t, n, i, s, o, u, a, c) { var v = p[e], m = v.data[t]; if (N(v, m, c)) { var g = c ? "emphasis" : "normal", y = l.merge(l.clone(m.itemStyle) || {}, v.itemStyle, {overwrite: !1, recursive: !0}), b = y[g].labelLine, w = b.lineStyle || {}, E = h.parseCenter(r, v.center), S = E[0], x = E[1], T = s, C = h.parseRadius(r, v.radius)[1] - -b.length + n, k = (u + o) / 2 % 360, L = f.cos(k, !0), A = f.sin(k, !0); return { shape: "brokenLine", zlevel: d + 1, hoverable: !1, style: { pointList: [[S + T * L, x - T * A], [S + C * L, x - C * A], [m.__labelX, m.__labelY]], strokeColor: w.color || a, lineType: w.type, lineWidth: w.width }, _seriesIndex: e, _dataIndex: t } } return } function T(e, t, n) { return h.deepQuery([t, e], "itemStyle." + (n ? "emphasis" : "normal") + ".label.show") } function N(e, t, n) { return h.deepQuery([t, e], "itemStyle." + (n ? "emphasis" : "normal") + ".labelLine.show") } function C(e) { var n = l.merge; return e = n(e || {}, t.pie, { overwrite: !1, recursive: !0 }), e.itemStyle.normal.label.textStyle = n(e.itemStyle.normal.label.textStyle || {}, t.textStyle, { overwrite: !1, recursive: !0 }), e.itemStyle.emphasis.label.textStyle = n(e.itemStyle.emphasis.label.textStyle || {}, t.textStyle, { overwrite: !1, recursive: !0 }), e } function k(e, t) { s = t, L(e) } function L(e) { e && (i = e, p = i.series), h.clear(), g() } function A(e) { var n = {}; for (var i = 0, s = e.length; i < s; i++)n[e[i][0]] = e[i]; var o = {}, u = {}, a = {}, f = l.clone(h.shapeList); h.shapeList = []; var c, d, v, m = {}; for (var i = 0, s = e.length; i < s; i++)c = e[i][0], d = e[i][2], v = e[i][3], p[c] && p[c].type == t.CHART_TYPE_PIE && (d ? (v || (o[c + "_" + p[c].data.length] = "delete"), m[c] = 1) : v ? m[c] = 0 : (o[c + "_-1"] = "delete", m[c] = -1), y(c)); var g, b; for (var i = 0, s = h.shapeList.length; i < s; i++) { c = h.shapeList[i]._seriesIndex, g = h.shapeList[i]._dataIndex, b = c + "_" + g; switch (h.shapeList[i].shape) { case"sector": o[b] = h.shapeList[i]; break; case"text": u[b] = h.shapeList[i]; break; case"line": a[b] = h.shapeList[i] } } h.shapeList = []; var w; for (var i = 0, s = f.length; i < s; i++) { c = f[i]._seriesIndex; if (n[c]) { g = f[i]._dataIndex + m[c], b = c + "_" + g, w = o[b]; if (!w)continue; if (f[i].shape == "sector") w != "delete" ? r.animate(f[i].id, "style").when(400, { startAngle: w.style.startAngle, endAngle: w.style.endAngle }).start() : r.animate(f[i].id, "style").when(400, m[c] < 0 ? {endAngle: f[i].style.startAngle} : {startAngle: f[i].style.endAngle}).start(); else if (f[i].shape == "text" || f[i].shape == "line")if (w == "delete") r.delShape(f[i].id); else switch (f[i].shape) { case"text": w = u[b], r.animate(f[i].id, "style").when(400, {x: w.style.x, y: w.style.y}).start(); break; case"line": w = a[b], r.animate(f[i].id, "style").when(400, { xStart: w.style.xStart, yStart: w.style.yStart, xEnd: w.style.xEnd, yEnd: w.style.yEnd }).start() } } } h.shapeList = f } function O() { var e = h.query(i, "animationDuration"), t = h.query(i, "animationEasing"), n, s, o, u, f, l; for (var c = 0, p = h.shapeList.length; c < p; c++)h.shapeList[c].shape == "sector" || h.shapeList[c].shape == "circle" || h.shapeList[c].shape == "ring" ? (n = h.shapeList[c].style.x, s = h.shapeList[c].style.y, o = h.shapeList[c].style.r0, u = h.shapeList[c].style.r, r.modShape(h.shapeList[c].id, { rotation: [Math.PI * 2, n, s], style: {r0: 0, r: 0} }, !0), f = a.get(h.shapeList[c], "series"), l = a.get(h.shapeList[c], "dataIndex"), r.animate(h.shapeList[c].id, "style").when((h.query(f, "animationDuration") || e) + l * 10, { r0: o, r: u }).start("QuinticOut"), r.animate(h.shapeList[c].id, "").when((h.query(f, "animationDuration") || e) + l * 100, {rotation: [0, n, s]}).start(h.query(f, "animationEasing") || t)) : h.shapeList[c]._mark || (l = h.shapeList[c]._dataIndex, r.modShape(h.shapeList[c].id, {scale: [0, 0, n, s]}, !0), r.animate(h.shapeList[c].id, "").when(e + l * 100, {scale: [1, 1, n, s]}).start("QuinticOut")); h.animationMark(e, t) } function M(e) { if (!h.isClick || !e.target)return; var i, s = e.target, o = s.style, u = a.get(s, "seriesIndex"), l = a.get(s, "dataIndex"); for (var c = 0, d = h.shapeList.length; c < d; c++)if (h.shapeList[c].id == s.id) { u = a.get(s, "seriesIndex"), l = a.get(s, "dataIndex"); if (!o._hasSelected) { var g = ((o.startAngle + o.endAngle) / 2).toFixed(2) - 0; s.style._hasSelected = !0, m[u][l] = !0, s.style._x = s.style.x, s.style._y = s.style.y, i = h.query(p[u], "selectedOffset"), s.style.x += f.cos(g, !0) * i, s.style.y -= f.sin(g, !0) * i } else s.style.x = s.style._x, s.style.y = s.style._y, s.style._hasSelected = !1, m[u][l] = !1; r.modShape(s.id, s) } else h.shapeList[c].style._hasSelected && v == "single" && (u = a.get(h.shapeList[c], "seriesIndex"), l = a.get(h.shapeList[c], "dataIndex"), h.shapeList[c].style.x = h.shapeList[c].style._x, h.shapeList[c].style.y = h.shapeList[c].style._y, h.shapeList[c].style._hasSelected = !1, m[u][l] = !1, r.modShape(h.shapeList[c].id, h.shapeList[c])); n.dispatch(t.EVENT.PIE_SELECTED, e.event, {selected: m}), r.refresh() } function _(t, n) { if (!h.isDrop || !t.target)return; var r = t.target, o = t.dragged, u = a.get(r, "seriesIndex"), f = a.get(r, "dataIndex"), l, c = s.legend; if (f == -1) l = { value: a.get(o, "value"), name: a.get(o, "name") }, l.value < 0 && (l.value = 0), p[u].data.push(l), c && c.add(l.name, o.style.color || o.style.strokeColor); else { var d = e("../util/accMath"); l = p[u].data[f], c && c.del(l.name), l.name += i.nameConnector + a.get(o, "name"), l.value = d.accAdd(l.value, a.get(o, "value")), c && c.add(l.name, o.style.color || o.style.strokeColor) } n.dragIn = n.dragIn || !0, h.isDrop = !1; return } function D(e, t) { if (!h.isDragend || !e.target)return; var n = e.target, r = a.get(n, "seriesIndex"), i = a.get(n, "dataIndex"); s.legend && s.legend.del(p[r].data[i].name), p[r].data.splice(i, 1), t.dragOut = !0, t.needRefresh = !0, h.isDragend = !1; return } var o = e("../component/base"); o.call(this, t, r); var u = e("./calculableBase"); u.call(this, r, i); var a = e("../util/ecData"), f = e("zrender/tool/math"), l = e("zrender/tool/util"), c = e("zrender/tool/color"), h = this; h.type = t.CHART_TYPE_PIE; var p, d = h.getZlevelBase(), v, m = {}; h.shapeHandler.onmouseover = function (e) { var t = e.target, n = a.get(t, "seriesIndex"), i = a.get(t, "dataIndex"), s = a.get(t, "special"), o = t._lastAddRadius, u = t.style.startAngle, f = t.style.endAngle, l = t.highlightStyle.color, c = E(n, i, s, o, u, f, l, !0); c && r.addHoverShape(c); var h = x(n, i, o, t.style.r0, t.style.r, u, f, l, !0); h && r.addHoverShape(h) }, h.reformOption = C, h.animation = O, h.init = k, h.refresh = L, h.addDataAnimation = A, h.onclick = M, h.ondrop = _, h.ondragend = D, k(i, s) } return e("../chart").define("pie", t), t }),define("_chart", ["require", "echarts/chart/scatter", "echarts/chart/k", "echarts/chart/radar", "echarts/chart/chord", "echarts/chart/force", "echarts/chart/map", "echarts/util/mapData/geoJson/an_hui_geo", "echarts/util/mapData/geoJson/ao_men_geo", "echarts/util/mapData/geoJson/bei_jing_geo", "echarts/util/mapData/geoJson/china_geo", "echarts/util/mapData/geoJson/chong_qing_geo", "echarts/util/mapData/geoJson/fu_jian_geo", "echarts/util/mapData/geoJson/gan_su_geo", "echarts/util/mapData/geoJson/guang_dong_geo", "echarts/util/mapData/geoJson/guang_xi_geo", "echarts/util/mapData/geoJson/gui_zhou_geo", "echarts/util/mapData/geoJson/hai_nan_geo", "echarts/util/mapData/geoJson/hei_long_jiang_geo", "echarts/util/mapData/geoJson/he_bei_geo", "echarts/util/mapData/geoJson/he_nan_geo", "echarts/util/mapData/geoJson/hu_bei_geo", "echarts/util/mapData/geoJson/hu_nan_geo", "echarts/util/mapData/geoJson/jiang_su_geo", "echarts/util/mapData/geoJson/jiang_xi_geo", "echarts/util/mapData/geoJson/ji_lin_geo", "echarts/util/mapData/geoJson/liao_ning_geo", "echarts/util/mapData/geoJson/nei_meng_gu_geo", "echarts/util/mapData/geoJson/ning_xia_geo", "echarts/util/mapData/geoJson/qing_hai_geo", "echarts/util/mapData/geoJson/shang_hai_geo", "echarts/util/mapData/geoJson/shan_dong_geo", "echarts/util/mapData/geoJson/shan_xi_1_geo", "echarts/util/mapData/geoJson/shan_xi_2_geo", "echarts/util/mapData/geoJson/si_chuan_geo", "echarts/util/mapData/geoJson/tai_wan_geo", "echarts/util/mapData/geoJson/tian_jin_geo", "echarts/util/mapData/geoJson/world_geo", "echarts/util/mapData/geoJson/xiang_gang_geo", "echarts/util/mapData/geoJson/xin_jiang_geo", "echarts/util/mapData/geoJson/xi_zang_geo", "echarts/util/mapData/geoJson/yun_nan_geo", "echarts/util/mapData/geoJson/zhe_jiang_geo", "echarts/chart/line", "echarts/chart/bar", "echarts/chart/pie"], function (e) { e("echarts/chart/scatter"), e("echarts/chart/k"), e("echarts/chart/radar"), e("echarts/chart/chord"), e("echarts/chart/force"), e("echarts/chart/map"), e("echarts/util/mapData/geoJson/an_hui_geo"), e("echarts/util/mapData/geoJson/ao_men_geo"), e("echarts/util/mapData/geoJson/bei_jing_geo"), e("echarts/util/mapData/geoJson/china_geo"), e("echarts/util/mapData/geoJson/chong_qing_geo"), e("echarts/util/mapData/geoJson/fu_jian_geo"), e("echarts/util/mapData/geoJson/gan_su_geo"), e("echarts/util/mapData/geoJson/guang_dong_geo"), e("echarts/util/mapData/geoJson/guang_xi_geo"), e("echarts/util/mapData/geoJson/gui_zhou_geo"), e("echarts/util/mapData/geoJson/hai_nan_geo"), e("echarts/util/mapData/geoJson/hei_long_jiang_geo"), e("echarts/util/mapData/geoJson/he_bei_geo"), e("echarts/util/mapData/geoJson/he_nan_geo"), e("echarts/util/mapData/geoJson/hu_bei_geo"), e("echarts/util/mapData/geoJson/hu_nan_geo"), e("echarts/util/mapData/geoJson/jiang_su_geo"), e("echarts/util/mapData/geoJson/jiang_xi_geo"), e("echarts/util/mapData/geoJson/ji_lin_geo"), e("echarts/util/mapData/geoJson/liao_ning_geo"), e("echarts/util/mapData/geoJson/nei_meng_gu_geo"), e("echarts/util/mapData/geoJson/ning_xia_geo"), e("echarts/util/mapData/geoJson/qing_hai_geo"), e("echarts/util/mapData/geoJson/shang_hai_geo"), e("echarts/util/mapData/geoJson/shan_dong_geo"), e("echarts/util/mapData/geoJson/shan_xi_1_geo"), e("echarts/util/mapData/geoJson/shan_xi_2_geo"), e("echarts/util/mapData/geoJson/si_chuan_geo"), e("echarts/util/mapData/geoJson/tai_wan_geo"), e("echarts/util/mapData/geoJson/tian_jin_geo"), e("echarts/util/mapData/geoJson/world_geo"), e("echarts/util/mapData/geoJson/xiang_gang_geo"), e("echarts/util/mapData/geoJson/xin_jiang_geo"), e("echarts/util/mapData/geoJson/xi_zang_geo"), e("echarts/util/mapData/geoJson/yun_nan_geo"), e("echarts/util/mapData/geoJson/zhe_jiang_geo"), e("echarts/chart/line"), e("echarts/chart/bar"), e("echarts/chart/pie") });