PHP生成条形图的方法


Posted in PHP onDecember 10, 2014

本文实例讲述了PHP生成条形图的方法。分享给大家供大家参考。具体实现方法如下:

<?php 

  // create an array of values for the chart. These values  

  // could come from anywhere, POST, GET, database etc.  

  $values = array(23,32,35,57,12,3,36,54,32,15,43,24,30); 

 

  // now we get the number of values in the array. this will  

  // tell us how many columns to plot  

    $columns  = count($values); 

 

  // set the height and width of the graph image 

 

    $width = 300;  

    $height = 200; 

 

  // Set the amount of space between each column  

    $padding = 5; 

 

  // Get the width of 1 column  

    $column_width = $width / $columns ; 

 

  // set the graph color variables  

    $im        = imagecreate($width,$height);  

    $gray      = imagecolorallocate ($im,0xcc,0xcc,0xcc);  

    $gray_lite = imagecolorallocate ($im,0xee,0xee,0xee);  

    $gray_dark = imagecolorallocate ($im,0x7f,0x7f,0x7f);  

    $white     = imagecolorallocate ($im,0xff,0xff,0xff); 

 

  // set the background color of the graph  

    imagefilledrectangle($im,0,0,$width,$height,$white); 

 

 

  // Calculate the maximum value we are going to plot  

  $max_value = max($values); 

 

  // loop over the array of columns  

    for($i=0;$i<$columns;$i++)  

        { 

    // set the column hieght for each value  

        $column_height = ($height / 100) * (( $values[$i] / $max_value) 

 

*100);  

    // now the coords 

        $x1 = $i*$column_width;  

        $y1 = $height-$column_height;  

        $x2 = (($i+1)*$column_width)-$padding;  

        $y2 = $height; 

 

        // write the columns over the background  

        imagefilledrectangle($im,$x1,$y1,$x2,$y2,$gray); 

 

        // This gives the columns a little 3d effect  

        imageline($im,$x1,$y1,$x1,$y2,$gray_lite);  

        imageline($im,$x1,$y2,$x2,$y2,$gray_lite);  

        imageline($im,$x2,$y1,$x2,$y2,$gray_dark);  

        } 

 

   // set the correct png headers  

   header ("Content-type: image/png");  

  // spit the image out the other end  

  imagepng($im);  

?>

运行效果如下图所示:

PHP生成条形图的方法

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
php下过滤HTML代码的函数
Dec 10 PHP
php 面试碰到过的问题 在此做下记录
Jun 09 PHP
通过PHP的内置函数,通过DES算法对数据加密和解密
Jun 21 PHP
Thinkphp模板中使用自定义函数的方法
Sep 23 PHP
php使用fopen创建utf8编码文件的方法
Oct 31 PHP
一个完整的php文件上传类实例讲解
Oct 27 PHP
浅谈PHP安全防护之Web攻击
Jan 03 PHP
ThinkPHP实现图片上传操作的方法详解
May 08 PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 PHP
php 二维数组快速排序算法的实现代码
Oct 17 PHP
关于ThinkPHP中的异常处理详解
May 11 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 PHP
php自定文件保存session的方法
Dec 10 #PHP
php通过session防url攻击方法
Dec 10 #PHP
php利用cookies实现购物车的方法
Dec 10 #PHP
php针对cookie操作的队列操作类实例
Dec 10 #PHP
php利用cookie实现自动登录的方法
Dec 10 #PHP
PHP使用header()输出图片缓存实例
Dec 09 #PHP
PHP实现服务器状态监控的方法
Dec 09 #PHP
You might like
Zend Framework+smarty用法实例详解
2016/03/19 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
2017/09/27 PHP
PHP实现的最大正向匹配算法示例
2017/12/19 PHP
PHP文件后缀不强制为.php方法
2019/03/31 PHP
PHP数组array类常见操作示例
2020/05/15 PHP
JQuery弹出炫丽对话框的同时让背景变灰色
2014/05/22 Javascript
JS输入用户名自动显示邮箱后缀列表的方法
2015/01/27 Javascript
jquery实现的3D旋转木马特效代码分享
2015/08/25 Javascript
BootStrop前端框架入门教程详解
2016/12/25 Javascript
JS实现仿饿了么在浏览器标签页失去焦点时网页Title改变
2017/06/01 Javascript
js中的事件委托或是事件代理使用详解
2017/06/23 Javascript
vue2.0实现移动端的输入框实时检索更新列表功能
2018/05/08 Javascript
基于axios 解决跨域cookie丢失的问题
2018/09/26 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
ES6字符串的扩展实例
2020/12/21 Javascript
Vue ​v-model相关知识总结
2021/01/28 Vue.js
Python中的ctime()方法使用教程
2015/05/22 Python
浅谈pandas用groupby后对层级索引levels的处理方法
2018/11/06 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
2019/08/08 Python
Python3列表List入门知识附实例
2020/02/09 Python
在Mac中PyCharm配置python Anaconda环境过程图解
2020/03/11 Python
pycharm通过anaconda安装pyqt5的教程
2020/03/24 Python
CSS3 mask 遮罩的具体使用方法
2017/11/03 HTML / CSS
英国第一蛋白粉品牌:Myprotein
2016/09/14 全球购物
俄罗斯便宜的在线服装商店:GroupPrice
2020/04/10 全球购物
护理中职生求职信范文
2014/02/24 职场文书
促销活动方案模板
2014/02/24 职场文书
项目经理任命书
2014/06/04 职场文书
医德医魂心得体会
2014/09/11 职场文书
护士自荐信范文
2015/03/25 职场文书
幼儿园老师工作总结2015
2015/05/22 职场文书
主题班会开场白
2015/06/01 职场文书
环保宣传语大全
2015/07/13 职场文书
2016年教师节感恩寄语
2015/12/04 职场文书
编写python程序的90条建议
2021/04/14 Python