PHP 柱状图实现代码


Posted in PHP onDecember 04, 2009

还有疑问的朋友可以加我QQ:460634320,大家一起讨论。
效果图:
PHP 柱状图实现代码

<?php 
function createImage($data,$twidth,$tspace,$height){ 
header("Content-Type:image/jpeg"); 
$dataname = array(); 
$datavalue = array();//data里面的值 
$i = 0; 
$j = 0; 
$k = 0; 
$num = sizeof($data); foreach($data as $key => $val){ 
$dataname[] = $key; 
$datavalue[] = $val; 
} 
$width = $num * ($twidth + $tspace) + 20 ;//获取图像的宽度 
$im = imagecreate($width,$height);//创建图像 
$bgcolor = imagecolorallocate($im,255,255,255);//背景色 
$jcolor = imagecolorallocate($im,255,255,0);//矩形的背景色 
$acolor = imagecolorallocate($im,0,0,0);//线的颜色 
imageline($im,25,$height-20,$width-5,$height -20,$acolor);//X轴 
imageline($im,25,$height-20,25,2,$acolor);//Y轴 
while($i< $num){ 
imagefilledrectangle($im,$i*($tspace+$twidth)+40,$height-$datavalue[$i]-20,$i*($twidth+$tspace)+$tspace+40,$height-20,$jcolor);//画矩形 
imagestring($im,3,$i*($tspace+$twidth)+40+$twidth/2,$height-$datavalue[$i]-35,$datavalue[$i],$acolor);//在柱子上面写出值 
imagestring($im,3,$i*($tspace+$twidth)+40+$twidth/2,$height-15,$dataname[$i],$acolor);//在柱子下面写出值 
$i ++; 
} 
while($j < 400/10){ 
imageline($im,25,($height-20)-$j*8,28,($height-20)-$j*8,$acolor);//画出刻度 
imagestring($im,2,5,($height-30)-$j*8,$j*10,$acolor);//标出刻度值 
$j = $j +10; 
} 
imagejpeg($im); 
} 
$data =array("1"=>25,"2"=>30,"3" =>21 ); 
createImage($data,40,40,300); 
?>
PHP 相关文章推荐
PHP入门速成教程
Mar 19 PHP
php横向重复区域显示二法
Sep 25 PHP
PHP 数组遍历顺序理解
Sep 09 PHP
PHP查询MySQL大量数据的时候内存占用分析
Jul 22 PHP
浅析PHP 按位与或 (^ 、&amp;)
Jun 21 PHP
一组PHP可逆加密解密算法实例代码
Jan 21 PHP
PHP常用函数和常见疑难问题解答
Mar 05 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
Jul 19 PHP
PHP中加密解密函数与DES加密解密实例
Oct 17 PHP
php图片处理函数获取类型及扩展名实例
Nov 19 PHP
给WordPress的编辑后台添加提示框的代码实例分享
Dec 25 PHP
php实现对文件压缩简单的方法
Sep 29 PHP
Ajax+PHP边学边练 之五 图片处理
Dec 03 #PHP
PHPMyadmin 配置文件详解(配置)
Dec 03 #PHP
又一个php 分页类实现代码
Dec 03 #PHP
php 无限分类的树类代码
Dec 03 #PHP
php zip文件解压类代码
Dec 02 #PHP
PHP5 面向对象(学习记录)
Dec 02 #PHP
php smarty模版引擎中的缓存应用
Dec 02 #PHP
You might like
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
2011/11/10 PHP
ThinkPHP中自定义错误页面和提示页面实例
2014/11/22 PHP
PHP html_entity_decode()函数讲解
2019/02/25 PHP
Javascript 遍历对象中的子对象
2009/07/03 Javascript
如何让easyui gridview 宽度自适应窗口改变及fitColumns应用
2013/01/25 Javascript
javascript数组的使用
2013/03/28 Javascript
Extjs4 类的定义和扩展实例
2013/06/28 Javascript
js截取固定长度的中英文字符的简单实例
2013/11/22 Javascript
Jquery的Tabs内容轮换效果实现代码,几行搞定
2014/02/12 Javascript
node.js中的fs.utimes方法使用说明
2014/12/15 Javascript
JavaScript中的数组操作介绍
2014/12/30 Javascript
IE浏览器下PNG相关功能
2015/07/05 Javascript
javascript实现数字倒计时特效
2016/03/30 Javascript
分享jQuery封装好的一些常用操作
2016/07/28 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
JS基于正则表达式实现的密码强度验证功能示例
2017/09/21 Javascript
JS中的BOM应用
2018/02/02 Javascript
jQuery实现带右侧索引功能的通讯录示例【附源码下载】
2018/04/17 jQuery
jQuery实现鼠标滑过商品小图片上显示对应大图片功能【测试可用】
2018/04/27 jQuery
Vue2.0实现组件之间数据交互和通信操作示例
2019/05/16 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
vue-cli3项目打包后自动化部署到服务器的方法
2020/09/16 Javascript
Python的requests网络编程包使用教程
2016/07/11 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
2017/07/20 Python
pandas按若干个列的组合条件筛选数据的方法
2018/04/11 Python
Pandas之Dropna滤除缺失数据的实现方法
2019/06/25 Python
Django 404、500页面全局配置知识点详解
2020/03/10 Python
python实现AHP算法的方法实例(层次分析法)
2020/09/09 Python
当当网软件测试笔试题
2015/11/24 面试题
2013年大学生的自我鉴定
2013/10/24 职场文书
网上开商店的创业计划书
2014/01/19 职场文书
法人代表任命书范本
2014/06/05 职场文书
学习十八大的心得体会
2014/09/01 职场文书
缓刑期间思想汇报范文
2014/10/10 职场文书
党的群众路线教育实践活动个人整改方案
2014/10/25 职场文书
爱护公物主题班会
2015/08/17 职场文书