PHP100 2019-03-28
本文实例讲述了php图形jpgraph操作。分享给大家供大家参考,具体如下:
<?php include ("src/jpgraph.php"); include("src/jpgraph_bar.php"); include ("src/jpgraph_line.php"); //设置显示的数据数组; //调用类库 //设置图像的大小 $graph = new Graph(400,200,"auto"); $graph->SetScale("textlin"); //设置图形的边距 $graph->img->SetMargin(40,180,40,40); //设置图形的背景图片,填充方式有:BGIMG_FILLPLOT, BGIMG_FILLFRAME, BGIMG_COPY $graph->SetBackgroundImage("abc.jpg",BGIMG_FILLPLOT); $graph->img->SetAngle(45); //设置图形在图像中的角度 //设置背景图片的对比度,must be between -1 <= x <= 1, (0,0)=original image $graph->AdjBackgroundImage(0,0); //设置投影; //$graph->SetShadow(); //设置标题 $graph->title->Set("test image"); //设置标题字体样式 $graph->title->SetFont(FF_FONT1,FS_BOLD); //设置标题的边距 $graph->title->SetMargin(3); //设置图列的位置 $graph->legend->Pos(0.05,0.5,"right","center"); //设置图列的投影,颜色 $graph->legend->SetShadow('[email protected]'); $graph->legend->SetFillColor('[email protected]'); //设置x轴的标记 $graph->xaxis->SetTickLabels($label_x); //设置X轴的显示值的角度; $graph->xaxis->SetLabelAngle(30); //设置x轴标题和字体颜色 $graph->xaxis->title->Set('Year 2006'); $graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD); $graph->xaxis->title->SetColor('white'); //设置x轴的字体和颜色 $graph->xaxis->SetFont(FF_FONT1,FS_BOLD); $graph->xaxis->SetColor('yellow'); //设置y轴的字体和颜色 $graph->yaxis->SetFont(FF_FONT1,FS_BOLD); $graph->yaxis->SetColor('yellow'); //设置是否显示格子。默认为显示; //$graph->ygrid->Show(false); //设置格子的颜色和粗细。值越小,格子越粗。 $graph->ygrid->SetColor('[email protected]'); //设置y轴更优美一些 $graph->yaxis->scale->SetGrace(20); //设置图列的数据 $bplot1 = new BarPlot($datay1); $bplot2 = new BarPlot($datay2); //设置图列的填充颜色 $bplot1->SetFillColor('[email protected]'); $bplot2->SetFillColor('[email protected]'); //设置值的格式 $bplot1->value->SetFormat('%d'); //设置图列标签 $bplot1->SetLegend('Label 1'); $bplot2->SetLegend('Label 2'); //设置图列在图中的阴影 $bplot1->SetShadow('[email protected]'); $bplot2->SetShadow('[email protected]'); //生成图列 $gbarplot = new GroupBarPlot(array($bplot1,$bplot2)); $gbarplot->SetWidth(0.9); $graph->Add($gbarplot); //生成图形 $graph->Stroke(); //上面所说的时在生成柱形图,当生成线性图时用下面的方法 $p1 = new LinePlot($datay); $p1->mark->SetType(MARK_FILLEDCIRCLE); $p1->mark->SetFillColor("red"); $p1->mark->SetWidth(4); $p1->SetColor("blue"); $p1->SetCenter(); $p1->SetLegend("Triumph Tiger -98"); $graph->Add($p1); $p2 = new LinePlot($data2y); $p2->mark->SetType(MARK_STAR); $p2->mark->SetFillColor("red"); $p2->mark->SetWidth(4); $p2->SetColor("red"); $p2->SetCenter(); $p2->SetLegend("New tiger -99"); $graph->Add($p2); // Style can also be specified as SetStyle([1|2|3|4]) or // SetStyle("solid"|"dotted"|"dashed"|"lobgdashed") $lineplot->SetStyle("dashed");//设置线的样式 $graph->yaxis->scale->SetGrace(20); //设置y轴更优美一些 ?>
2.柱形图和饼状图举例
if($tag == 1) { $graph = new Graph(600,400,"auto"); $graph->SetScale("textlin"); $graph->setMarginColor('lightblue'); $graph->SetShadow(); $graph->setMargin(30,100,30,60); //设置标题; $graph->title->set("文章分类汇总"); $graph->title->SetMargin(3); $graph->title->setfont(FF_SIMSUN,FS_BOLD); $graph->title->setcolor('[email protected]'); $graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD); $graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD); $graph->xaxis->SetFont(FF_SIMSUN,FS_NORMAL); $graph->xaxis->SetColor('darkblue','black'); $graph->xaxis->SetTickLabels($name); $graph->xaxis->SetLabelAngle(30); $bplot = new BarPlot($article_num); $bplot->SetFillColor("orange"); $bplot->value->SetFormat('%d'); $bplot->SetShadow('darkgray'); $bplot->value->show(); $graph->legend->SetFont(FF_SIMSUN,FS_BOLD); $bplot->SetLegend("文章数"); $graph->Add($bplot); $graph->Stroke(); } else { $graph1 = new PieGraph(600,400,"auto"); $graph1->SetScale("textlin"); $graph1->SetShadow(); $graph1->title->setFont(FF_SIMSUN,FS_BOLD); $graph1->title->set("用户文章饼形图"); $graph1->setMargin(30,100,30,60); $p1 = new pieplot3d($article_num); $p1->setAngle(80); $p1->setsize(0.5); $p1->setShadow(); $p1->ExplodeSlice(2); $p1->SetCenter(0.4); $graph1->legend->SetFont(FF_SIMSUN,FS_NORMAL); $graph1->legend->setshadow(); $p1->SetLegends($name); $graph1->Add($p1); $graph1->Stroke(); } //生成本地图片 $graph->Stroke("路径/文件名.png");
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。