vue中使用echarts繪制雙Y軸圖表時刻度沒有對齊的兩種解決方法(最新方案)

1、原因
刻度在顯示時,分割段數(shù)不一樣,導致左右的刻度線不一致,不能重合在一起。
2、思路
根據(jù)上面的原因去分析,要想左右的刻度線一致,分隔的段數(shù)是必須是一樣的,這樣才能重合。
3、解決方法
3.1、使用alignTicks解決
- 從 v5.3.0 開始支持
- 在多個 y 軸為數(shù)值軸的時候,可以開啟該配置項自動對齊刻度。只對’value’和’log’類型的軸有效。
yAxis: [
{
type: 'value',
name: '水量',
alignTicks: true,
axisLabel: {
formatter: '{value} ml'
}
},
{
type: 'value',
name: '溫度',
alignTicks: true,
axisLabel: {
formatter: '{value} °C'
}
}
],效果展示

3.2、結合min和max屬性去配置interval屬性
1、首先固定兩邊的分隔的段數(shù)。
- 分別求出左邊Y軸和右邊Y軸的最大值max和最小值min,根據(jù)max和min之間的和去除以分隔的段數(shù),分別算出左邊Y軸和右邊Y軸的分隔間隔。
在ECharts中有兩個很重要的屬性:
- interval:強制設置坐標軸分割間隔。
- splitNumber:坐標軸的分割段數(shù),需要注意的是這個分割段數(shù)只是個預估值,最后實際顯示的段數(shù)會在這個基礎上根據(jù)分割后坐標軸刻度顯示的易讀程度作調整。
2、結合min和max屬性去配置interval。
- 這是測試數(shù)據(jù)
let lData = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3] let rData = [2.0, 2.2, 3.3, 4.5, 6.3, 10.2, 20.3, 23.4, 23.0, 16.5, 92.0, 6.2]
計算最大值和最小值
let lMax = Number(Math.max(...lData)) let lMin = Number(Math.min(...lData)) let rMax = Number(Math.max(...rData)) let rMin = Number(Math.min(...rData))
最大值向上取整,最小值向下取整,讓顯示的數(shù)據(jù)為10的倍數(shù)或100的倍數(shù)整數(shù)顯示。
lMax = Math.ceil(lMax / 100) * 100 lMin = Math.floor(lMin / 100) * 100 rMax = Math.ceil(rMax / 10) * 10 rMin = Math.floor(rMin / 10) * 10
計算分隔間隔
let splitNumber = 10 let lInterval = lMax / splitNumber let rInterval = rMax / splitNumber
配置yAxis
yAxis: [
{
type: 'value',
name: '水量',
splitNumber:splitNumber,
min: lMin,
max: lMax,
interval: lInterval,
axisLabel: {
formatter: '{value} ml'
}
},
{
type: 'value',
name: '溫度',
splitNumber:splitNumber,
min: rMin,
max: rMax,
interval: rInterval,
axisLabel: {
formatter: '{value} °C'
}
}
],效果展示

到此這篇關于vue中使用echarts繪制雙Y軸圖表時,刻度沒有對齊的兩種解決方法的文章就介紹到這了,更多相關vue echarts繪制雙Y軸圖表內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue addRoutes實現(xiàn)動態(tài)權限路由菜單的示例
本篇文章主要介紹了vue addRoutes實現(xiàn)動態(tài)權限路由菜單的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05
vue項目中企業(yè)微信使用js-sdk時config和agentConfig配置方式詳解
這篇文章主要介紹了vue項目中企業(yè)微信使用js-sdk時config和agentConfig配置,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
vue自定v-model實現(xiàn)表單數(shù)據(jù)雙向綁定問題
vue.js的一大功能便是實現(xiàn)數(shù)據(jù)的雙向綁定。這篇文章主要介紹了vue自定v-model實現(xiàn) 表單數(shù)據(jù)雙向綁定的相關知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-09-09
基于uniapp+vue3?實現(xiàn)72小時倒計時功能
數(shù)組項有一個下單時間?,比如今天下單在72小時內可以繼續(xù)支付,超過則默認取消訂單,下面通過實例代碼介紹uniapp+vue3?實現(xiàn)72小時倒計時功能,感興趣的朋友一起看看吧2025-05-05

