angularJs中圖表功能(有集成框架)-angular-flot


1.柱狀圖和折線圖的數據格式:

 1 $scope.Chart.data = [
 2   {
 3       label: "離線",
 4       data: [[0, 2]]
 5    }, {
 6      label: "在線",
 7      data: [[1, 1]]
 8   }, {
 9      label: "空閑",
10       data: [[2, 1]]
11    }
12 ];

2.餅圖和環型圖的數據格式:

1  $scope.ChartData = [
2     {label: '測試A', data: 3},
3     {label: '測試B', data: 6},
4     {label: '測試C', data: 9}
5  ];

3.儀表盤圖(比較特殊,跟其他四個數據格式等有明顯的差異)的數據格式:

 $scope.gaugeChart.data = {
            maxValue: 3000,
            animationSpeed: 40,
            val: 1375
        };

4.圖表中的配置問題:

  • tooltip:boolean;   用來控制圖表中的小標簽是否顯示;
  • tooltipOpts:{
    content: "%s , amount:%y.0",
    defaultTheme: false
    }  用來控制標簽的顯示格式及內容,%s為data.label的內容;%y.0為data的數量;
  • 配置中的以下這兩個對象是用來控制X軸Y軸的一些屬性;

 1 xaxis: {
 2         show: false
 3 },
 4 yaxes: {
 5         position: "right",
 6         tickDecimals: 0
 7 }
 8 
 9 show:boolean, 是否顯示;
10 
11 ticks: [[1], [2], [3]], 設置X軸Y軸上刻度;如果只是一個數字,則為將X軸Y軸平分多少份;
12 ticks: [[0, "zero"], [1, "在線"], [2, "空閑"], [3, "離線"]]定義了X軸的標注;
13 min: -2,max: 3, 設置最小值、最大值;
14 tickDecimals: 0, 設置小數點有幾位;
  •  以日期作為X軸的參數說明:
1 xaxis: {
2 show: true,
3 mode: "time",
4 timeformat: "%y/%m/%d"
5 },
6 $scope.data=[[(new Date(1990, 0, 1)).getTime(), 15],[new Date('1990-01-31').getTime(),20]]
  • 在餅圖和環型圖上顯示標簽的設置辦法:
 1 series: {
 2          pie: {
 3                show: true,
 4                label: {
 5                        show: true,
 6                        radius: 1 / 3,
 7                        formatter: function (label, series) {
 8                                   return '<div style="font-size:8pt;text-align:center;padding:2px;color:white;">' + label + '<br/>' + series.data[0][1] + '</div>';
 9                        },
10                        background: {
11                            opacity: 0.8
12                        }
13                        }
14                }
15 }
  • 在柱狀圖上顯示數量:
使用flot-barnumbers:詳細介紹網址:https://github.com/joetsoi/flot-barnumbers
1.引入jquery.flot.barnumbers.js
2.在柱狀圖的配置中,寫入:
series: {
    stack: true,
    bars: {
        show: true,
        numbers: {
            show: true,
            yAlign: function (y) {
                return y + $scope.maxYData * 0.03;
            },
            font: {
                color: "#000000"
            }
        }
    }
}
  • 多維度統計圖:
當是動態獲取數據時,會遇到因為是X軸坐標一樣而導致多維度的柱子會疊在一起,不是想要的那種挨着的那種效果:可以給X軸坐標加上計算;
雖然柱子可以挨着,但是兩個柱子之間加上點間距會更好看一點:給barData的每一個對象都添加一個bars:{barWidth:值};

 GitHub英文文檔:https://github.com/develersrl/angular-flot

之前使用的是一個flatify.2.2框架,所以好多文件框架中都已經集成過了,所以用起來比較方便;沒有這樣的集成的話,可能一些定義方法不一樣,之后也會總結出來。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM