php - 如何使用数据库实时创建 Laravel 图表包

标签 php mysql database laravel charts

我想通过 laravel 创建实时图表

我的数据库中有 5 个表

  • 用户

  • 管理> 有 5 个与用户表有关系的管理

我有 3 个用户感觉到的表,并且都有 user_id:

  • 计划
  • 项目
  • 事件

所以我想要一个条形图,其中包含每个管理的计数(计划、项目、事件)

我在 ChartController 中的图表代码

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
use App\Management;
use Charts;
use App\Plans;
use App\Projects;
use App\Activies;
class ChartController extends Controller
{
    public function chart(){
        $chart = Charts::multi('bar', 'material')
        ->title("My Cool Chart")
        ->template("material")
        ->dimensions(0, 400) 
        ->dataset('projects', [ , , , , ])
        ->dataset('plans', [ , , , , ])
        ->dataset('activities', [ , , , , ])        
        ->labels(['management1', 'management1',
         'management3', 'management4', 'management5']);
        return view('chart',compact(''));
    }
}

我想要的图表示例:

enter image description here

我该怎么做,谢谢你们。

最佳答案

有两种方法:

1) 以特定的时间间隔重复请求刷新页面或javascript数据源。 这是坏方法。

2) 使用套接字。 这是个好方法。

默认情况下,laravel 已经提供了对实时操作的广播支持。首先,请阅读broadcasting document Laravel 框架。之后,您应该了解如何使用socket.io来创建tcp套接字和实时数据监视。在文档中你可以找到清晰的 Laravel 广播使用教程,更多内容你必须学习 socket.io 库。

关于php - 如何使用数据库实时创建 Laravel 图表包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57823247/

相关文章:

MySQL: `REFERENCES` 与 `FOREIGN KEY` + `REFERENCES`

mysql - 无法弄清楚如何在 MySQL 中生成子采样 View

带范围过滤器的 PHP 搜索查询

asp.net - 如何自动化功能/集成测试和数据库回滚

mysql - 错误数据库连接与用户和密码信息

php - UTF-8 和 HTML 实体

php - 试图使页眉背景图像出现在某些页面上

php - Paypal 'Buy Now' 按钮不允许我动态设置价格

.net - 您将如何创建数据继承数据库?

php - 设置 DATETIME 自动进入数据库表