主題
通用問題
遇到技術問題怎麼辦?
1) 提問前,建議您先閱讀 配置項手冊 左側的導航。在配置項手冊中,您可以瞭解 ECharts 有哪些配置項。您可以在相關元件下找到是否有可以實現您需要的功能的配置項。
2) 瀏覽本頁的常見問題。
3) 在官方編輯器、CodePen、CodeSandbox 或 JSFiddle 上建立一個簡單的例子來複現您的問題。如果您無法用程式碼描述需求,可以嘗試提供設計稿或畫一張草圖。
4) 在 stackoverflow 上提問並附上示例連結。
ECharts 可以免費使用嗎?
是的,ECharts 在 Apache License 2.0 許可下開源。
座標軸
座標軸標籤顯示空間不足怎麼辦?
您可以使用 interval 來控制顯示多少個標籤,將其設定為 0
以顯示所有標籤。
或者您可以設定 axisLabel.rotate 來將標籤旋轉一定角度。
為什麼想把座標軸放在右側時不起作用?
您需要將 onZero 設定為 false
。
如何強制顯示座標軸的第一個/最後一個標籤?
自 ECharts 3.5.2 版本起,支援 axisLabel.showMinLabel 和 axisLabel.showMaxLabel。它們可用於控制是否強制顯示第一個/最後一個標籤。
圖例
圖例區域與圖表重疊怎麼辦?
您可以透過設定 grid 來控制圖表區域的位置。例如,設定一個更大的 grid.top
將繪圖區域下移。
我們計劃在未來的版本中讓佈局更加智慧。
折線圖
座標軸上的刻度似乎與資料不符?
請檢查您是否設定了 stack
。如果您不想製作堆疊折線圖,應該移除它。
柱狀圖
為什麼當數值很小時,y 軸刻度會消失?
ECharts 3.5 版本已修復此問題。
地圖
省份名稱在圖表上重疊。如何修改名稱的位置?
您可以在地圖檔案(JS 或 JSON)中修改對應省份的 cp
座標,或者修改已透過 echarts.getMap('china')
載入的地圖資料。
更多詳情,請參考 GitHub。
在哪裡可以下載其他國家的地圖?
其他國家的地圖資訊可以從這裡下載。
如何獲取地圖的縮放事件?
首先,您需要將系列的 roam 設定為 true
,然後監聽 'georoam'
事件。例如
myChart.on('georoam', function (params) {
console.log(params);
});
如何製作自定義地圖?
ECharts 地圖是在原始座標的基礎上進行了額外編碼。您可以使用 mapshaper-plus 工具上傳自定義的 geojson 檔案,然後生成可以在 ECharts 中使用的地圖檔案。
百度地圖
如何將 ECharts 與百度地圖結合使用?
- 引入
echarts.js
、bmap.js
和https://api.map.baidu.com/api?v=3.0&ak=這裡是您在百度開發者平臺獲取的金鑰
。 - 在
option
中設定bmap
,您可以參考這個示例。 - 如果您需要獲取百度地圖例項,可以使用
chart.getModel().getComponent('bmap').getBMap()
,然後根據百度地圖 API 進行設定。
儀表盤
如何設定儀表盤顏色?
您可以使用 axisLine.lineStyle.color。
事件處理
如何獲取圖表點選等事件?
請閱讀官方教程。ECharts 支援的事件型別可以在相關 API 中找到。
其他
為什麼圖表不顯示?
您可以檢查以下情況:
echarts.js
是否正常載入。echarts
變數是否存在。- 呼叫
echarts.init
時,DOM 容器是否具有寬度或高度。
為什麼在 Vue 中使用 ECharts 時圖表無法正常工作?
- 如果您正在使用 Vue 3,請避免使用
reactive
和ref
。 - 如果您正在使用 Vue 2,請避免在
data
函式中宣告 ECharts 例項物件或使用Vue.observable
API。
以上所有操作都會導致 ECharts 例項物件被代理為響應式物件,這可能會影響 ECharts 內部模型的屬性訪問,並帶來一些意想不到的問題和糟糕的效能。
建議將 ECharts 例項物件宣告為普通變數,或使用 shallowRef
/ shallowReactive
/ markRaw
API 來防止例項物件被代理。
另請參閱 #17723 和 Vue 文件中的使用注意事項。
是否有更多學習 ECharts 的資源?
請參考 awesome-echarts 獲取更多相關專案和資源。