飞线图

This commit is contained in:
13713575202 2025-04-20 17:30:04 +08:00
parent 8c96ff7ae8
commit 6d72828ede
2 changed files with 441 additions and 58 deletions

View File

@ -0,0 +1,200 @@
<template>
<div style="height: 900px">
<div class="w100" ref="chart" style="height: 900px"></div>
</div>
</template>
<script>
import { selectRecord } from '@/api/trace/dataStatistics';
import chinaMap from './china.json';
import gdMap from './gd.json';
export default {
data() {
return {
chinaGeoCoordMap: {
黑龙江: [127.9688, 45.368],
内蒙古: [110.3467, 41.4899],
吉林: [125.8154, 44.2584],
北京市: [116.4551, 40.2539],
辽宁: [123.1238, 42.1216],
河北: [114.4995, 38.1006],
天津: [117.4219, 39.4189],
山西: [112.3352, 37.9413],
陕西: [109.1162, 34.2004],
甘肃: [103.5901, 36.3043],
宁夏: [106.3586, 38.1775],
青海: [101.4038, 36.8207],
新疆: [87.9236, 43.5883],
西藏: [91.11, 29.97],
四川: [103.9526, 30.7617],
重庆: [108.384366, 30.439702],
山东: [117.1582, 36.8701],
河南: [113.4668, 34.6234],
江苏: [118.8062, 31.9208],
安徽: [117.29, 32.0581],
湖北: [114.3896, 30.6628],
浙江: [119.5313, 29.8773],
福建: [119.4543, 25.9222],
江西: [116.0046, 28.6633],
湖南: [113.0823, 28.2568],
贵州: [106.6992, 26.7682],
云南: [102.9199, 25.4663],
广东: [113.12244, 23.009505],
广西: [108.479, 23.1152],
海南: [110.3893, 19.8516],
上海: [121.4648, 31.2891],
},
chinaDatas: [
[{ name: '黑龙江', value: 500 }],
[{ name: '内蒙古', value: 300 }],
[{ name: '北京市', value: 200 }],
[{ name: '吉林', value: 300 }],
[{ name: '辽宁', value: 500 }],
[{ name: '河北', value: 600 }],
[{ name: '天津', value: 500 }],
[{ name: '山西', value: 700 }],
[{ name: '陕西', value: 600 }],
[{ name: '甘肃', value: 500 }],
[{ name: '宁夏', value: 500 }],
[{ name: '青海', value: 700 }],
[{ name: '新疆', value: 300 }],
[{ name: '西藏', value: 300 }],
[{ name: '四川', value: 1000 }],
[{ name: '重庆', value: 900 }],
[{ name: '广东', value: 300 }],
[{ name: '山东', value: 600 }],
[{ name: '河南', value: 1800 }],
[{ name: '江苏', value: 1000 }],
[{ name: '安徽', value: 900 }],
[{ name: '湖北', value: 3200 }],
[{ name: '浙江', value: 1600 }],
[{ name: '福建', value: 900 }],
[{ name: '湖南', value: 2400 }],
[{ name: '贵州', value: 800 }],
[{ name: '广西', value: 700 }],
[{ name: '海南', value: 700 }],
[{ name: '上海', value: 170 }],
[{ name: '江西', value: 170 }],
[{ name: '云南', value: 500 }],
],
};
},
props: {
baseId: Number,
},
watch: {
baseId: {
handler: async function (n) {
if (n) {
await this.$nextTick();
this.loadMapChart();
}
},
immediate: true,
},
},
methods: {
async loadMapChart() {
var option = {
title: {
text: '地图统计图表',
subtext: '',
x: 'center',
y: 'top',
textStyle: {
color: '#2b7',
fontSize: 20,
fontWeight: 'bold',
},
subtextStyle: {
color: '#C0C4CC',
fontSize: '15',
height: '40',
lineHeight: '40',
},
},
toolbox: {},
visualMap: {
min: 0,
max: 1000,
show: false,
type: 'piecewise',
pieces: [
{ gt: 1500 }, // (1500, Infinity]
{ gt: 900, lte: 1500 }, // (900, 1500]
{ gt: 310, lte: 1000 }, // (310, 1000]
{ gt: 200, lte: 300 }, // (200, 300]
{ gt: 0, lte: 200, color: '#2b7' },
],
textStyle: {
color: '#ffffff',
},
},
geo: {
map: 'guangdong',
roam: true,
show: true,
zoom: 1.3,
top: 250,
select: {
disabled: false,
},
itemStyle: {
borderColor: '#fff',
borderWidth: 2,
areaColor: '#243c48',
},
label: {
show: true,
fontSize: 10, //
color: '#fff', //
},
regions: [
{ name: '深圳市', itemStyle: { areaColor: '#41c0c7' } },
{ name: '珠海市', itemStyle: { areaColor: '#417cc7' } },
{ name: '广州市', itemStyle: { areaColor: '#9d63cf' } },
],
},
tooltip: {
show: true,
formatter: function (param) {
return `${param.data.name}查询了${param.data.value[2]}`;
},
},
series: [
{
type: 'scatter',
symbol:
'image://data:image/png;base64,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',
symbolSize: '28',
coordinateSystem: 'geo',
data: null,
label: {
show: false,
},
},
],
};
const { rows } = await selectRecord(this.baseId);
//
// option.series[0].data = rows.map((item) => ({
// name: item.queryCity,
// value: [item.queryCoordinate.split(',')[0], item.queryCoordinate.split(',')[1], item.queryCount],
// }));
//
let i = 0;
rows.forEach((item) => {
i += item.queryCount;
});
option.title.subtext = `我们的产品走过了${rows.length}个城市,被客户查询了${i}`;
let myChart = this.$echarts.init(this.$refs.chart);
this.$echarts.registerMap('guangdong', { geoJSON: chinaMap });
myChart.setOption(option);
window.onresize = function () {
myChart.resize();
};
},
// mapChart(this.$refs.chart, data, i,'rgb(28, 61, 73)','rgb(64, 219, 165)',{fontSize:30});
},
};
</script>
<style></style>

