php jpgraph库非常强大,可以在后台生成图片
后台生成在需要导出图表型报告的时候非常有用,当然,前端的可视化还是要用highcharts/echarts/anycharts等类库
比较麻烦的是中文乱码问题,有3个地方乱码:


先说明下我的环境和版本:
|
1
2
3
4
5 |
//jpgraph_legend.inc.php3 class
Legend {2 public
$txtcol=array();1 //public $font_family=FF_DEFAULT,$font_style=FS_NORMAL,$font_size=8; // old. 120 public
$font_family=FF_SIMSUN,$font_style=FS_NORMAL,$font_size=8; // old. 12 |
记得下载一份 simsun.ttc 放到 /usr/share/fonts/truetype
|
1
2
3
4
5
6
7
8
9
10
11
12 |
//jpgraph_ttf.inc.php9 elseif( $aFF
=== FF_SIMSUN ) {8 // Do Chinese conversion 7 /*6 if( $this->g2312 == null ) {5 include_once ‘jpgraph_gb2312.php‘ ;4 $this->g2312 = new GB2312toUTF8();3 }2 return $this->g2312->gb2utf8($aTxt);1 */0 return
$aTxt;<br>1 } |
原创文章,转载请注明:http://www.cnblogs.com/phpgcs/
上面的解决方法,我是参考了:
http://blog.csdn.net/yiping1980/article/details/6023144
然后后面的2个我认为就是找到title/stickLabels源码的地方,将 FFDEFAULT 改为 FFSIMSUN 即可
后来证明果然是这样,而且方便的是 这2个家伙都在 jpgraph.php 文件中
直接
|
1 |
:%s/FF_DEFAULT/FF_SIMSUN/g |
就搞定了
|
1
2
3
4 |
2 $this->title = new
Text();1 $this->title->ParagraphAlign(‘center‘);0 //$this->title->SetFont(FF_DEFAULT,FS_NORMAL); //FF_FONT2, FS_BOLD<br>1 $this->title->SetFont(FF_SIMSUN,FS_NORMAL); //FF_FONT2, FS_BOLD |
|
1
2
3
4
5
6 |
5 class
AxisPrototype {4 public
$scale=null;3 public
$img=null;2 public
$hide=false,$hide_labels=false;1 public
$title=null;0 public
$font_family=FF_DEFAULT,$font_style=FS_NORMAL,$font_size=8,$label_angle=0; |
还有个地方也有FF_DEFAULT,
|
1
2
3
4
5
6 |
5 class
DisplayValue {4 public
$margin=5;3 public
$show=false;2 public
$valign=‘‘,$halign=‘center‘;1 public
$format=‘%.1f‘,$negformat=‘‘;0 private
$ff=FF_DEFAULT,$fs=FS_NORMAL,$fsize=8; |
原创文章,转载请注明:http://www.cnblogs.com/phpgcs/


【原创】jpgraph中文乱码问题的解决,布布扣,bubuko.com
原文:http://www.cnblogs.com/phpgcs/p/jpgraph_chinese_messy_code.html