Echars 六大組件詳解 :
title tooltip toolbox legend dataZoom visualMap
一、title標題詳解
1 myTitleStyle = { 2 color: "#333", //文字顏色 3 fontStyle:"normal", //italic斜體 oblique傾斜 4 fontWeight:"normal", //文字粗細bold bolder lighter 100 | 200 | 300 | 400... 5 fontFamily:"sans-serif", //字體系列 6 fontSize:18, //字體大小 7 }; 8 title={ 9 show:true, //是否顯示 10 text:"大標題", //大標題 11 subtext:"小標題", //小標題 12 sublink:"http://www.baidu.com", //小標題鏈接 13 target:"blank", //'self' 當前窗口打開,'blank' 新窗口打開 14 subtarget:"blank", //小標題打開鏈接的窗口 15 textAlign:"center", //文本水平對齊 16 textBaseline:"top", //文本垂直對齊 17 textStyle:myTitleStyle, //標題樣式 18 subtextStyle:myTitleStyle, //小標題樣式 19 padding:30, //標題內邊距 5 [5, 10] [5,10,5,10] 20 itemGap:10, //大小標題間距 21 zlevel:0, //所屬圖形的Canvas分層,zlevel 大的 Canvas 會放在 zlevel 小的 Canvas 的上面 22 z:1, //所屬組件的z分層,z值小的圖形會被z值大的圖形覆蓋 23 left:"center", //組件離容器左側的距離,'left', 'center', 'right','20%' 24 top:"top", //組件離容器上側的距離,'top', 'middle', 'bottom','20%' 25 right:"auto", //組件離容器右側的距離,'20%' 26 bottom:"auto", //組件離容器下側的距離,'20%' 27 backgroundColor:"transparent", //標題背景色 28 borderColor:"#333", //邊框顏色 29 borderWidth:0, //邊框線寬 30 shadowColor:'#ccc', //陰影顏色 31 shadowOffsetX:0, //陰影水平方向上的偏移距離 32 shadowOffsetY:0, //陰影垂直方向上的偏移距離 33 shadowBlur:10, //陰影的模糊大小 34 };
二、tooltip提示框詳解
1 tooltip = { //提示框組件 2 trigger: 'item', //觸發類型,'item'數據項圖形觸發,主要在散點圖,餅圖等無類目軸的圖表中使用。 'axis'坐標軸觸發,主要在柱狀圖,折線圖等會使用類目軸的圖表中使用。 3 triggerOn: "mousemove", //提示框觸發的條件,'mousemove'鼠標移動時觸發。'click'鼠標點擊時觸發。'mousemove|click'同時鼠標移動和點擊時觸發。'none'不在 'mousemove' 或 'click' 時觸發 4 showContent: true, //是否顯示提示框浮層 5 alwaysShowContent: true, //是否永遠顯示提示框內容 6 showDelay: 0, //浮層顯示的延遲,單位為 ms 7 hideDelay: 100, //浮層隱藏的延遲,單位為 ms 8 enterable: false, //鼠標是否可進入提示框浮層中 9 confine: false, //是否將 tooltip 框限制在圖表的區域內 10 transitionDuration: 0.4, //提示框浮層的移動動畫過渡時間,單位是 s,設置為 0 的時候會緊跟着鼠標移動 11 position: ['50%', '50%'], //提示框浮層的位置,默認不設置時位置會跟隨鼠標的位置,[10, 10],回掉函數,inside鼠標所在圖形的內部中心位置,top、left、bottom、right鼠標所在圖形上側,左側,下側,右側, 12 formatter: "{b0}: {c0}<br />{b1}: {c1}", //提示框浮層內容格式器,支持字符串模板和回調函數兩種形式,模板變量有 {a}, {b},{c},{d},{e},分別表示系列名,數據名,數據值等 13 backgroundColor: "transparent", //標題背景色 14 borderColor: "#ccc", //邊框顏色 15 borderWidth: 0, //邊框線寬 16 padding: 5, //圖例內邊距,單位px 5 [5, 10] [5,10,5,10] 17 textStyle: mytextStyle, //文本樣式 18 };
三、toolbox工具框詳解
1 toolbox = { 2 show: true, //是否顯示工具欄組件 3 orient: "horizontal", //工具欄 icon 的布局朝向'horizontal' 'vertical' 4 itemSize: 15, //工具欄 icon 的大小 5 itemGap: 10, //工具欄 icon 每項之間的間隔 6 showTitle: true, //是否在鼠標 hover 的時候顯示每個工具 icon 的標題 7 feature: { 8 mark: { // '輔助線開關' 9 show: true 10 }, 11 dataView: { //數據視圖工具,可以展現當前圖表所用的數據,編輯后可以動態更新 12 show: true, //是否顯示該工具。 13 title: "數據視圖", 14 readOnly: false, //是否不可編輯(只讀) 15 lang: ['數據視圖', '關閉', '刷新'], //數據視圖上有三個話術,默認是['數據視圖', '關閉', '刷新'] 16 backgroundColor: "#fff", //數據視圖浮層背景色。 17 textareaColor: "#fff", //數據視圖浮層文本輸入區背景色 18 textareaBorderColor: "#333", //數據視圖浮層文本輸入區邊框顏色 19 textColor: "#000", //文本顏色。 20 buttonColor: "#c23531", //按鈕顏色。 21 buttonTextColor: "#fff", //按鈕文本顏色。 22 }, 23 magicType: { //動態類型切換 24 show: true, 25 title: "切換", //各個類型的標題文本,可以分別配置。 26 type: ['line', 'bar'], //啟用的動態類型,包括'line'(切換為折線圖), 'bar'(切換為柱狀圖), 'stack'(切換為堆疊模式), 'tiled'(切換為平鋪模式) 27 }, 28 restore: { //配置項還原。 29 show: true, //是否顯示該工具。 30 title: "還原", 31 }, 32 saveAsImage: { //保存為圖片。 33 show: true, //是否顯示該工具。 34 type: "png", //保存的圖片格式。支持 'png' 和 'jpeg'。 35 name: "pic1", //保存的文件名稱,默認使用 title.text 作為名稱 36 backgroundColor: "#ffffff", //保存的圖片背景色,默認使用 backgroundColor,如果backgroundColor不存在的話會取白色 37 title: "保存為圖片", 38 pixelRatio: 1 //保存圖片的分辨率比例,默認跟容器相同大小,如果需要保存更高分辨率的,可以設置為大於 1 的值,例如 2 39 }, 40 dataZoom: { //數據區域縮放。目前只支持直角坐標系的縮放 41 show: true, //是否顯示該工具。 42 title: "縮放", //縮放和還原的標題文本 43 xAxisIndex: 0, //指定哪些 xAxis 被控制。如果缺省則控制所有的x軸。如果設置為 false 則不控制任何x軸。如果設置成 3 則控制 axisIndex 為 3 的x軸。如果設置為 [0, 3] 則控制 axisIndex 為 0 和 3 的x軸 44 yAxisIndex: false, //指定哪些 yAxis 被控制。如果缺省則控制所有的y軸。如果設置為 false 則不控制任何y軸。如果設置成 3 則控制 axisIndex 為 3 的y軸。如果設置為 [0, 3] 則控制 axisIndex 為 0 和 3 的y軸 45 }, 46 }, 47 zlevel: 0, //所屬圖形的Canvas分層,zlevel 大的 Canvas 會放在 zlevel 小的 Canvas 的上面 48 z: 2, //所屬組件的z分層,z值小的圖形會被z值大的圖形覆蓋 49 left: "center", //組件離容器左側的距離,'left', 'center', 'right','20%' 50 top: "top", //組件離容器上側的距離,'top', 'middle', 'bottom','20%' 51 right: "auto", //組件離容器右側的距離,'20%' 52 bottom: "auto", //組件離容器下側的距離,'20%' 53 width: "auto", //圖例寬度 54 height: "auto", //圖例高度 55 };
四、legend圖例詳解
1 legend = { 2 show: true, //是否顯示 3 zlevel: 0, //所屬圖形的Canvas分層,zlevel 大的 Canvas 會放在 zlevel 小的 Canvas 的上面 4 z: 2, //所屬組件的z分層,z值小的圖形會被z值大的圖形覆蓋 5 left: "center", //組件離容器左側的距離,'left', 'center', 'right','20%' 6 top: "top", //組件離容器上側的距離,'top', 'middle', 'bottom','20%' 7 right: "auto", //組件離容器右側的距離,'20%' 8 bottom: "auto", //組件離容器下側的距離,'20%' 9 width: "auto", //圖例寬度 10 height: "auto", //圖例高度 11 orient: "horizontal", //圖例排列方向 12 align: "auto", //圖例標記和文本的對齊,left,right 13 padding: 5, //圖例內邊距,單位px 5 [5, 10] [5,10,5,10] 14 itemGap: 10, //圖例每項之間的間隔 15 itemWidth: 25, //圖例標記的圖形寬度 16 itemHeight: 14, //圖例標記的圖形高度 17 formatter: function (name) { //用來格式化圖例文本,支持字符串模板和回調函數兩種形式。模板變量為圖例名稱 {name} 18 return 'Legend ' + name; 19 }, 20 selectedMode: "single", //圖例選擇的模式,true開啟,false關閉,single單選,multiple多選 21 inactiveColor: "#ccc", //圖例關閉時的顏色 22 textStyle: mytextStyle, //文本樣式 23 data: ['類別1', '類別2', '類別3'], //series中根據名稱區分 24 backgroundColor: "transparent", //標題背景色 25 borderColor: "#ccc", //邊框顏色 26 borderWidth: 0, //邊框線寬 27 shadowColor: "red", //陰影顏色 28 shadowOffsetX: 0, //陰影水平方向上的偏移距離 29 shadowOffsetY: 0, //陰影垂直方向上的偏移距離 30 shadowBlur: 10, //陰影的模糊大小 31 };
五、dataZoom詳解
1 dataZoom = [ //區域縮放 2 { 3 id: 'dataZoomX', 4 show: true, //是否顯示 組件。如果設置為 false,不會顯示,但是數據過濾的功能還存在。 5 backgroundColor: "rgba(47,69,84,0)", //組件的背景顏色 6 type: 'slider', //slider表示有滑動塊的,inside表示內置的 7 dataBackground: { //數據陰影的樣式。 8 lineStyle: mylineStyle, //陰影的線條樣式 9 areaStyle: myareaStyle, //陰影的填充樣式 10 }, 11 fillerColor: "rgba(167,183,204,0.4)", //選中范圍的填充顏色。 12 borderColor: "#ddd", //邊框顏色。 13 filterMode: 'filter', //'filter':當前數據窗口外的數據,被 過濾掉。即 會 影響其他軸的數據范圍。每個數據項,只要有一個維度在數據窗口外,整個數據項就會被過濾掉。 14 xAxisIndex: 0, //設置 dataZoom-inside 組件控制的 x軸,可以用數組表示多個軸 15 yAxisIndex: [0, 2], //設置 dataZoom-inside 組件控制的 y軸,可以用數組表示多個軸 16 radiusAxisIndex: 3, //設置 dataZoom-inside 組件控制的 radius 軸,可以用數組表示多個軸 17 angleAxisIndex: [0, 2], //設置 dataZoom-inside 組件控制的 angle 軸,可以用數組表示多個軸 18 start: 30, //數據窗口范圍的起始百分比,表示30% 19 end: 70, //數據窗口范圍的結束百分比,表示70% 20 startValue: 10, //數據窗口范圍的起始數值 21 endValue: 100, //數據窗口范圍的結束數值。 22 orient: "horizontal", //布局方式是橫還是豎。不僅是布局方式,對於直角坐標系而言,也決定了,缺省情況控制橫向數軸還是縱向數軸。'horizontal':水平。'vertical':豎直。 23 zoomLock: false, //是否鎖定選擇區域(或叫做數據窗口)的大小。如果設置為 true 則鎖定選擇區域的大小,也就是說,只能平移,不能縮放。 24 throttle: 100, //設置觸發視圖刷新的頻率。單位為毫秒(ms)。 25 zoomOnMouseWheel: true, //如何觸發縮放。可選值為:true:表示不按任何功能鍵,鼠標滾輪能觸發縮放。false:表示鼠標滾輪不能觸發縮放。'shift':表示按住 shift 和鼠標滾輪能觸發縮放。'ctrl':表示按住 ctrl 和鼠標滾輪能觸發縮放。'alt':表示按住 alt 和鼠標滾輪能觸發縮放。 26 moveOnMouseMove: true, //如何觸發數據窗口平移。true:表示不按任何功能鍵,鼠標移動能觸發數據窗口平移。false:表示鼠標滾輪不能觸發縮放。'shift':表示按住 shift 和鼠標移動能觸發數據窗口平移。'ctrl':表示按住 ctrl 和鼠標移動能觸發數據窗口平移。'alt':表示按住 alt 和鼠標移動能觸發數據窗口平移。 27 left: "center", //組件離容器左側的距離,'left', 'center', 'right','20%' 28 top: "top", //組件離容器上側的距離,'top', 'middle', 'bottom','20%' 29 right: "auto", //組件離容器右側的距離,'20%' 30 bottom: "auto", //組件離容器下側的距離,'20%' 31 32 }, 33 { 34 id: 'dataZoomY', 35 type: 'inside', 36 filterMode: 'empty', 37 disabled: false, //是否停止組件的功能。 38 xAxisIndex: 0, //設置 dataZoom-inside 組件控制的 x軸,可以用數組表示多個軸 39 yAxisIndex: [0, 2], //設置 dataZoom-inside 組件控制的 y軸,可以用數組表示多個軸 40 radiusAxisIndex: 3, //設置 dataZoom-inside 組件控制的 radius 軸,可以用數組表示多個軸 41 angleAxisIndex: [0, 2], //設置 dataZoom-inside 組件控制的 angle 軸,可以用數組表示多個軸 42 start: 30, //數據窗口范圍的起始百分比,表示30% 43 end: 70, //數據窗口范圍的結束百分比,表示70% 44 startValue: 10, //數據窗口范圍的起始數值 45 endValue: 100, //數據窗口范圍的結束數值。 46 orient: "horizontal", //布局方式是橫還是豎。不僅是布局方式,對於直角坐標系而言,也決定了,缺省情況控制橫向數軸還是縱向數軸。'horizontal':水平。'vertical':豎直。 47 zoomLock: false, //是否鎖定選擇區域(或叫做數據窗口)的大小。如果設置為 true 則鎖定選擇區域的大小,也就是說,只能平移,不能縮放。 48 throttle: 100, //設置觸發視圖刷新的頻率。單位為毫秒(ms)。 49 zoomOnMouseWheel: true, //如何觸發縮放。可選值為:true:表示不按任何功能鍵,鼠標滾輪能觸發縮放。false:表示鼠標滾輪不能觸發縮放。'shift':表示按住 shift 和鼠標滾輪能觸發縮放。'ctrl':表示按住 ctrl 和鼠標滾輪能觸發縮放。'alt':表示按住 alt 和鼠標滾輪能觸發縮放。 50 moveOnMouseMove: true, //如何觸發數據窗口平移。true:表示不按任何功能鍵,鼠標移動能觸發數據窗口平移。false:表示鼠標滾輪不能觸發縮放。'shift':表示按住 shift 和鼠標移動能觸發數據窗口平移。'ctrl':表示按住 ctrl 和鼠標移動能觸發數據窗口平移。'alt':表示按住 alt 和鼠標移動能觸發數據窗口平移。 51 } 52 ];
六、visualMap全解
1 visualMap = [ //視覺映射組件,用於進行『視覺編碼』,也就是將數據映射到視覺元素。視覺元素可以是:symbol: 圖元的圖形類別。symbolSize: 圖元的大小。color: 圖元的顏色。 2 // colorAlpha: 圖元的顏色的透明度。opacity: 圖元以及其附屬物(如文字標簽)的透明度。colorLightness: 顏色的明暗度。colorSaturation: 顏色的飽和度。colorHue: 顏色的色調。 3 { 4 show: true, //是否顯示 visualMap-continuous 組件。如果設置為 false,不會顯示,但是數據映射的功能還存在 5 type: 'continuous', // 定義為連續型 viusalMap 6 min: 10, //指定 visualMapContinuous 組件的允許的最小值 7 max: 100, //指定 visualMapContinuous 組件的允許的最大值 8 range: [15, 40], //指定手柄對應數值的位置。range 應在 min max 范圍內 9 calculable: true, //是否顯示拖拽用的手柄(手柄能拖拽調整選中范圍) 10 realtime: true, //拖拽時,是否實時更新 11 inverse: false, //是否反轉 visualMap 組件 12 precision: 0, //數據展示的小數精度,默認為0,無小數點 13 itemWidth: 20, //圖形的寬度,即長條的寬度。 14 itemHeight: 140, //圖形的高度,即長條的高度。 15 align: "auto", //指定組件中手柄和文字的擺放位置.可選值為:'auto' 自動決定。'left' 手柄和label在右。'right' 手柄和label在左。'top' 手柄和label在下。'bottom' 手柄和label在上。 16 text: ['High', 'Low'], //兩端的文本 17 textGap: 10, //兩端文字主體之間的距離,單位為px 18 dimension: 2, //指定用數據的『哪個維度』,映射到視覺元素上。『數據』即 series.data。 可以把 series.data 理解成一個二維數組,其中每個列是一個維度,默認取 data 中最后一個維度 19 seriesIndex: 1, //指定取哪個系列的數據,即哪個系列的 series.data,默認取所有系列 20 hoverLink: true, //鼠標懸浮到 visualMap 組件上時,鼠標位置對應的數值 在 圖表中對應的圖形元素,會高亮 21 inRange: { //定義 在選中范圍中 的視覺元素 22 color: ['#121122', 'rgba(3,4,5,0.4)', 'red'], 23 symbolSize: [30, 100] 24 }, 25 outOfRange: { //定義 在選中范圍外 的視覺元素。 26 color: ['#121122', 'rgba(3,4,5,0.4)', 'red'], 27 symbolSize: [30, 100] 28 }, 29 zlevel: 0, //所屬圖形的Canvas分層,zlevel 大的 Canvas 會放在 zlevel 小的 Canvas 的上面 30 z: 2, //所屬組件的z分層,z值小的圖形會被z值大的圖形覆蓋 31 left: "center", //組件離容器左側的距離,'left', 'center', 'right','20%' 32 top: "top", //組件離容器上側的距離,'top', 'middle', 'bottom','20%' 33 right: "auto", //組件離容器右側的距離,'20%' 34 bottom: "auto", //組件離容器下側的距離,'20%' 35 orient: "vertical", //圖例排列方向 36 padding: 5, //圖例內邊距,單位px 5 [5, 10] [5,10,5,10] 37 backgroundColor: "transparent", //標題背景色 38 borderColor: "#ccc", //邊框顏色 39 borderWidth: 0, //邊框線寬 40 textStyle: mytextStyle, //文本樣式 41 formatter: function (value) { //標簽的格式化工具。 42 return 'aaaa' + value; // 范圍標簽顯示內容。 43 } 44 }, 45 { 46 show: true, //是否顯示 visualMap-continuous 組件。如果設置為 false,不會顯示,但是數據映射的功能還存在 47 type: 'piecewise', // 定義為分段型 visualMap 48 splitNumber: 5, //對於連續型數據,自動平均切分成幾段。默認為5段 49 pieces: [ //自定義『分段式視覺映射組件(visualMapPiecewise)』的每一段的范圍,以及每一段的文字,以及每一段的特別的樣式 50 { min: 1500 }, // 不指定 max,表示 max 為無限大(Infinity)。 51 { min: 900, max: 1500 }, 52 { min: 310, max: 1000 }, 53 { min: 200, max: 300 }, 54 { min: 10, max: 200, label: '10 到 200(自定義label)' }, 55 { value: 123, label: '123(自定義特殊顏色)', color: 'grey' }, // 表示 value 等於 123 的情況。 56 { max: 5 } // 不指定 min,表示 min 為無限大(-Infinity)。 57 ], 58 categories: ['嚴重', '重度', '中度', '輕度', '良', '優'], //用於表示離散型數據(或可以稱為類別型數據、枚舉型數據)的全集 59 min: 10, //指定 visualMapContinuous 組件的允許的最小值 60 max: 100, //指定 visualMapContinuous 組件的允許的最大值 61 minOpen: true, //界面上會額外多出一個『< min』的選塊 62 maxOpen: true, //界面上會額外多出一個『> max』的選塊。 63 selectedMode: "multiple", //選擇模式,可以是:'multiple'(多選)。'single'(單選)。 64 inverse: false, //是否反轉 visualMap 組件 65 precision: 0, //數據展示的小數精度,默認為0,無小數點 66 itemWidth: 20, //圖形的寬度,即長條的寬度。 67 itemHeight: 140, //圖形的高度,即長條的高度。 68 align: "auto", //指定組件中手柄和文字的擺放位置.可選值為:'auto' 自動決定。'left' 手柄和label在右。'right' 手柄和label在左。'top' 手柄和label在下。'bottom' 手柄和label在上。 69 text: ['High', 'Low'], //兩端的文本 70 textGap: 10, //兩端文字主體之間的距離,單位為px 71 showLabel: true, //是否顯示每項的文本標簽 72 itemGap: 10, //每兩個圖元之間的間隔距離,單位為px 73 itemSymbol: "roundRect", //默認的圖形。可選值為: 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow' 74 dimension: 2, //指定用數據的『哪個維度』,映射到視覺元素上。『數據』即 series.data。 可以把 series.data 理解成一個二維數組,其中每個列是一個維度,默認取 data 中最后一個維度 75 seriesIndex: 1, //指定取哪個系列的數據,即哪個系列的 series.data,默認取所有系列 76 hoverLink: true, //鼠標懸浮到 visualMap 組件上時,鼠標位置對應的數值 在 圖表中對應的圖形元素,會高亮 77 inRange: { //定義 在選中范圍中 的視覺元素 78 color: ['#121122', 'rgba(3,4,5,0.4)', 'red'], 79 symbolSize: [30, 100] 80 }, 81 outOfRange: { //定義 在選中范圍外 的視覺元素。 82 color: ['#121122', 'rgba(3,4,5,0.4)', 'red'], 83 symbolSize: [30, 100] 84 }, 85 zlevel: 0, //所屬圖形的Canvas分層,zlevel 大的 Canvas 會放在 zlevel 小的 Canvas 的上面 86 z: 2, //所屬組件的z分層,z值小的圖形會被z值大的圖形覆蓋 87 left: "center", //組件離容器左側的距離,'left', 'center', 'right','20%' 88 top: "top", //組件離容器上側的距離,'top', 'middle', 'bottom','20%' 89 right: "auto", //組件離容器右側的距離,'20%' 90 bottom: "auto", //組件離容器下側的距離,'20%' 91 orient: "vertical", //圖例排列方向 92 padding: 5, //圖例內邊距,單位px 5 [5, 10] [5,10,5,10] 93 backgroundColor: "transparent", //標題背景色 94 borderColor: "#ccc", //邊框顏色 95 borderWidth: 0, //邊框線寬 96 textStyle: mytextStyle, //文本樣式 97 formatter: function (value) { //標簽的格式化工具。 98 return 'aaaa' + value; //范圍標簽顯示內容。 99 } 100 } 101 ];
原創:http://blog.csdn.net/luanpeng825485697/article/details/76738273