View File

@ -9,7 +9,74 @@ import chinaMap from './china.json';
import gdMap from './gd.json';
export default {
data() {
return {};
return {
chinaGeoCoordMap: {
黑龙江: [127.9688, 45.368],
内蒙古: [110.3467, 41.4899],
吉林: [125.8154, 44.2584],
北京市: [116.4551, 40.2539],
辽宁: [123.1238, 42.1216],
河北: [114.4995, 38.1006],
天津: [117.4219, 39.4189],
山西: [112.3352, 37.9413],
陕西: [109.1162, 34.2004],
甘肃: [103.5901, 36.3043],
宁夏: [106.3586, 38.1775],
青海: [101.4038, 36.8207],
新疆: [87.9236, 43.5883],
西藏: [91.11, 29.97],
四川: [103.9526, 30.7617],
重庆: [108.384366, 30.439702],
山东: [117.1582, 36.8701],
河南: [113.4668, 34.6234],
江苏: [118.8062, 31.9208],
安徽: [117.29, 32.0581],
湖北: [114.3896, 30.6628],
浙江: [119.5313, 29.8773],
福建: [119.4543, 25.9222],
江西: [116.0046, 28.6633],
湖南: [113.0823, 28.2568],
贵州: [106.6992, 26.7682],
云南: [102.9199, 25.4663],
广东: [113.12244, 23.009505],
广西: [108.479, 23.1152],
海南: [110.3893, 19.8516],
上海: [121.4648, 31.2891],
},
chinaDatas: [
[{ name: '黑龙江', value: 500 }],
[{ name: '内蒙古', value: 300 }],
[{ name: '北京市', value: 200 }],
[{ name: '吉林', value: 300 }],
[{ name: '辽宁', value: 500 }],
[{ name: '河北', value: 600 }],
[{ name: '天津', value: 500 }],
[{ name: '山西', value: 700 }],
[{ name: '陕西', value: 600 }],
[{ name: '甘肃', value: 500 }],
[{ name: '宁夏', value: 500 }],
[{ name: '青海', value: 700 }],
[{ name: '新疆', value: 300 }],
[{ name: '西藏', value: 300 }],
[{ name: '四川', value: 1000 }],
[{ name: '重庆', value: 900 }],
[{ name: '广东', value: 300 }],
[{ name: '山东', value: 600 }],
[{ name: '河南', value: 1800 }],
[{ name: '江苏', value: 1000 }],
[{ name: '安徽', value: 900 }],
[{ name: '湖北', value: 3200 }],
[{ name: '浙江', value: 1600 }],
[{ name: '福建', value: 900 }],
[{ name: '湖南', value: 2400 }],
[{ name: '贵州', value: 800 }],
[{ name: '广西', value: 700 }],
[{ name: '海南', value: 700 }],
[{ name: '上海', value: 170 }],
[{ name: '江西', value: 170 }],
[{ name: '云南', value: 500 }],
],
};
},
props: {
baseId: Number,
@ -26,7 +93,135 @@ export default {
},
},
methods: {
convertData(data) {
console.info('convertData',data)
var res = [];
for (var i = 0; i < data.length; i++) {
var dataItem = data[i];
var fromCoord = [114.3896, 30.6628];
var toCoord = this.chinaGeoCoordMap[dataItem[0].name];
if (fromCoord && toCoord) {
res.push([
{
coord: fromCoord,
value: dataItem[0].value,
},
{
coord: toCoord,
},
]);
}
}
return res;
},
getSeries() {
let list = [];
let _this=this;
[['湖北', _this.chinaDatas]].forEach(function (item, i) {
console.log('getSeries',_this);
list.push(
{
type: 'lines',
zlevel: 1,
effect: {
show: true,
period: 4, //
trailLength: 0.02, //[0,1]
symbol: 'arrow', //
symbolSize: 5, //
},
lineStyle: {
normal: {
width: 1, //线
opacity: 1, //线
curveness: 0.3, //线
},
},
data: _this.convertData(item[1]),
},
{
type: 'effectScatter',
coordinateSystem: 'geo',
zlevel: 2,
rippleEffect: {
//
period: 4, //
brushType: 'stroke', // stroke, fill
scale: 4, //
},
label: {
normal: {
show: true,
position: 'right', //
offset: [5, 0], //
formatter: function (params) {
//
return params.data.name;
},
fontSize: 10,
},
emphasis: {
show: true,
},
},
symbol: 'circle',
symbolSize: function (val) {
return 3 + (val[2] / 100) * 1; //
},
itemStyle: {
normal: {
show: false,
color: '#FFA54F',
},
},
data: item[1].map(function (dataItem) {
return {
name: dataItem[0].name,
value: _this.chinaGeoCoordMap[dataItem[0].name].concat([dataItem[0].value]),
};
}),
},
//
{
type: 'scatter',
coordinateSystem: 'geo',
zlevel: 2,
rippleEffect: {
period: 4,
brushType: 'stroke',
scale: 4,
},
label: {
normal: {
show: true,
position: 'right',
//offset:[5, 0],
color: '#0f0',
formatter: '{b}',
textStyle: {
color: '#0f0',
},
},
emphasis: {
show: true,
color: '#FFA54F',
},
},
symbol: 'pin',
symbolSize: 50,
data: [
{
name: item[0],
value: _this.chinaGeoCoordMap[item[0]].concat([10]),
},
],
}
);
});
return list;
},
async loadMapChart() {
let _this=this;
var option = {
title: {
text: '地图统计图表',
@ -45,70 +240,58 @@ export default {
lineHeight: '40',
},
},
toolbox: {},
tooltip: {
trigger: 'item',
backgroundColor: 'rgba(166, 200, 76, 0.82)',
borderColor: '#FFFFCC',
showDelay: 0,
hideDelay: 0,
enterable: true,
transitionDuration: 0,
extraCssText: 'z-index:100',
formatter: function (params, ticket, callback) {
//
var res = '';
var name = params.name;
var value = params.value[params.seriesIndex + 1];
res = "<span style='color:#fff;'>" + name + '</span><br/>数据:' + value;
return res;
},
},
backgroundColor: 'transparent',
visualMap: {
min: 0,
max: 1000,
show: false,
type: 'piecewise',
pieces: [
{ gt: 1500 }, // (1500, Infinity]
{ gt: 900, lte: 1500 }, // (900, 1500]
{ gt: 310, lte: 1000 }, // (310, 1000]
{ gt: 200, lte: 300 }, // (200, 300]
{ gt: 0, lte: 200, color: '#2b7' },
],
//
min: 1,
max: 4000,
calculable: true,
show: true,
color: ['#f44336', '#fc9700', '#ffde00', '#ffde00', '#00eaff'],
textStyle: {
color: '#ffffff',
color: '#fff',
},
},
geo: {
map: 'guangdong',
roam: true,
show: true,
zoom: 1,
top: 100,
select: {
disabled: false,
},
itemStyle: {
borderColor: '#fff',
borderWidth: 2,
areaColor: '#243c48',
},
label:{
show:true,
fontSize: 10, //
color: '#fff', //
},
regions: [
{
name: '深圳市', //
itemStyle: {
areaColor: '#41c0c7', //
},
},
],
},
tooltip: {
show: true,
formatter: function (param) {
return `${param.data.name}查询了${param.data.value[2]}`;
},
},
series: [
{
type: 'scatter',
symbol:
'image://data:image/png;base64,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',
symbolSize: '28',
coordinateSystem: 'geo',
data: null,
label: {
map: 'china',
zoom: 1.2,
top:250,
label: {
emphasis: {
show: false,
},
},
],
roam: true, //
itemStyle: {
normal: {
color: '#243c48', //
borderColor: '#005A5C', //线00fcff 516a89
borderWidth: 1,
},
emphasis: {
color: 'rgba(37, 43, 61, .5)', //
},
},
},
series: _this.getSeries(),
};
const { rows } = await selectRecord(this.baseId);
//
@ -123,7 +306,7 @@ export default {
});
option.title.subtext = `我们的产品走过了${rows.length}个城市,被客户查询了${i}`;
let myChart = this.$echarts.init(this.$refs.chart);
this.$echarts.registerMap('guangdong', { geoJSON: gdMap });
this.$echarts.registerMap('china', { geoJSON: chinaMap });
myChart.setOption(option);
window.onresize = function () {
myChart.resize();