【问题标题】:How to create dynamic charts using lavacharts and laravel?如何使用 lavacharts 和 laravel 创建动态图表?
【发布时间】:2016-07-27 10:33:06
【问题描述】:

实际上我想在我的 laravel 网络应用程序中添加动态图表 对数据库中的变化做出反应..我正在使用 lavacharts..我能够创建适用于我通过代码输入的数据的图表。

这是我的控制器

   <?php
   namespace App\Http\Controllers;
   use Illuminate\Http\Request;
   use App\Http\Requests;
   use DB;
   use App\Http\Controllers\Controller;
   use Khill\Lavacharts\Laravel\LavachartsFacade as Lava;

   class ratingscontroller extends Controller{

   public function index(){


      $stocktable = \Lava::DataTable();

      $stocktable->addDateColumn('Day of Month')
           ->addNumberColumn('projected')
           ->addNumberColumn('official');


           for($a = 1; $a < 30; $a++){
            $stocktable->addRow([
                '2015-10-' . $a, rand(800,1000), rand(800,1000)


                ]);


           }

              $chart = \Lava::AreaChart('MyStocks', $stocktable);
                           return view('welcome');

          }}

【问题讨论】:

  • 成功了吗?如果是,请分享答案 pleeeaaasssee。

标签: charts laravel-5


【解决方案1】:

好的,我知道这是一个很老的问题,但如果仍然需要这个,那就去吧......

从我在这里看到的情况来看,您需要数据库中的三样东西; day_of_monthprojected_valueofficial_value

假设您在数据库中有一个表映射到一个 eloquent 模型 Report

您现在可以按如下方式创建您的 DataTable 对象:

$stocktable = \Lava::DataTable();

$stocktable->addDateColumn('Day of Month')
           ->addNumberColumn('projected')
           ->addNumberColumn('official');
//$reports should be validated with number of days in month (ex. Feb has 28 days so you would have empty days and Jan has 31 so info for one day would be missing)
//for simplicities sake i won't do this here...
$reports = Report::whereBetween('day_of_month',[1,30])->get();

for($a = 1; $a < 30; $a++){
    //I'm assuming here you only have one entry in your database per day of the month, if not you need to take this into account
    $day = $reports->where('day_of_month')->first();
    if($day){
        $stocktable->addRow([
            '2015-10-' . $a, 
            $day->projected_value, 
            $day->official_value 
        ]);
    }

\Lava::AreaChart('MyStocks', $stocktable);

}

有了这个,您的图表就充满了数据库中的数据。

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2016-03-22
    • 2022-10-06
    • 2016-08-20
    • 2019-03-13
    • 2016-11-30
    • 1970-01-01
    • 2018-07-15
    • 1970-01-01
    • 2023-04-05
    相关资源
    最近更新 更多