29 JpGraph图像绘制库

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 路老师在知乎上分享了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图像绘制库实现折线图柱形图饼图

相关文章
|
10月前
|
SQL 关系型数据库 MySQL
18 PDO你知道是什么吗?
路老师在知乎分享了PHP语言的知识,重点介绍了PDO(PHP Data Object)数据库抽象层。PDO旨在解决PHP早期版本的维护难题,提高代码的可移植性和兼容性。文章详细讲解了PDO的基本概念、特点、连接数据库的方法以及执行SQL语句的几种方式,包括`exec()`、`query()`、`prepare()`和`execute()`方法。适合PHP初学者深入了解和实践。
799 3
|
10月前
|
SQL PHP 数据库
19 PHP如何利用PDO获取结果集
路老师在知乎上分享了关于PHP语言的知识,帮助大家入门并深入了解PHP。本文介绍了PDO中获取结果集的三种方法:`fetch()`、`fetchAll()` 和 `fetchColumn()`,并通过具体案例展示了如何使用这些方法从数据库中获取数据并展示在网页上。
362 5
|
10月前
|
Python
pyqt6 制作一个颜色调节器 01
本文介绍了一个使用 PyQt 制作的颜色调节器,通过滑动滚动条或旋钮来调整 RGB 三色,实现颜色的微调。具体步骤包括:1. 设计 UI 页面;2. 分析颜色调整逻辑;3. 将数据反馈到 UI 页面。最终实现了颜色随滑块变化而实时更新的效果。
232 1
|
10月前
|
PHP
23 七天免登录案例
路老师分享了PHP语言的知识,帮助大家入门并深入了解PHP。本文通过一个“七天免登录”的案例,详细介绍了从创建用户表、登录页面到登录检测和退出登录的完整过程。代码示例详尽,适合初学者学习。
174 2
|
10月前
|
存储 Shell Linux
用户和用户组
本文介绍了Linux系统中的用户账户和组的基本概念,包括普通用户和超级用户(root)的定义和区别,以及组的概念和作用。文章还详细描述了用户账户和组的相关文件(如/etc/passwd、/etc/shadow、/etc/group和/etc/gshadow)的结构和内容,并提供了创建和删除用户账户及组的基本命令和选项。
528 2
|
11月前
|
人工智能 Rust Java
10月更文挑战赛火热启动,坚持热爱坚持创作!
开发者社区10月更文挑战,寻找热爱技术内容创作的你,欢迎来创作!
2567 44
|
10月前
|
Java 程序员 PHP
01 入门PHP就来我这-安装phpstudy
路老师的PHP入门教程,带你从零开始学习PHP。首先下载并安装phpStudy,接着配置域名和端口,最后创建并运行第一个PHP文件。内容详实,适合初学者。
194 3
01 入门PHP就来我这-安装phpstudy
|
10月前
pyqt6 绘图案例
本文介绍了三个使用 PyQt6 绘制图形的案例:绘制奥运图片、绘制五角星和绘制时钟。每个案例都提供了详细的代码示例和效果图,帮助读者更好地理解和实现这些图形绘制功能。
245 1
|
10月前
|
前端开发 PHP
33 多文件上传及文件下载
路老师分享PHP语言知识,涵盖多文件上传和文件下载功能。多文件上传只需将表单中的文件域名称改为数组形式,文件下载则通过`header()`函数实现强制下载。详细代码示例和操作步骤,助你轻松掌握PHP核心技术。
143 1
|
10月前
|
JavaScript PHP
17 PHP 实现批量删除功能
路老师在本文中继续优化图书删除功能,实现批量删除图书。通过添加删除按钮、表格前的复选框以及实现PHP后端逻辑,展示了完整的删除流程和效果。
125 5