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 获取可变函数参数的函数
Aug 26 PHP
PHP 文件系统详解
Sep 13 PHP
PHP时间格式控制符对照表分享
Jul 23 PHP
YII路径的用法总结
Jul 09 PHP
php创建和删除目录函数介绍和递归删除目录函数分享
Nov 18 PHP
PHP获取毫秒级时间戳的方法
Apr 15 PHP
php中使用gd库实现下载网页中所有图片
May 12 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
PHP生成图像验证码的方法小结(2种方法)
Jul 18 PHP
微信公众平台开发-微信服务器IP接口实例(含源码)
Mar 05 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
Oct 14 PHP
PHP Swoole异步MySQL客户端实现方法示例
Oct 24 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+MYSQL实现用户的增删改查
2015/03/24 PHP
使用户点击后退按钮使效三行代码
2007/07/07 Javascript
JavaScript 无符号右移赋值操作
2009/04/17 Javascript
在js文件中如何获取basePath处理js路径问题
2013/07/10 Javascript
js实现数组去重、判断数组以及对象中的内容是否相同
2013/11/29 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
JS完整获取IE浏览器信息包括类型、版本、语言等等
2014/05/22 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
2014/10/31 Javascript
javascript获取当前鼠标坐标的方法
2015/01/10 Javascript
将页面table内容与样式另存成excel文件的方法
2015/08/05 Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
2016/05/31 Javascript
AngularJs自定义服务之实现签名和加密
2016/08/02 Javascript
NodeJS使用formidable实现文件上传
2016/10/27 NodeJs
JQuery统计input和textarea文字输入数量(代码分享)
2016/12/29 Javascript
js面向对象编程总结
2017/02/16 Javascript
JavaScript简单实现的仿微博留言功能示例
2019/01/17 Javascript
记录一次完整的react hooks实践
2019/03/11 Javascript
Python将阿拉伯数字转换为罗马数字的方法
2015/07/10 Python
python连接mysql实例分享
2016/10/09 Python
分析python切片原理和方法
2017/12/19 Python
flask入门之文件上传与邮件发送示例
2018/07/18 Python
Django如何实现上传图片功能
2019/08/16 Python
命令行运行Python脚本时传入参数的三种方式详解
2019/10/11 Python
python 读写文件包含多种编码格式的解决方式
2019/12/20 Python
欧洲最大的美妆零售网站:Feelunique
2017/01/14 全球购物
美国益智玩具购物网站:Fat Brain Toys
2017/11/03 全球购物
安全的后院和健身蹦床:JumpSport
2019/07/15 全球购物
世界上最伟大的马产品:Equiderma
2020/01/07 全球购物
教师试用期自我鉴定
2014/02/12 职场文书
党的群众路线教育实践活动动员会主持词
2014/03/20 职场文书
亲子阅读的活动方案
2014/08/15 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
部门2015年度工作总结
2015/04/29 职场文书
导游词之镇江西津古渡
2019/11/06 职场文书
JavaScript canvas实现流星特效
2021/05/20 Javascript
关于MySQL临时表为什么可以重名的问题
2022/03/22 MySQL