linux怎么安装 php jpgraph?

linux怎么安装 php jpgraph?,第1张

jpgraph的安装与配置

Jpgraph这个强大的绘图组件能根据用户的需要绘制任意图形。只需要提供数据,就能自动调用绘图函数的过程,把处理的数据输入自动绘制。Jpgraph提供了多种创建各种统计图,包括折线图、柱形图和饼形图等。Jpgraph是一个完全使用php语言编写的类库,并可以应用任何php环境中。

1、jpgraph的安装

Jpgraph可以从其官方网站下载。注意:jpgraph支持php4.3.1以上和PHP5两种版本的图形库,选择合适的jpgraph下载。可以下载这样的版本使用:jpgraph-2.3

其安装步骤非常简单:

a)        将压缩包下的全部文件解压到一个文件夹中。如f:\appserv\www\jpgraph

b)       打开PHP的安装目录,编辑php.ini文件并修改其中的include_path参数,在其后增加前面的文件夹名,include_path=”.f:\appserv\www\jpgraph”

c)        重新启动apache服务器即可生效。

2、jpgraph的配置

Jpgraph提供了一个专门用于配置jpgraph类库的文件jpg-config.inc.php在使用jpgraph前,可以通过修改文本文件来完成jpgraph的配置。

jpg-config.inc.php文件的配置需要修改以下两项:

a)       支持中文的配置

Jpgraph支持的中文标准字体可以通过修改chinese_ttf_font的设置来完成。

Define(‘chinese_ttf_font’,’bkai00mp.ttf’)

b)       默认图片格式的配置

根据当前PHP环境中支持的图片格式来设置默认的生成图片的格式。Jpgraph默认图片格式的配置可以通过修改DEFAULT_GFORMAT的设置来完成。默认值auto表示jpgraph将依次按照png,gif和jpeg的顺序来检索系统支持的图片格式。

DEFINE(“DEFAULT_GFORMAT”,”auto”)

注意:如果用户使用的为jpgraph2.3版本,那么不需要重新进行配置。

将下载的得到的jpgraph压缩文件解压至相应的路径

配置

首先需要注意的是:要想适用jpgraph,你的PHP必须开启了GD2扩展。

在jpgraph.php中有以下这样一段代码是设置字体文件路径的

if (!defined('TTF_DIR')) {

if (strstr( PHP_OS, 'WIN') ) {

$sroot = getenv('SystemRoot')

if( empty($sroot) ) {

$t = new ErrMsgText()

$msg = $t->Get(12,$file,$lineno)

die($msg)

}

else {

define('TTF_DIR', $sroot.'/fonts/')

}

} else {

define('TTF_DIR','/usr/share/fonts/truetype/')ç (我的作法是将windows下的fonts文件夹下的字体全部COPY到/usr/local/fonts/truetype)

}

}

要支持中文需要用到simhei.ttf和simsun.ttc这两个字体,在使用中文的时候需要使用SetFont(FF_SIMSUN,FS_BOLD)设置字体。

如果你的文件编码为utf-8,修改方法如下:

代码:

方法一,在程序中修改

$title="流量图"

$title = iconv("UTF-8", "gb2312", $title)

$graph->title->Set($title)

方法二,修改源文件jpgraph_ttf.inc.php

在第99-106行,改成下面这样子

elseif( $aFF === FF_SIMSUN ) {

// Do Chinese conversion

/*

if( $this->g2312 == null ) {

include_once 'jpgraph_gb2312.php'

$this->g2312 = new GB2312toUTF8()

}

return $this->g2312->gb2utf8($aTxt)

*/

return $aTxt

}

jpgraph默认显示汉字时是把汉字编码认为gb2312,转化为utf-8以后再显示。

这样的话,如果你的文件编码是gb2312,SetFont方法的第一个参数为FF_SIMSUN即可。

如果你是utf-8编码你还需要先把汉字编码转化为gb2312,这样你的汉字才可以正常显示。

使用

可以参照jpgraph-2.3.4\src\Examples中的例子。下面是一些常用的:

$graph->title->Set(‘设置图表的标题’)

$graph->xaxis->title->Set("设置X轴的标题")

$graph->yaxis->title->Set("设置Y轴的标题")

//设置字体 如果是中文,第一个参数一般设置为FF_SIMSUN

SetFont(FF_SIMSUN,FS_BOLD,14)

//如设置图表标题的字体

$graph->title->SetFont(FF_SIMSUN,FS_BOLD,14)

//设置颜色

SetColor('red')

Example:

例1. php Jpgraph绘制简单的X-Y坐标图

<?php

include ("../jpgraph.php")

include ("../jpgraph_line.php")

//将要用于图表创建的数据存放在数组中

$data = array(19,23,34,38,45,67,71,78,85,90,96,145)

 

$graph = new Graph(500,300)                                                    //创建新的Graph对象

