2017-02-15 35 views
1

是否有任何有關處理mapbox中相當大(5MB)GeoJSON數據集的指導信息?Mapbox性能 - 單獨的圖層vs setData vs過濾器

我有3-4我需要顯示和切換在一張地圖上。我最好結合數據源並在圖層上使用filter來選擇我想要的數據?或者根據需要創建3-4層並顯示/隱藏會更好?或者最好是隻有一層,並通過圖層上的setData提供數據?

回答

1

的這個問題的答案取決於你的性能瓶頸是什麼:

  • 如果您瓶頸從工作線程傳輸數據/使用setFilter將不再需要將數據傳輸到工作線程。
  • 如果您的瓶頸正在過濾工作線程中的數據,並且您可以更高效地預處理該數據,則使用setData將消除在工作線程上過濾數據的需要。
  • 如果你有大量的可用內存,並需要快速顯示/隱藏圖層,創建3-4個單獨的層和顯示/根據需要隱藏將是最好的

您的瓶頸將取決於你的數據,你的使用模式和您的設備。與往常一樣,如果perf性能不夠好,我建議儘可能簡單地進行性能分析&!

+0

感謝信息盧卡斯。請原諒我的懶惰,但我不確定通過將數據傳入和傳出工作線程是什麼意思,因爲我沒有意識到使用工作線程。你能說一點嗎?我對性能瓶頸的印象是,它是客戶端渲染,但我不是100%,特別歡迎有關測量和識別mapbox瓶頸的任何提示。 – dougajmcdonald

+0

我有同樣的問題,並且想要了解更多關於如何測量瓶頸是將數據傳入/傳出工作線程還是過濾工作線程內部的更多說明@ lucas-wojciechowski。 @dougajmcdonald我的理解是'mapbox-gl-js'在內部使用工作線程。 – Gregor