mlantz/laravelcharts

此包已废弃且不再维护。未建议替代包。

ChartJs for Laravel 是从 fx3costa/laravelchartjs 分支出来的

1.2.5 2016-02-15 18:20 UTC

This package is not auto-updated.

Last update: 2020-01-08 21:15:05 UTC


README

这是一个简单的包,允许使用简单的快速报告和图表。通过 Nick Downie 的 Chart.js JavaScript 库。

配置

composer require mlantz/laravelcharts

并将服务提供者添加到你的文件 config/app.php 中

Mlantz\Laravelcharts\Providers\ChartsServiceProvider::class

最后,发布此包以使用一个配置文件,允许根据图表类型和数据集动态选择图形颜色。

php artisan vendor:publish

配置文件

<?php
return [
    'colours' => [
        'bar' => [
            'rgba(220,220,220,0.5)',
            'rgba(151,187,205,0.8)',
            'rgba(24, 164, 103, 0.7)',
        ],
        'line' => [
            'rgba(220,220,220,0.5)',
            'rgba(151,187,205,0.8)',
            'rgba(24, 164, 103, 0.7)',
        ],
        'pie' => [
            [
                'colour' => "#F7464A",
                'highlight' => "#FF5A5E"
            ],
        ]
    ],
];

在此,我们有根据图表类型和您将要使用的数据集数量进行颜色设置。

ChartJS 通过 CDN 添加到您的视图中 - 您可以在配置中禁用此功能

includeChartJs: true

使用方法

简单使用的示例,在一个视图或您想显示图形的任何地方

1 - 条形图

<div class="container-fluid">
    <canvas id="barGraph" style="width:50%;"></canvas>
</div>

<?php
    $data = array(
        'Jan' => array(33),
        'Feb' => array(32),
        'Mar' => array(12)
    );
?>

{!! app()->chartbar->render("barGraph", $data) !!}

其中 $data 是一个包含信息的数组,键作为标签,值是信息的本身值。如果您需要多个数据集,即两个数据集对应同一个标签,例如新旧值,只需将值添加到数组值中,例如:'三月' => array (12, 25,. .., n)

2 - 饼图

<div class="container-fluid">
    <canvas id="pieGraph" style="width:50%;"></canvas>
</div>

<?php
    $data = array(
        'Ferdinand' => 32,
        'Felix' => 37,
        'John' => 12
    );
?>

{!! app()->chartpie->render("pieGraph", $data) !!}

其中 $data 是一个包含信息的数组,键作为标签,值是信息的本身值。颜色和突出显示颜色根据配置文件中定义的随机生成

3 - 折线图

<div class="container-fluid">
    <canvas id="lineGraph" style="width:50%;"></canvas>
</div>

<?php
    $data = array(
        'Ferdinand' => array(32),
        'Felix' => array(37),
        'John' => array(12)
    );
?>

{!! app()->chartline->render("lineGraph", $data) !!}

如有任何问题或建议,请创建 GitHub 上的问题。谢谢。