从北京到纽约,带你轻松看懂echarts地图图表应用案例

2026-10-26 0 阅读

在当今这个数据驱动的时代,地图图表已经成为展示地理信息的重要工具。ECharts,作为一款强大的可视化库,提供了丰富的地图图表功能,可以帮助我们轻松地将地理数据可视化。本文将带领大家从北京出发,穿越太平洋,到达纽约,通过具体的案例,了解ECharts地图图表的应用。

ECharts地图图表简介

ECharts地图图表是基于ECharts库开发的一种图表类型,它可以展示各种地理信息,如行政区划、地理位置、人口分布等。ECharts地图图表支持多种地图类型,包括中国地图、世界地图、省市区地图等,并且可以自定义地图样式。

北京到纽约的地图图表案例

1. 北京到纽约的直线距离

首先,我们可以使用ECharts地图图表来展示北京到纽约的直线距离。以下是实现这一功能的代码示例:

// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图组件
require('echarts/lib/component/geo');

// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '北京到纽约的直线距离'
    },
    tooltip: {
        trigger: 'item'
    },
    geo: {
        map: 'world',
        roam: true,
        label: {
            emphasis: {
                show: false
            }
        },
        itemStyle: {
            normal: {
                areaColor: '#323c48',
                borderColor: '#111'
            },
            emphasis: {
                areaColor: '#2a333d'
            }
        }
    },
    series: [
        {
            name: '北京到纽约的直线距离',
            type: 'effectScatter',
            coordinateSystem: 'geo',
            data: [
                {
                    name: '北京',
                    value: [116.46, 39.92]
                },
                {
                    name: '纽约',
                    value: [-74.13, 40.71]
                }
            ],
            symbolSize: 50,
            showEffectOn: 'render',
            rippleEffect: {
                brushType: 'stroke'
            },
            hoverAnimation: true,
            label: {
                normal: {
                    formatter: '{b}',
                    position: 'right',
                    show: true
                }
            },
            itemStyle: {
                normal: {
                    color: '#f4e925',
                    shadowBlur: 10,
                    shadowColor: '#333'
                }
            },
            zlevel: 1
        }
    ]
};

// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);

2. 北京到纽约的航班路径

接下来,我们可以使用ECharts地图图表来展示北京到纽约的航班路径。以下是实现这一功能的代码示例:

// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图组件
require('echarts/lib/component/geo');

// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '北京到纽约的航班路径'
    },
    tooltip: {
        trigger: 'item'
    },
    geo: {
        map: 'world',
        roam: true,
        label: {
            emphasis: {
                show: false
            }
        },
        itemStyle: {
            normal: {
                areaColor: '#323c48',
                borderColor: '#111'
            },
            emphasis: {
                areaColor: '#2a333d'
            }
        }
    },
    series: [
        {
            name: '北京到纽约的航班路径',
            type: 'lines',
            coordinateSystem: 'geo',
            polyline: true,
            data: [
                {
                    coords: [
                        [116.46, 39.92],
                        [-123.03, 49.28]
                    ]
                }
            ],
            lineStyle: {
                normal: {
                    color: '#f4e925',
                    width: 3,
                    opacity: 0.6,
                    curveness: 0.2
                }
            },
            effect: {
                show: true,
                period: 6,
                trailLength: 0.7,
                color: '#fff',
                symbolSize: 3
            },
            zlevel: 1
        }
    ]
};

// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);

3. 北京到纽约的人口密度

最后,我们可以使用ECharts地图图表来展示北京到纽约的人口密度。以下是实现这一功能的代码示例:

// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图组件
require('echarts/lib/component/geo');

// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '北京到纽约的人口密度'
    },
    tooltip: {
        trigger: 'item'
    },
    geo: {
        map: 'world',
        roam: true,
        label: {
            emphasis: {
                show: false
            }
        },
        itemStyle: {
            normal: {
                areaColor: '#323c48',
                borderColor: '#111'
            },
            emphasis: {
                areaColor: '#2a333d'
            }
        }
    },
    series: [
        {
            name: '北京到纽约的人口密度',
            type: 'map',
            mapType: 'world',
            roam: true,
            label: {
                normal: {
                    show: false
                },
                emphasis: {
                    show: true
                }
            },
            data: [
                {
                    name: '北京',
                    value: 2000
                },
                {
                    name: '纽约',
                    value: 8000
                }
            ],
            itemStyle: {
                normal: {
                    areaColor: '#f4e925',
                    borderColor: '#111'
                },
                emphasis: {
                    areaColor: '#2a333d'
                }
            }
        }
    ]
};

// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);

总结

通过以上案例,我们可以看到ECharts地图图表在展示地理信息方面的强大功能。无论是展示直线距离、航班路径还是人口密度,ECharts地图图表都能轻松实现。希望本文能帮助大家更好地了解ECharts地图图表的应用。

分享到: