ECharts 互動元件概述
導讀 | ECharts 提供了很多互動元件:例元件 legend、標題元件 title、視覺對映元件 visualMap、資料區域縮放元件 dataZoom、時間線元件 timeline。 |
接下來的內容我們將介紹如何使用資料區域縮放元件 dataZoom。
dataZoom
dataZoom 元件可以實現透過滑鼠滾輪滾動,放大縮小圖表的功能。
預設情況下 dataZoom 控制 x 軸,即對 x 軸進行資料視窗縮放和資料視窗平移操作。
例項
option = { xAxis: { type: 'value' }, yAxis: { type: 'value' }, dataZoom: [ { // 這個dataZoom元件,預設控制x軸。 type: 'slider', // 這個 dataZoom 元件是 slider 型 dataZoom 元件 start: 10, // 左邊在 10% 的位置。 end: 60 // 右邊在 60% 的位置。 } ], series: [ { type: 'scatter', // 這是個『散點圖』 itemStyle: { opacity: 0.8 }, symbolSize: function (val) { return val[2] * 40; }, data: [["14.616","7.241","0.896"],["3.958","5.701","0.955"],["2.768","8.971","0.669"],["9.051","9.710","0.171"],["14.046","4.182","0.536"],["12.295","1.429","0.962"],["4.417","8.167","0.113"],["0.492","4.771","0.785"],["7.632","2.605","0.645"],["14.242","5.042","0.368"]] } ] }
上面的例項只能拖動 dataZoom 元件來縮小或放大圖表。如果想在座標系內進行拖動,以及用滑鼠滾輪(或移動觸屏上的兩指滑動)進行縮放,那麼需要 再再加上一個 inside 型的 dataZoom 元件。
在以上例項基礎上我們再增加 type: 'inside' 的配置資訊:
例項
option = { ..., dataZoom: [ { // 這個dataZoom元件,預設控制x軸。 type: 'slider', // 這個 dataZoom 元件是 slider 型 dataZoom 元件 start: 10, // 左邊在 10% 的位置。 end: 60 // 右邊在 60% 的位置。 }, { // 這個dataZoom元件,也控制x軸。 type: 'inside', // 這個 dataZoom 元件是 inside 型 dataZoom 元件 start: 10, // 左邊在 10% 的位置。 end: 60 // 右邊在 60% 的位置。 } ], ... }
當然我們可以透過 dataZoom.xAxisIndex 或 dataZoom.yAxisIndex 來指定 dataZoom 控制哪個或哪些數軸。
例項
var data1 = []; var data2 = []; var data3 = []; var random = function (max) { return (Math.random() * max).toFixed(3); }; for (var i = 0; i < 500; i++) { data1.push([random(15), random(10), random(1)]); data2.push([random(10), random(10), random(1)]); data3.push([random(15), random(10), random(1)]); } option = { animation: false, legend: { data: ['scatter', 'scatter2', 'scatter3'] }, tooltip: { }, xAxis: { type: 'value', min: 'dataMin', max: 'dataMax', splitLine: { show: true } }, yAxis: { type: 'value', min: 'dataMin', max: 'dataMax', splitLine: { show: true } }, dataZoom: [ { type: 'slider', show: true, xAxisIndex: [0], start: 1, end: 35 }, { type: 'slider', show: true, yAxisIndex: [0], left: '93%', start: 29, end: 36 }, { type: 'inside', xAxisIndex: [0], start: 1, end: 35 }, { type: 'inside', yAxisIndex: [0], start: 29, end: 36 } ], series: [ { name: 'scatter', type: 'scatter', itemStyle: { normal: { opacity: 0.8 } }, symbolSize: function (val) { return val[2] * 40; }, data: data1 }, { name: 'scatter2', type: 'scatter', itemStyle: { normal: { opacity: 0.8 } }, symbolSize: function (val) { return val[2] * 40; }, data: data2 }, { name: 'scatter3', type: 'scatter', itemStyle: { normal: { opacity: 0.8, } }, symbolSize: function (val) { return val[2] * 40; }, data: data3 } ] }
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2789548/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 元件化開發跨module互動方式—ModuleBus互動元件化
- IOS小元件(7):小元件點選互動iOS元件
- React Native 互動元件之 SwitchReact Native元件
- 響應式 Echarts Flutter 元件EchartsFlutter元件
- Laravel-admin 的控制元件互動Laravel控制元件
- 手拉手,用Vue開發動態重新整理Echarts元件VueEcharts元件
- 【vue3 + ts + echarts】封裝一個通用echarts元件-2.0版VueEcharts封裝元件
- React飛行日記(九) - 複合元件互動React元件
- iOS 自定義的卡片流互動控制元件iOS控制元件
- Ajax概述,封裝以及聯合模板引擎進行資料互動封裝
- App自動化測試:高階控制元件互動技巧APP控制元件
- (覆盤)Vue中如何使用v-echarts元件VueEcharts元件
- 大屏報表元件間的聯動互動效果實現方法元件
- 互動視訊不能為了互動而互動
- Vue前後端互動、生命週期、元件化開發Vue後端元件化
- 從原始碼分析DEARGUI之互動新增和刪除元件原始碼GUI元件
- 基於 HTML5 Canvas 的可互動旋鈕元件HTMLCanvas元件
- Flutter手勢互動+自定義繪板元件v0.01Flutter元件
- echarts 主題動態切換Echarts
- LVGL庫入門教程02-基本控制元件與互動控制元件
- 互動媒體日常——互動漫畫之對話方塊互動
- echarts遷移圖動態載入Echarts
- Vue元件之間的資料傳遞(通訊、互動)詳解Vue元件
- Python|Python互動之mongoDB互動詳解PythonMongoDB
- C++ Qt開發:Charts繪圖元件概述C++QT繪圖元件
- SpringMVC 框架系列之元件概述與配置詳解SpringMVC框架元件
- echarts之靜態與動態地圖Echarts地圖
- echarts動態賦值結合dataZoom滑動資料Echarts賦值OOM
- 行動通訊概述(一)
- Hyperledger Fabric 中智慧合約的基本元件概述元件
- 鴻蒙HarmonyOS實戰-Stage模型(概述和元件配置)鴻蒙模型元件
- 120行程式碼實現一個互動完整的拖拽上傳元件行程元件
- 簡單互動
- 互動式 .Net
- jQueryUI之互動jQueryUI
- SOLIDWORKS Composer互動Solid
- 資料互動
- RN互動iOSiOS