官網:https://www.amcharts.com/demos/
屬性介紹:https://docs.amcharts.com/3/javascriptcharts/AmLegend
安裝
bower install amcharts3
npm install amcharts/amcharts3、
<link rel="stylesheet" href="scripts/lib/amcharts3/amcharts/plugins/export/export.css"/> <!--amchart--> <script src="scripts/lib/amcharts3/amcharts/amcharts.js"></script> <script src="scripts/lib/amcharts3/amcharts/serial.js"></script> //折線圖 柱狀圖 <script src="scripts/lib/amcharts3/amcharts/pie.js"></script> //餅圖 <script src="scripts/lib/amcharts3/amcharts/plugins/export/export.min.js"></script> <script src="scripts/lib/amcharts3/amcharts/themes/light.js"></script> |
基礎用法
<div id="chartdiv" class="chart"></div> AmCharts.makeChart("chartdiv", { "type": "serial", "theme": "light", "colors": [ "#78eeff", "#ff5dfd", "#a970ff", "#1b9cff", "#38cf91", "#eaf135", "#ff8625", "#ff5555" ], "fontSize": 12, "dataProvider": lineRowCallDropRateData, //值 "sequencedAnimation": false, //設置圖表沒有動畫 "startDuration": 0.5, "graphs": [{ "balloonText": "Profit: <b>[[value]]</b>", "title": "Profit", "valueField": "Profit", //柱狀圖 值的來源鍵名 "fillAlphas": 0.9, "lineAlpha": 0.2, "type": "column", //柱狀圖 "labelText": "[[value]]", //柱狀圖上顯示值 "color": "#fff", //柱狀圖上顯示值的顏色 animationPlayed: true //柱狀圖沒有動畫 }], "chartCursor": { "cursorAlpha": 0 }, "categoryField": "category", "valueAxes": [{ "axisThickness": 1, "axisAlpha": 1, "gridAlpha": 0.4, //平行X軸的圖表內線條粗細 "gridColor": "#596F79", "position": "left", "axisColor": "#56707C", //Y軸線顏色 "color": "#90a4aa", //Y軸字體 minimum: 0 }], "categoryAxis": { "gridPosition": "start", "axisAlpha": 1, "fillAlpha": 0.05, "gridAlpha": 0, "axisColor": "#56707C", //X軸線顏色 "color": "#90a4aa", //X軸字體 gridCount: lineRowCallDropRateData.length, autoGridCount: false, labelRotation: 40 //標簽的傾斜角度 }, "export": { "enabled": true }, "legend": { "enabled": true, "color": "#fff", "useGraphSettings": true, "position": "top", "align": "right", "valueWidth": 0, "fontSize": 12, //圖表右上角 線段文字大小 "markerSize": 16 } }) |
動畫
- "sequencedAnimation": false, //設置圖表沒有動畫
- startDuration: 0, //設置餅圖沒有動畫
valueAxes(Y軸)
-
gridAlpha: 0 //網格透明度
-
"axisColor": "#56707C", //Y軸線顏色
- "color": "#90a4aa", //Y軸字體
-
"gridAlpha": 0.4, //平行X軸的圖表內線條粗細
categoryAxis(X軸)
-
fillAlpha:0.05 //折線圖 圖形后邊的 背景,默認是透明顏色,不會出現看似柱狀圖的背景
-
gridCount:10 //標簽個數--可自定義為值數組的長度
-
autoGridCount: false, //是否允許自動設置X軸標簽
-
labelRotation: 40 //標簽的傾斜角度
-
設置X軸的標簽樣式:
labelFunction: function (value, valueText, valueAxis) { if (value) { return $filter('date')(new Date(value), 'MMM yyyy'); } }
graphs(圖形):[{}]
{ "balloonText": oneTechnology.DisplayName + ": <b>[[value]]</b>", "bullet": graphType, //折線圖中折點顯示圖標 "bulletSize": 7, "title": oneTechnology.DisplayName, "valueField": oneTechnology.DisplayName, "fillAlphas": 0, "lineThickness": 3, //折線的粗細程度 "animationPlayed": true, hidden: true, //折線是否可見 visibleInLegend: false //圖例是否可見 } |
- "bullet": "none" "round" "square",
- "bulletSize": 5 //折線圖是否有折點,顯示多大
- "animationPlayed": true //出現柱狀圖/折線圖時沒有動畫
- "type": "column", //柱狀圖"
- labelText": "[[value]]", //柱狀圖上顯示值
- "color": "#fff", //柱狀圖上顯示值的顏色
- hidden: true, //折線是否可見
- visibleInLegend: false //圖例是否可見
餅圖標簽顯示
"labelsEnabled": false //餅圖上不顯示標簽:
設置餅圖顯示標簽樣式:
"labelFunction": function (value, valueText, valueAxis) {
return parseFloat(value.percents).toFixed(1) + '%'
}
圖表圖例
"legend": { |
當數據需定時刷新時,只是刷新數據而不是刷新圖表
首先簡單創建一個圖表: var loadComplainChart = AmCharts.makeChart("chartcomplaindiv", { "theme": "dark", "type": "serial", "colors": [ "#00FCFC" ], "dataProvider": dailyUserComplain, } 當數據在刷新變化時,只需要改變data就可以了: loadComplainChart.dataProvider = dailyUserComplain; loadComplainChart.validateData(); 當設置只刷新數據時,會發現之前設置的X軸標簽樣式會失效,這時我們需要重新定義X軸標簽的個數以及是否需要自動顯示X軸標簽: loadComplainChart.categoryAxis.autoGridCount = false; loadComplainChart.categoryAxis.gridCount = dailyUserComplain.length; |