動態叢集
專門支援資料與渲染器的動態更新,調用 new mapPlus.DynamicCluster(options),開始使用動態叢集圖。

特色
DynamicCluster
是一個專為動態更新資料與渲染器而設計的 API。
其核心邏輯以每個渲染器對應的唯一識別符 key
作為更新的基準點,從而精準檢測新舊資料的差異,並僅對變更部分進行處理,而非重新渲染所有資料,以提升叢集圖的性能。
開始使用
調用 new mapPlus.DynamicCluster(options)
,開始使用地圖動態叢集。
- options
(object)
: 必填,動態叢集的參數。
Name | Description |
---|---|
options.data object[] | 選填,動態叢集的資料,可搭配 options.markerRenderer 進行使用。 |
options.markerRenderer function | 選填,渲染地標的回調函式,回調函式中需回傳 地標參數 與不重複 key 值。未填則使用 options.data 中的資料。` |
options.styles object | 選填,叢集圖的樣式。 |
options.onClusterClick function | 選填,點選叢集圖執行的回調函式,預設為畫面移至該座標叢集區域。 |
options.onMarkerClick function | 選填,點選地標執行的回調函式。 |
options.clusterMaxZoom number | 選填,集群圖層會停止集群化的最大縮放級別,預設為 14 。 |
options.clusterMinPoints number | 選填,形成一個集群所需的最小點數,預設為 2 。 |
options.clusterRadius number | 選填,集群半徑,以像素為單位,預設為 50 。 |
Examples
地標渲染器
可使用 DynamicCluster(options)
的 options.data
與 options.markerRenderer
來設定地標的渲染。
markerRenderer
options.markerRenderer(callback)
markerRenderer
接受一個 callback
回調函式,該回調函式需返回包含 地標參數 以及唯一的 key
值的物件。
callback(data, index)
參數說明:
- data
(any)
: 為options.data
中的資料。 - index
(number)
: 資料的索引。
Examples
叢集圖樣式
可使用 DynamicCluster(options)
的 options.styles
來設定叢集圖的樣式。
叢集圖點選事件
可使用 DynamicCluster(options)
的 options.onClusterClick
,設定點選叢集圖執行的回調函式,預設為畫面移至該座標叢集區域。
Examples
地標點選事件
可使用 DynamicCluster(options)
的 options.onMarkerClick
,設定點選地標執行的回調函式。
Examples
實例方法
- setData: 設定資料,並更新動態叢集。
- setMarkerRenderer: 設定地標渲染器,並更新動態叢集。
- setOnClusterClick: 設定叢集圖點選事件。
- setOnMarkerClick: 設定地標點選事件。
- remove: 移除動態叢集。
setData
setData(data)
設定資料,並更新動態叢集。
Examples
setMarkerRenderer
setMarkerRenderer(renderer)
設定地標渲染器,並更新動態叢集。
Examples
setOnClusterClick
setOnClusterClick(clusterClickHandler)
設定叢集圖點選事件。
Examples
setOnMarkerClick
setOnMarkerClick(markerClickHandler)
設定地標點選事件。
Examples
remove
remove()
移除動態叢集。
Examples