0

所以我有一个名为 user 的模型,其中所有用户数据都在那里。每当有新用户注册时,是否可以将图形(?)作为跟踪?它可以基于月份或年份,因此我更容易跟踪数据记录。任何人都可以给我任何提示或指导吗?

4

1 回答 1

0

您需要正确排列数据,只需按照以下代码排列数据即可。

// we will show last 7 (6 day + 1 current day) day's stats
$sixDayAgo = \Carbon\Carbon::now()->subDay(6);
$users = RainLab\User\Models\User::whereDate('created_at', '>=', 
                                      $sixDayAgo->toDateString())->get();

$period = \Carbon\CarbonPeriod::create($sixDayAgo, \Carbon\Carbon::now());

$chartData = [];
foreach ($period as $date) {
    $val = ['label' => $date->format('Y-m-d'), 'value' => 0];
    foreach ($users as $user) {
      if($date->format('Y-m-d') == $user->created_at->format('Y-m-d')) {
        $val['value']++;
      }
    }
    $chartData[] = $val;
}
// dd($chartData);

一旦你得到你的$chartData那么你就可以显示图表

按照https://tutorialmeta.com/october-cms/how-to-use-charts-in-octobercms本教程显示$chartData为图表。

结果

在此处输入图像描述

如有任何疑问,请发表评论。

于 2020-07-03T08:01:42.957 回答