Phplot 绘图包使用小结

什么是Phplot?
Phplot是一个用于绘图的开源PHP库,可以免费用于任何场合。
其官方网址是:http://phplot.sourceforge.net/
可以在官网上下载其库文件,其实就是PHP代码。
如何安装Phplot?
Phplot的安装其实也就是复制。把它解压缩复制到一个路径下,如:/var/www/phplot/libs。然后在php.ini的include_path中加上这个路径。重启一下http服务即可。虚拟主机等没有权限做上述操作的可以直接把文件传到网站目录下,php代码中include库文件的时候需要用相对网页的路径。使用修改php.ini的方法的话,在使用phplot库文件的时候就不用加路径了,会更方便。

为什么图形中无法显示中文?
我也不知道,呵呵。不过我知道怎么解决。
require ‘phplot.php’;
$plot = new PHPlot(300,200);
$plot->SetTTFPath(“/usr/share/fonts/chinese/TrueType”); //下面一句中的simhei.ttf存放的路径
$plot->SetDefaultTTFont(‘simhei.ttf’); //需要存在的文件
$plot->SetUseTTF(True);
$plot->SetTitle(iconv(“GBK”, “UTF-8”, ‘示例图形’)); // 内码一定要转换成utf-8才可以显示中文。

有一点很重要的说,这个绘图的php文件不能保存成UTF-8的格式,在Windows下保存成ANSI/ASCII格式的,Linux下保存成GBK字符编码,否则只显示一个图片的外框加一个小红叉(就是无法显示图片的样子),为啥?不知道。

我的Linux里没有中文黑体怎么办?
好说好说。Windows里总有吧?不管你用什么途径,找到你需要的字体文件,复制到Linux下的合适文件夹里,比如:/usr/share/fonts/chinese/TrueType里,然后启动一个终端窗口,转到这个文件夹下依此执行如下命令:
mkfontscale
mkfontdir
chkfontpath –看看输出的path里有没有存放我们这个字体文件的文件夹。有的话跳过下一步执行下下一步
chkfontpath –add /usr/share/fonts/chinese/TrueType
service xfs reload
这时候可以打开OpenOffice的字处理程序,看看可不可以选择黑体了,如果上面操作没有问题的话,应该就已经偶了。
如果你要问我还想要楷体怎么办?我会回答你:不知道,嘿嘿。

可以自动支持中文吗?
以上方法是可以支持中文了。难道每个画图的页面都要有这些吗?可以自动做吗?实在太不幸了—有。
原因很简单,phplot.php源代码都在这儿,随便改你的吧。
怎么做?把下面的代码加到PHPlot的构造函数的尾部就可以了。
$this->SetTTFPath(“/usr/share/fonts/chinese/TrueType”);
$this->SetDefaultTTFont(‘simhei.ttf’);
$this->SetUseTTF(True);

怎么画饼图?
照下面的代码改巴改巴就行了:
$plot = new PHPlot(200,200);
$s1 = iconv(“GBK”, “UTF-8”, ‘一部门’);
$s2 = iconv(“GBK”, “UTF-8”, ‘二部门’);
$data = array(array($s1, 7), array($s2, 3));
$plot->SetTitle(iconv(“GBK”, “UTF-8”, ‘饼图示例’));
$plot->SetDataValues($data);
$plot->SetDataType(‘text-data-single’);
$plot->SetLabelScalePosition(0.2);
$plot->SetLegendStyle(“left”, “left”);
$plot->SetLegend(array($s1,$s2));
$plot->SetPlotType(‘pie’);
$plot->DrawGraph();

《Phplot 绘图包使用小结》有2个想法

  1. 您好,请问安装好之后如何测试啊,本人菜鸟,请帮忙指教一下,感谢。

    1. 如果能使用Phplot的函数,就是表示库安装好了,如果能显示出图片来,就更没问题了。

评论已关闭。