Skip to content

vHeatLayer 热力图层

基于 Leaflet.heat 的热力图图层组件。

基础用法

vue
<script setup>
import { vMap, vHeatLayer } from '@twi1i9ht/visual-lib'

const heatData = [
  { lat: 39.9, lng: 116.4, intensity: 1 },
  { lat: 39.91, lng: 116.41, intensity: 0.8 },
  { lat: 39.89, lng: 116.39, intensity: 0.6 },
]
</script>

<template>
  <vMap :center-lat="39.9" :center-lng="116.4" :zoom="12">
    <vHeatLayer :data="heatData" />
  </vMap>
</template>

自定义样式

vue
<template>
  <vHeatLayer
    :data="heatData"
    :radius="25"
    :blur="15"
    :max-zoom="17"
    :gradient="{
      0.4: 'blue',
      0.6: 'cyan',
      0.7: 'lime',
      0.8: 'yellow',
      1.0: 'red',
    }"
  />
</template>

Props

属性类型默认值说明
dataArray<{ lat: number, lng: number, intensity?: number }>热力点数据
radiusnumber25热力点半径
blurnumber15模糊半径
maxZoomnumber18最大缩放级别
maxnumber1最大强度值
minOpacitynumber0.05最小透明度
gradientRecord<number, string>颜色渐变配置

Released under the MIT License.