入门PHP就来我这(高级)28 ~ JpGraph图像绘制库

有胆量你就来跟着路老师卷起来! -- 纯干货,技术知识分享

路老师给大家分享PHP语言的知识了,旨在想让大家入门PHP,并深入了解PHP语言。


上篇文章简单的实现了验证码生成和使用功能,本文我们来接触以下新的图像绘制库--JpGraph。

 1 JpGraph库

JpGraph是一个强大的绘图组件,其能根据用户需要绘制任意图形。用户只需要提供数据,就能自动调用绘图函数,把要处理的数据输入,并自动绘制,JpGraph提供了多种方法创建各种绘制图,包括折线图、柱形图和饼图。JpGraph是一个完全使用PHP语言编写的类库,并可以应用在任何PHP环境中。

1.1 JpGraph下载

JpGraph下载地址界面如下,我们下载最新版的就可以。

 下载后解压到一个随意的目录:

1.2 JpGraph使用

使用的时候,只需要将jpgraph-4.4.2中的src文件拷贝到项目文件夹下重命名为jpgrap就可以用了。

编写index.php实现折线图案例

<?php
//折线图
require 'jpgraph/jpgraph.php'; 
require 'jpgraph/jpgraph_line.php';   //首先引入插件中的文件 
$data = array(220,300,302,331,400,350,290,330,250,420);   //随机定义一个数组
$jpgraph = new Graph(650,350);   //创建一个图表,指定大小
$jpgraph->SetScale('textint');  //设置刻度坐标的类型,X轴为text,Y轴为int
$jpgraph->title->Set(iconv('UTF-8','GB2312','PHP学院课程报名人数'));  //设置该图表的标题
$jpgraph->xaxis->title->Set(iconv('UTF-8','GB2312','X轴'));
$jpgraph->yaxis->title->Set(iconv('UTF-8','GB2312','Y轴'));   //X轴 Y轴的标题,使用‘GB2312’避免出现乱码
$jpgraph->title->SetColor('red');   //设置图表标题的颜色
$jpgraph->title->SetFont(FF_SIMSUN,FS_BOLD,15);
$jpgraph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD,12);
$jpgraph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD,12);   //设置图表标题,X轴标题,Y轴标题的字体,粗细,fontsize
$jpgraph->xaxis->SetTickLabels(array('1月','2月',
'3月','4月','5月','6月','7月','8月','9月','10月'));
$linePlot = new LinePlot($data);    //创建折线
$linePlot->SetStyle(1);  //折线的类型,1为实现,2为虚线……
$jpgraph->Add($linePlot);
//设置线条颜色
$linePlot->SetColor('#0000ff');
//保存图片
// $jpgraph->Stroke('result.jpg');
$jpgraph->Stroke(); //输出图表

1.3 中文乱码设置
 1.3.1 修改jpgraph_ttf.inc.php文件内容:

define('CHINESE_TTF_FONT','bkai00mp.ttf') 
改为
define('CHINESE_TTF_FONT','simhei.ttf')

1.3.2 修改jpgraph_legend.inc.php文件内容:
public $font_family=FF_DEFAULT,$font_style=FS_NORMAL,$font_size=8; 

改为

public $font_family=FF_CHINESE,$font_style=FS_NORMAL,$font_size=8;
1.3.3 修改 jpgraph.php文件内容:
public $font_family=FF_DEFAULT,$font_style=FS_NORMAL,$font_size=8,$label_angle=0;

改为

public $font_family=FF_CHINESE,$font_style=FS_NORMAL,$font_size=8,$label_angle=0;

 下一篇 JpGraph图像绘制库实现折线图柱形图饼图


大家如果喜欢技术,并想有个好的交流平台可以关注我的 我的知乎首页,会不定期分享本人觉得比较好的技术类电子书。
另外,自己创建的一个技术qq群,玩转技术群,目前手头里有一批项目,前后端人员都需要,兼职,有技术的你欢迎加入,一起学习成长。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 22:58:06       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 22:58:06       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 22:58:06       58 阅读
  4. Python语言-面向对象

    2024-07-13 22:58:06       69 阅读

热门阅读

  1. Hypertable服务启动

    2024-07-13 22:58:06       23 阅读
  2. 缓存加速:精通Gradle项目依赖缓存配置

    2024-07-13 22:58:06       22 阅读
  3. c语言alpha-beta剪枝六子棋

    2024-07-13 22:58:06       22 阅读
  4. Sentry: 应用错误追踪神器

    2024-07-13 22:58:06       23 阅读
  5. 2352. 相等行列对

    2024-07-13 22:58:06       19 阅读
  6. 【无标题】

    2024-07-13 22:58:06       15 阅读
  7. 【车载开发系列】汽车开发节点 ET、PT、SOP

    2024-07-13 22:58:06       22 阅读
  8. AcWing 1480:电梯

    2024-07-13 22:58:06       19 阅读
  9. Qt坐标变换详解

    2024-07-13 22:58:06       24 阅读