qq_蓝色水晶雨_03819317
2016-12-01 11:42
??????
个人经过多次尝试,终于成功了,不过完全和老师的不一样。我的运行环境是vps:
系统:CentOS 7
内核版本:2.6.32-042stab116.1
php版本:7.0.7
GD版本:2.1.0
jpgraph版本:4.0.1
首先解决一下报错“/usr/share/fonts/truetype/SIMIYOU.TTF is not readable or does not exist”,其实这个即使你把字体放在了“/usr/share/fonts/truetype/”下还是会报同样的错误,你把字体放在jpgraph包的/src/fonts/下这个错误就消失了。
接下来完整说一下我的配置
1.下载simsun.ttc和simhei.ttf字体包放到jpgraph的/src/fonts/目录下
2.图例支持中文:
修改jpgraph_legend.inc.php,将$font_family修改为FF_SIMSUN
(是的,我没有修改老师说的标题支持中文,但直接可以正常显示的)
3.设置标题和字体
$graph->title->Set(iconv("UTF-8", "gb2312", ‘我是标题’)); //iconv函数必须有才能正常显示
$graph->title->SetFont(FF_SIMSUN);4.设置图例
$linePlot->SetLegend(iconv('utf-8','gb2312’,’我是图例’));注意:在修改配置文件前,最好将文件进行备份,如将文件名后缀添加.default,或者在修改行时注释原有行,然后复制后进行修改,以免修改过程中导致配置文件混乱。如果在Mac系统上修改,即使你没有备份配置文件,仍然可以通过系统自带的文本编辑器的“文件——复原”功能来恢复已保存的文件,这是因为文本编辑器会自动记录你的文件修改历史,不过这只是救急之用,详见https://palemoky.github.io/2016/12/10/%E6%96%87%E4%BB%B6%E7%9A%84%E6%81%A2%E5%A4%8D/
最后,粘贴一下我的绘图代码:
1 <?php
2 //XY坐标图
3 require_once './jpgraph/jpgraph.php';
4 require_once './jpgraph/jpgraph_line.php';
5 //1.创建画布
6 $graph = new Graph(600,400);
7
8 //2.设置横纵坐标刻度样式
9 /*
10 line直线
11 text文本
12 int整型
13 log对数
14 textint(组合类型,表示X轴为文本型,Y轴为整型)
15 */
16 $graph->SetScale('textint');
17 //3.设置标题
18 $graph->title->Set(iconv("UTF-8", "gb2312", '我是标题'));
19 $graph->title->SetFont(FF_SIMSUN);
20 $data = array(1=>20,2=>30,3=>40,4=>50,5=>12,6=>38,7=>55,8=>100,9=>120,10=>30,11=>54);
21
22 //4.得到LinePlot对象
23 $linePlot = new LinePlot($data);
24
25 //5.设置图例
26 $linePlot->SetLegend(iconv('utf-8','gb2312','我是图例'));
27
28 //6.将统计图添加到画布上
29 $graph->Add($linePlot);
30
31 //6.1设置统计图的颜色,一定要在添加到画布之后设置
32 $linePlot->SetColor('red');
33
34 //7.将统计图输出
35 $graph->Stroke();
那就去下载对应的字体,放到提示的目录下就可以了
神奇的JpGraph类库
15182 学习 · 34 问题
相似问题