GIS開發(fā):echarts的GeoJSON文件壓縮
2022-03-18 09:25 作者:地理信息技術(shù)雜談 | 我要投稿
echarts為了加快GeoJSON的傳輸速度,對GeoJSON文件進(jìn)行了壓縮,?對GeoJSON中的坐標(biāo)信息進(jìn)行了壓縮了,減少了坐標(biāo)的數(shù)據(jù)量。
echarts中的GeoJSON數(shù)據(jù)格式:

采用的是zigzag的算法進(jìn)行壓縮的,"zigzag 的原理就是壓縮多余的因補(bǔ)位造成數(shù)據(jù)變大的問題,它的原理是把符號位向右移到在最前一位,對負(fù)數(shù)除最后一位經(jīng)行求為非;正數(shù)求不變。"
echarts內(nèi)置解碼算法,將坐標(biāo)信息進(jìn)行解析,在圖上進(jìn)行繪制。壓縮之前的中國行政區(qū)劃數(shù)據(jù):

壓縮之后的數(shù)據(jù):

壓縮后大小
壓縮比例是相當(dāng)高的,這在網(wǎng)絡(luò)傳輸上能夠加快傳輸速度,現(xiàn)在客戶端的計(jì)算機(jī)性能都是可以,解析并不需要很長的時間。
關(guān)鍵的壓縮代碼(摘自echarts源碼):

關(guān)鍵的解壓代碼(摘自echarts):

參考文章:
zigzag簡單說明:?? ?
https://blog.csdn.net/lzcaqde/article/details/81061590
echarts 開源地址:
https://github.com/apache/incubator-echarts