如何从数据库中制作动态图表标签?

时间:2017-06-19 02:49:57

标签: php laravel laravel-5 charts

我想创建一个动态图表栏,其中Label是每月的每一天,列值将从数据库中动态传递。 我用ConsoleTVs/Charts来制作它。 我有产品表,ID,名称,金额 我想根据产品找到我每天的总数量。因为同一产品可以在一天内卖出多次。 以下代码的问题是我每天都没有销售产品而不是总量。我如何在图表栏中表示它

$data = DB::table('products')
                ->select('products.created_at',DB::raw('sum(products.amount) as sum' ))
                ->groupBy('products.id')                
                ->get();

        //dd($data);      
        $chart = Charts::create('area', 'highcharts')
            ->elementLabel("Total")
            ->title('Monthly Collection')
            ->dimensions(1000, 500)
            ->values($data->pluck('sum'))
            ->responsive(false)
            ->groupByDay();

1 个答案:

答案 0 :(得分:0)

我没有正确地回答你的问题,但我已经尝试过了,让我希望得到帮助

$data = DB::table('sales')
        ->join('products','sales.product_id','=','products.id')
        ->select('name', DB::raw('SUM(sales.price * sales.quantity) as total_sales'))
        ->groupBy('product_id')
        ->get();
    $chart = Charts::create('pie', 'highcharts')
        ->elementLabel("Total Sales")
        ->title('Sales Collection')
        ->dimensions(1000, 500)
        ->labels($data->pluck('name'))
        ->values($data->pluck('total_sales'))
        ->responsive(true);
return view('layouts.dashboard',['chart'=>$chart]);

我有一个产品表& sales_id作为销售表中的外键的销售表。