Thinkphp3.2+jpgraph 完成折线图心得
编写原因:网上百度了很久很久也没解决,现在解决了。记录一下,呜呜呜。
参考地址:http://www.thinkphp.cn/extend/617.html
我按上述地址操作,能出来折线统计图,但是出来的是全屏,就是相当于一张图片,而我要的效果是指定地方出现折线统计图:如下图
开始操作,先下载,然后把解压后的Jpgraph文件夹放到拓展目录Vendor下
这里上面说一下地址,我查网上很多人的地址都是
/项目文件夹/Thinkphp/Library/Vendor/
而我的地址是
/项目文件夹/Tpcode/Library/Vendor/
这个没什么影响,但还是解释一下。
下载地址:www.thinkphp.cn/download/617.html
放进去后如图
接下来编写代码
代码块
function tubiao(){
vendor('Jpgraph.Chart');
$chart = new \Chart;
$title = '这里是标题'; //标题
$data = array(20,27,45,75,90,10,20,40); //数据 实际操作时这里的数据从数据库拉取
$size = 140; //尺寸
$width = 800; //宽度
$height = 500; //高度
$legend = array('1111 ','2222','3333','4444 ','5555 ','6666 ','7777 ','8888 ');//说明
/*上面的参数各种图都是用,比如:饼图 折线图 柱形图等等,需要改变的就是下面的chart.php中的function的名字*/
$chart->createmonthline($title,$data,$size,$height,$width,$legend);
// $chart->create3dpie($title,$data,$size,$height,$width,$legend);
// $chart->createcolumnar($title,$data,$size,$height,$width,$legend);
// $chart->createring($title,$data,$size,$height,$width,$legend);
// $chart->createhorizoncolumnar($title,$data,$size,$height,$width,$legend);
}
把上述代码放在控制器里。
然后去你需要用的html页面里
<img src='/模块名/控制器名/方法名'> 用img调用
还不清楚的可以看下图
我的tubiao()方法写在了Admin模块下的CallController.class.php控制器里
在html里你需要调用的地方写上
<img src="/admin/call/tubiao" />
而为什么要这样写就是因为一开始按文章一开始给出的地址操作,是全屏,就是相当于一张图片,所以要想指定显示,给她一个img标签就行了。
然后去刷新就可以看见你的图表出来了。