dongyou9818
dongyou9818
2016-09-28 04:37

如何使用数据库数据在angularjs中创建图表?

已采纳

I am trying to creating a Bar chart.I'm using this bar chart as a reference Here. this is my HTML part..

<body ng-app="app">
   <div ng-controller="BarCtrl">
     <canvas id="bar" class="chart chart-bar" width=100% height=25
     chart-data="data" chart-labels="labels" chart-series="series"></canvas>
   </div>

And this is my angularjs part...

<script>
angular.module("app",["chart.js"]).controller("BarCtrl", function ($http,$scope) {
  $http.get("../widget/stock_details.php").success(function(data){
            $scope.data=data;
            //$scope.tqnt=data.tqnt;
            //$scope.old_quantity=data.old_quantity;

  $scope.labels = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul','Aug','Sep'];
  $scope.series = ['Series A', 'Series B'];


  $scope.data = [65, 59, 80, 81, 56, 55, 40],
                [28, 48, 40, 19, 86, 27, 90];
});
  }); 

If I want my database data in $scope.data and $scope.labels then what should I do?I'd try this $scope.data = [ [data[0],data[2],data[4],data[6]] , [data[1],data[3],data[5]] ]; but this is not a good way so what it could be?

php file is..

<?php
include('connection.php');
$er=new Connect();
$er->__construct();

    $data=array();

    $selct=mysql_query("SELECT * FROM  stock");

        while($row=mysql_fetch_array($selct))
        {
             $data[]=$row['total_qnt'];
            $data[]=$row['old_quantity'];
          $data[]=$row['stock_date];
        }

echo json_encode($data);
?>
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • doulu1914 doulu1914 5年前

    What you need to do is:-

    change while part like below:-

    $data[0][]=$row['total_qnt']; $data[1][]=$row['old_quantity'];

    then parse this json encoded data to array into your javascript code and pass to $scope.data.

    点赞 9 评论 复制链接分享

相关推荐