เอกสาร / ส่วนขยาย / Heatmap

Heatmap

วาดข้อมูลความหนาแน่นเป็นเลเยอร์แรสเตอร์แบบกระเบื้อง เนื่องจากไม่ขึ้นกับผู้ให้บริการ รูปลักษณ์จะไม่เปลี่ยนแปลงแม้ว่าจะสลับแผนที่

ANDROID
com.mapconductor:heatmap
iOS
MapConductorHeatmap
REACT
@mapconductor/react-heatmap
แพลตฟอร์ม

01 · การติดตั้ง

app/build.gradle.kts
implementation("com.mapconductor:heatmap")

02 · การใช้งาน

จัดเรียงจุดภายในซ้อนทับ สำหรับจุดจำนวนมาก โปรดใช้ส่วนประกอบสำหรับการเพิ่มจำนวนมาก

HeatmapScreen.kt · Jetpack Compose
val pointStates: List<HeatmapPointState> = remember { buildPointList() }

MapLibreMapView(state = mapState) {
    HeatmapOverlay(radiusPx = 20, opacity = 0.7) {
        HeatmapPoints(pointStates)
    }
}

03 · ตัวเลือกหลัก

Option
Default
คำอธิบาย
radiusPx
20
รัศมีการเบลอของแต่ละจุด (พิกเซล)
opacity
0.7
ความทึบแสงของซ้อนทับทั้งหมด
gradient
DEFAULT
การกำหนดสีตามความเข้ม สามารถกำหนดจุดหยุดได้อย่างอิสระ
tileSize
512
ด้านของกระเบื้องที่จะสร้าง (พิกเซล)
weightProvider
state.weight
วิธีการดึงน้ำหนักของแต่ละจุด ค่าเริ่มต้นคืออ่านค่าน้ำหนักของแต่ละ HeatmapPointState (ค่าเริ่มต้น 1.0) สะท้อนปริมาณ เช่น ประชากรหรือยอดขาย

04 · ประสิทธิภาพ

วาดเป็นกระเบื้อง

เนื่องจาก Heatmap ถูกสร้างเป็นกระเบื้องแรสเตอร์ จำนวนซ้อนทับจะไม่เพิ่มขึ้นแม้จำนวนจุดจะเพิ่มขึ้น ในตัวอย่างนี้วาด 24,526 จุด

ตัวอย่าง · 24,526 จุดที่วาดเป็นกระเบื้อง

หน้าที่เกี่ยวข้อง