? ? ? ? ? ? ? ? ? ? ? ? ? 關(guān)于echart2,echart3地圖的使用一點(diǎn)人生經(jīng)驗(yàn):
1.echart3念搬,echart2加載地圖變形修復(fù)诽偷。
最近在使用echart2使用過(guò)程中,發(fā)現(xiàn)加載海南地圖會(huì)產(chǎn)生變形站粟。如下圖,海南地圖產(chǎn)生了較大的變形,于是需要研究怎么才能消除變形摘仅。經(jīng)過(guò)一番折騰,修改echart-all.js中_getTransform函數(shù)的
varxScale = width /mapWidth;
varyScale = height / mapHeight;
console.log(rate);
if(xScale > yScale) {
? ? ?//xScale = yScale * rate;
? ? ? xScale = yScale;
? ? ? width = mapWidth * xScale;
}else{
? ? ? yScale = xScale;
? ? ?//xScale = yScale * rate;
? ? ?height = mapHeight * yScale;
}
這樣地圖就能不產(chǎn)生變形(echart3里添加這個(gè)aspectScale:1就能使地圖不變形)
(產(chǎn)生變形的原圖)
(不變形的地圖)
2.echart2中添加自定義geosjon(主要講的是echart2问畅,echart3里加載geojson已經(jīng)比較方便)
同樣是修改echart-all.js中代碼加入如下代碼娃属,就能使用mapType為'hainan'的地圖
'hainan': {getGeoJson: (function() {
? ? ? ?return function(callback) {$.getJSON('data/hn.geojson',callback);}
? ? ? })()
},
自定義地圖效果