leaflet可视化平台搭建

leaflet-viz

Leaflet可视化平台

https://github.com/zrysmt/leaflet-viz

leaflet是一个开源的前端地图交互类库,比较轻量级,支持移动端。而且有丰富的插件资源可供我们使用。

Echarts是百度开源的前端可视化类库,提供丰富的前端可视化图表,平台中重要的一部分是我们要将leaflet和Echarts结合在一起。

该平台是基于leaflet及其插件搭建的一个方便可用的可视化平台。详细参见[示例Demo]。(https://zrysmt.github.io/demo/leaflet-demo/)

1. 安装与编译

  • 安装
npm install
  • 编译

debug模式

npm run dev

输出

npm run build

2.示例简介

示例地址:https://zrysmt.github.io/demo/leaflet-demo/

示例包含最基本的GIS功能和可视化Demo

3.基础的GIS功能

  • 拖放、全图、定位、打印出图片、打印出PDF功能。
  • 地图缩放、比例尺显示功能
  • 测量面积和距离功能
  • 图层切换,提供丰富的图层切换
  • 地图搜索功能
  • 基础绘图功能

4.可视化示例


- 热力图

引入:

import '../common/leaflet-plugin/HeatLayer.js';

使用:

var heat = L.heatLayer([
    [50.5, 30.5, 0.2], // lat, lng, intensity
    [50.6, 30.4, 0.5],
...
], {radius: 25}).addTo(map)

效果图

- 结合Echarts

let overlay = new L.echartsLayer3(map, echarts);
let chartsContainer = overlay.getEchartsContainer();
let myChart = overlay.initECharts(chartsContainer);
window.onresize = myChart.onresize;
console.log("chartsContainer:", chartsContainer);
if (type == "qianxi") {
    overlay.setOption(ecOption);
} else if (type == "scatter") {
    overlay.setOption(scatterOption);
}

迁徙图(选择了高德卫星底图)

散点图(选择了Geoq午夜蓝底图)

- DivIcon结合Echarts

这个方案不太适合大数据量的渲染。
我写了两个简单的功能函数,一个用来渲染可视化图(echartsIcon),一个专门用来渲染图例(echartsLegend)。
效果图(底图选择了为google底图)

import echartsIcon from '../common/plugin/echartsIcon.js'; //echartsLegend
import echartsLegend from '../common/plugin/echartsLegend.js'; //echartsLegend
let option = {
    tooltip: {
        trigger: 'item',
        formatter: "{a} <br/>{b} : {c} ({d}%)"
    },
    series: [{
        name: '访问来源',
        type: 'pie',
        radius: '55%',
        center: ['50%', '50%'],
        label: {
            normal: {
      
  • 10
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
leaflet是一种使用leaflet库来呈现风场、海浪、洋流、气压、温度等地球现象的可技术。该技术通过将地球上的各种地理数据转为易于理解的图形表示,帮助人们更好地理解气候变、海洋运动以及大气状况。 通过leaflet,我们可以以地图的形式展示风场数据。风场是指地球上蕴含的气流运动,它对于天气透明和天气变的预测起着重要作用。通过以箭头或线段的形式表示,leaflet可以直观地向我们展示不同地区的风向和风速。 海浪是海洋中的波浪运动,也是一种重要的海洋现象。使用leaflet可以将海浪数据以色块或曲线图的形式呈现,让我们了解不同地区的海浪高度、频率、周期等信息。 洋流是海洋中的水流运动,它对于全球气候和海洋生态系统具有重要影响。leaflet可以通过可变宽度的线段或箭头展示洋流的流向和流速,帮助我们更好地理解海洋运动的复杂性。 气压是大气中空气分布产生的压强差异,是气象学中的重要参数。使用leaflet可以将气压数据以等值线或色块的形式展示在地图上,让我们更加直观地了解不同地区的气压分布情况。 温度是地球大气和海洋中的一个重要气候因子。通过leaflet,我们可以将温度数据以色块或色带的形式展示,将地球的温度分布以直观的方式呈现给用户,帮助我们了解全球的温度变和季节变。 总之,leaflet技术为我们提供了一种直观、易于理解的方式来呈现风场、海浪、洋流、气压和温度等地球现象,帮助我们更好地理解和研究地球系统的复杂性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值