4

我正在使用 Laravel 3。我想在网站上创建一个报告页面。我有一些如下的视图表:

+---------+-----------------+-------+
| user_id | username        | total |
+---------+-----------------+-------+
|       1 | user            |    12 |
|       2 | admin           |     3 |
|       3 | user2           |     1 |
|       4 | user3           |     1 |
+---------+-----------------+-------+

我想在图表视图中显示数据。制作它的最佳方法是什么?

4

2 回答 2

10

我第二个phpChart。过去将其用于在线报告任务。非常容易快速创建图表。

这是基于他们的在线示例使用phpChart解决您的场景的解决方案- Axis Labels Rotated Text 2

<?php 
$line = array(array('user', 12), array('admin', 3), array('user2', 1), array('user3', 1));

$pc = new C_PhpChartX(array($line),'user_chart');
$pc->add_plugins(array('canvasTextRenderer'));
//set series
$pc->add_series(array('renderer'=>'plugin::BarRenderer'));
//set axes
$pc->set_axes(array(
    'xaxis'  => array(
        'renderer'=>'plugin::CategoryAxisRenderer',
        'tickRenderer'=>'plugin::CanvasAxisTickRenderer'),
    'yaxis'  => array(
        'autoscale'=>true,
        'tickRenderer'=>'plugin::CanvasAxisTickRenderer')
));

$pc->draw(800,500);
?>

结果: 在此处输入图像描述

将第 6 行更改为 PieRenderer,您将得到一个饼图。

<?php
$line = array(array('user', 12), array('admin', 3), array('user2', 1), array('user3', 1));

$pc = new C_PhpChartX(array($line),'chart_1');
$pc->add_plugins(array('canvasTextRenderer'));
//set series
$pc->add_series(array('renderer'=>'plugin::PieRenderer'));
//set axes
$pc->set_series_default(array(
    'renderer'=>'plugin::PieRenderer',
    'rendererOptions'=>array('showDataLabels'=>true)));
$pc->set_legend(array('show'=>true,
    'rendererOptions'=> array('numberRows'=> 1),
    'location'=> 's'));

$pc->draw(800,500);
?>

在此处输入图像描述

这是我发现的关于 Codeproject 的精彩介绍:http: //www.codeproject.com/Articles/604542/Creating-Interactive-HTML5-Graphs-in-PHP

于 2013-10-31T18:34:20.413 回答
5

Laravel 没有提供任何开箱即用的图表库。你需要找到一个用 PHP 编写的第三方库来从你的 Laravel 应用程序中生成图表。

一些免费的图表库是:

我强烈建议您在 StackOverflow 中搜索 php 图表库,以查看其他有经验用户的意见。

选择特定库时,将其composer.json作为任何其他依赖项添加到您的文件中。

于 2013-08-14T03:10:13.003 回答