$graph->SetScale("textlin")                                                    //设置刻度样式

$graph->img->SetMargin(30,30,80,30)                    //设置图表边界

$graph->title->Set("CDN Traffic Total")        //设置图表标题

$graph->title->SetColor("blue")

$graph->title->SetMargin(20)

 

// Create the linear plot

$lineplot=new LinePlot($data)              // 创建新的LinePlot对象

$lineplot->SetLegend("Line(Mbits)")   //设置图例文字

$lineplot->SetColor("red")                 // 设置曲线的颜色

 

// Add the plot to the graph

$graph->Add($lineplot)                     //在统计图上绘制曲线

 

// Display the graph

$graph->Stroke()                         //输出图像

?>

例6.

index.html

 

<html>

<head>

<title>CDN流量查询系统统计</title>

<meta http-equiv="Content-Type" content="text/html charset=gb2312">

<mce:style type="text/css"><!--

.style1 {

       font-size: 16px

       font-weight: bold

}

--></mce:style><style type="text/css" mce_bogus="1">.style1 {

       font-size: 16px

       font-weight: bold

}</style>

</head>

 

<body>

<form name="form1" method="get" action="result.php">

  <p align="center" class="style1"> CDN流量查询系统统计</p>

  <table width="300" border="1" align="center" cellpadding="3" cellspacing="3">

    <tr>

      <td width="85"><strong>查询年份</strong></td>

<td width="188"><select name="acct_yr" id="acct_yr">

  <option value="2009" selected>2008</option>

        <option value="2009" selected>2009</option>

      </select></td>

    </tr>

    <tr>

      <td><strong>起始月份</strong></td>

      <td><select name="start_mth" id="start_mth">

        <option selected>01</option>

        <option>02</option>

        <option>03</option>

        <option>04</option>

        <option>05</option>

        <option>06</option>

<option>07</option>

        <option>08</option>

        <option>09</option>

        <option>10</option>

        <option>11</option>

        <option>12</option>

 

      </select></td>

    </tr>

    <tr>

      <td><strong>终止月份</strong></td>

      <td><select name="end_mth" id="end_mth">

        <option >01</option>

        <option>02</option>

        <option>03</option>

        <option>04</option>

        <option>05</option>

        <option>06</option>

<option>07</option>

        <option>08</option>

        <option>09</option>

        <option>10</option>

        <option>11</option>

        <option selected >12</option>

        </select></td>

    </tr>

    <tr>

      <td><strong>统计图类别</strong></td>

      <td><select name="graph" id="graph">

        <option value="1" selected>线型图</option>

        <option value="2">柱形图</option>

        <option value="3">饼图</option>

        <option value="4">3D饼图</option>

      </select></td>

    </tr>

  </table>

  <p align="center">

    <input type="submit" value="Submit">

    <input type="reset" name="Submit2" value="Reset">

  </p>

</form>

</body>

</html>

 

       case 1:

              $graph = new Graph(400,300)                                               //创建新的Graph对象

              $graph->SetScale("textlin")                                             //设置刻度样式

              $graph->img->SetMargin(30,30,80,30)                     //设置图表边界

              $graph->title->SetFont(FF_SIMSUN,FS_BOLD)                                                 //设置字体

              $graph->title->Set("CDN流量查询")  //设置图表标题

              $lineplot=new LinePlot($data)

              $lineplot->SetLegend("Line")

              $lineplot->SetColor("red")

              $graph->Add($lineplot)

              break

       case 2:

              $graph = new Graph(400,300)    

              $graph->SetScale("textlin")         

              $graph->SetShadow()         

              $graph->img->SetMargin(40,30,20,40)

              $barplot = new BarPlot($data)                                                      //创建BarPlot对象

              $barplot->SetFillColor('blue')                                                       //设置颜色

              $barplot->value->Show()                                                                           //设置显示数字

              $graph->Add($barplot)                                                                              //将柱形图添加到图像中           

              $graph->title->Set("CDN流量查询")                                                                 //设置标题和X-Y轴标题

              $graph->xaxis->title->Set("月份")

              $graph->yaxis->title->Set("流 量(Gbits)")

              $graph->title->SetFont(FF_SIMSUN,FS_BOLD)                                                 //设置字体

              $graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD)

              $graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD)

              break

       case 3:

              $graph = new PieGraph(400,300)

              $graph->SetShadow()

             

              $graph->title->Set("CDN流量查询")

              $graph->title->SetFont(FF_SIMSUN,FS_BOLD)

              $pieplot = newhttps://www.guwengl.com#data)

              $pieplot->SetLegends($gDateLocale->GetShortMonth())          //设置图例

              $graph->Add($pieplot)

              break

      

       default:

              echo "graph参数错误"

              exit

}

$graph->Stroke()

?>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11239891.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存