29 JpGraph图像绘制库

简介: 路老师在知乎上分享了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图像绘制库实现折线图柱形图饼图

相关文章
|
IDE Go 开发工具
Go开发IDE全览:GoLand vs VSCode全面解析
Go开发IDE全览:GoLand vs VSCode全面解析
2050 0
|
关系型数据库 PostgreSQL
postgresql查看服务与启动
服务启动,状态查看等等
2627 0
|
3月前
|
人工智能 小程序 程序员
Skill详解(2万字详细教程),Skills是什么,如何安装并使用Skills
AI时代必备技能!Skills(智能体技能)是Anthropic提出的可复用能力包,以文件夹形式封装指令、脚本与资源,实现“按需加载”,大幅节省Token。它让大模型从聊天工具升级为专业助手——非技术岗也能零代码快速上手,真正实现人人可用、岗岗必备。
24898 22
Skill详解(2万字详细教程),Skills是什么,如何安装并使用Skills
|
机器学习/深度学习 传感器 算法
数字图像处理实验(五)|图像复原{逆滤波和伪逆滤波、维纳滤波deconvwnr、大气湍流扰动模型、运动模糊处理fspecial}(附matlab实验代码和截图)
数字图像处理实验(五)|图像复原{逆滤波和伪逆滤波、维纳滤波deconvwnr、大气湍流扰动模型、运动模糊处理fspecial}(附matlab实验代码和截图)
2195 0
数字图像处理实验(五)|图像复原{逆滤波和伪逆滤波、维纳滤波deconvwnr、大气湍流扰动模型、运动模糊处理fspecial}(附matlab实验代码和截图)
|
10月前
|
机器学习/深度学习 人工智能 API
构建AI智能体:二十四、RAG的高效召回方法论:提升RAG系统召回率的三大策略实践
本文探讨了检索增强生成(RAG)系统中的高效召回技术。RAG系统通过检索相关文档增强大语言模型的回答质量,但性能受制于垃圾进,垃圾出原则。为提高召回效果,文章重点分析了三种方法:Small-to-Big通过大小文本块映射兼顾检索精度与上下文丰富度;索引扩展(如HyDE)利用大模型生成假设文档来优化检索;双向改写弥合用户查询与文档表述的差异。这些方法从不同角度解决了RAG系统中的语义鸿沟、词汇不匹配等核心问题,可单独或组合使用。高效召回技术能显著提升RAG系统的回答质量和效率。
1167 5
|
数据采集 人工智能 分布式计算
训练效率提升100%!阿里云后训练全栈解决方案发布实录
阿里云大数据AI平台推出大模型后训练解决方案,通过全栈AI能力提供从算力到平台的一体化支撑,提升训练效率100%,适配多行业需求,打通大模型落地“最后一公里”。
994 0
|
网络协议 网络安全 网络架构
开发者急盼!Cisco Packet Tracer超详细下载安装教程,附中文版插件使用步骤!
Cisco Packet Tracer是思科推出的专业路由器模拟器,适用于学习IOS配置、故障排查及网络拓扑构建。支持多种协议(STP、OSPF等),含无线功能与安全设备。本文提供下载链接、安装教程及高级功能介绍,如复杂网络仿真、可视化调试、自动化脚本和行业场景模拟等,助你高效学习网络技术并启用中文语言包。
9351 17
开发者急盼!Cisco Packet Tracer超详细下载安装教程,附中文版插件使用步骤!
|
测试技术
字节Seed开源统一多模态理解和生成模型 BAGEL!
近期,字节跳动Seed推出了 BAGEL—— 一个开源的多模态理解和生成础模型,具有70亿个激活参数(总共140亿个),并在大规模交错多模态数据上进行训练。
1330 3
|
中间件 Linux PHP
【ThinkPHP框架教程·Part-01】ThinkPHP6.x框架安装教程
ThinkPHP6.0 是一款免费开源、轻量级且快速的 PHP 框架,适用于 PHP 7.2.5+ 环境。本教程采用稳定版 TP6.0,支持多应用、强类型、PSR 规范等新特性。安装步骤包括:1) 安装 Composer;2) 切换国内镜像加速下载;3) 使用 `composer create-project topthink/think tp6` 安装稳定版;4) 运行 `php think run` 测试。详情及更多内容请参考 [官方手册](https://www.kancloud.cn/manual/thinkphp6_0/1037479)。
1967 1
【ThinkPHP框架教程·Part-01】ThinkPHP6.x框架安装教程