"use script"; //开发环境建议开启严格模式 //对应widget.js中MyWidget实例化后的对象 var thisWidget; //当前页面业务 function initWidgetView(_thisWidget) { thisWidget = _thisWidget; } //图表 var myChart1; //剖面分析 图表 function setEchartsData(data) { if (myChart1 == null) { myChart1 = echarts.init(document.getElementById("echartsView1"), "dark"); } var arrPoint = data.arrPoint; var option = { grid: { left: 10, right: 10, bottom: 10, containLabel: true, }, dataZoom: [ { type: "inside", throttle: 50, }, ], tooltip: { trigger: "axis", //position: function (point, params, dom, rect, size) { // return [10, 20]; //}, formatter: function (params) { var inhtml = ""; if (params.length == 0) { thisWidget.hideTipMarker(); return inhtml; } var hbgd = params[0].value; //海拔高度 var point = arrPoint[params[0].dataIndex]; //所在经纬度 var len = haoutil.str.formatLength(Number(params[0].axisValue)); var hbgdStr = haoutil.str.formatLength(Number(params[0].value)); inhtml = `当前位置
距起点:${len}
海拔:${hbgdStr}
经度:${point.lng}
纬度:${point.lat}`; thisWidget.showTipMarker(point, hbgd, inhtml); return inhtml; }, }, xAxis: [ { name: "行程", type: "category", boundaryGap: false, axisLine: { show: false, }, axisLabel: { show: false, }, data: data.arrLen, }, ], yAxis: [ { //name: '高度', type: "value", min: getMinZ(arrPoint), axisLabel: { // rotate: 60, formatter: "{value} 米", }, }, ], series: [ { name: "高程值", type: "line", smooth: true, symbol: "none", sampling: "average", itemStyle: { normal: { color: "rgb(255, 70, 131)", }, }, areaStyle: { normal: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: "rgb(255, 158, 68)", }, { offset: 1, color: "rgb(255, 70, 131)", }, ]), }, }, data: data.arrHB, }, ], }; myChart1.setOption(option); } function getMinZ(arr) { var minz = "dataMin"; if (arr == null || arr.length == 0) { return minz; } minz = arr[0].alt; for (var i = 0; i < arr.length; i++) { if (arr[i].alt < minz) { minz = arr[i].alt; } } return minz; }