29 JpGraph图像绘制库

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 路老师在知乎上分享了PHP语言的知识,帮助大家入门并深入了解PHP。本文介绍了JpGraph库的下载、使用及中文乱码设置,通过实例展示了如何使用JpGraph绘制折线图。

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

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

image.gif 编辑


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

1 JpGraph库

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

1.1 JpGraph下载

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

image.gif 编辑

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

image.gif 编辑

1.2 JpGraph使用

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

image.gif 编辑

编写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(); //输出图表

image.gif

image.gif 编辑

1.3 中文乱码设置

1.3.1 修改jpgraph_ttf.inc.php文件内容:
define('CHINESE_TTF_FONT','bkai00mp.ttf') 
改为
define('CHINESE_TTF_FONT','simhei.ttf')
image.gif
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;

image.gif

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;

image.gif

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

相关文章
|
Python
Python 技术篇-用PIL库旋转图片、改变图像尺寸
Python 技术篇-用PIL库旋转图片、改变图像尺寸
771 0
Python 技术篇-用PIL库旋转图片、改变图像尺寸
|
3月前
|
存储 计算机视觉
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
本文介绍了使用OpenCV进行图像读取、显示和存储的基本操作,以及如何绘制直线、圆形、矩形和文本等几何图形的方法。
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
|
2月前
|
数据可视化 计算机视觉 Python
opencv可视化学习笔记(一):绘制多图在一个画布上
这篇文章介绍了如何使用OpenCV和PIL库将多张图片绘制在同一个画布上,并提供了具体的Python代码实现。
31 0
opencv可视化学习笔记(一):绘制多图在一个画布上
|
2月前
|
机器学习/深度学习 人工智能 数据可视化
|
7月前
|
算法 计算机视觉 开发者
OpenCV图形检测中绘制图像的轮廓讲解与实战应用(附Python源码)
OpenCV图形检测中绘制图像的轮廓讲解与实战应用(附Python源码)
214 0
|
7月前
|
前端开发 API 计算机视觉
opencv绘制基本图形,在图片上添加文字
opencv绘制基本图形,在图片上添加文字
|
7月前
|
Python
Python中gdal实现多幅栅格遥感影像图层数据批量绘制直方图
Python中gdal实现多幅栅格遥感影像图层数据批量绘制直方图
|
7月前
|
存储 定位技术 索引
Python GDAL为具有多个波段的大量栅格图像绘制像素随时间变化走势图
Python GDAL为具有多个波段的大量栅格图像绘制像素随时间变化走势图
|
7月前
|
计算机视觉
opencv基础图形的绘制
opencv基础图形的绘制
49 0
|
7月前
|
监控 计算机视觉
[MFC] 绘制图像ROI区域(OpenCv库)
[MFC] 绘制图像ROI区域(OpenCv库)
129 0