当前位置: 代码迷 >> PHP >> php的gdchart引见
  详细解决方案

php的gdchart引见

热度:395   发布时间:2012-12-20 09:53:21.0
php的gdchart介绍

gdchart是PECL的一个类库。也就是说它是一个C语言的扩展。虽然,目前PHP没有默认安装gdchart,但如果想使用,还是可以编译的。

gdchart最大的好处不仅是效率高,速度快,同时,另外一点则是,使用极为方便。以下是一些实例说明。

?

线形图:

<?php
Header("Content-type: image/png");
$chart = new gdchart(LINE);
$chart->add(array(2.5, 5.1, 8.6, 12.0, 15, 9, 8, 7));
$chart->add(array(5.0, 8.0, 9.2, 10.2, 7, 8, 10, 9));
$chart->add(array(8.0, 10.0, 14.0, 18.2, 16, 14, 12, 10));
$chart->labels = array("Jan","Feb","Mar","Apr","May","Jun","Jul", "Aug");
$chart->colors = array(0x1133aa, 0xaa3311, 0x33aa11);
$chart->out(640,480,IMG_PNG);
?>

?

自定义坐标线形图

<?php
Header("Content-type: image/png");
$chart = new gdchart(LINE);
$chart->add(array(2.5, 5.1, 8.6, 12.0, 15, 9, 8, 7));
$chart->add(array(5.0, 8.0, 9.2, 10.2, 7, 8, 10, 9));
$chart->add(array(8.0, 10.0, 14.0, 18.2, 16, 14, 12, 10));
$chart->labels = array("Jan","Feb","Mar","Apr","May","Jun","Jul", "Aug");
$chart->requested_ymin = 0;
$chart->ylabel_density = 25;
$chart->ylabel_fmt = "%.0f";
$chart->colors = array(0x001133aa, 0x00aa3311, 0x33aa11);
$chart->out(640,480,IMG_PNG);
?>

?

3D区域图

<?php
Header("Content-type: image/png");
$chart = new gdchart(AREA_3D);
$chart->depth = 5;
$chart->xtitle = "Fruits";
$chart->xtitle_color = 0xffff00;
$chart->bg_color = 0x112233;
$chart->xlabel_color = 0xffffff;
$chart->ylabel_color = 0xffffff;
$chart->colors = array(0x30ffff00, 0x30ff00ff, 0x3000ffff);
$chart->add(array(2.5, 5.1, 8.6, 12.0));
$chart->add(array(5.0, 8.0, 9.2, 10.2));
$chart->add(array(8.0, 10.0, 14.0, 18.2));
$chart->labels = array("Apples","Oranges","Melons","Pears");
$chart->out(640,480,IMG_PNG);
?>

?

饼图

<?php
Header("Content-type: image/png");
$chart = new gdchart(PIE_3D);
$chart->title = "This is a Sample Pie Chart";
$chart->title_font = "/usr/share/fonts/truetype/CANDY.ttf ";
$chart->title_ptsize = 24;
$chart->label_font = "/usr/share/fonts/truetype/Jester.ttf";
$chart->label_ptsize = 16;
$chart->edge_color = 0x000000;
$chart->labels = array("red","green\r\n(exploded)",
"lt blue","purple","missing","cyan","blue");
$chart->add(array(12.5, 20.1, 2.0, 22.0, 5.0, 18.0, 13.0));
$chart->missing = array(FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, FALSE);
$chart->explode = array(0,40,0,0,0,0,0);
$chart->pie_depth = 30;
$chart->perspective = 0;
$chart->pie_angle = 90;
$chart->label_line = false;
$chart->percent_labels = LABEL_ABOVE;
$chart->out(640,480,IMG_PNG);
?>

?3D高低位闭合图

<?php
Header("Content-type: image/png");
$chart = new gdchart(COMBO_HLC_AREA_3D);
$chart->title = "High-Low-Close On top of an Area(volume) Graph";
$chart->depth = 5.0;
$chart->angle = 50;
$chart->annotation_font_size = FONT_TINY;
$chart->anno_note = "Earnings\nReport";
$chart->anno_point = 8;
$chart->vol_color = 0x40806040;
$chart->grid = TICK_LABELS;
$chart->ylabel_density = 40;
$chart->hlc_style = HLC_CONNECTING | HLC_I_CAP | HLC_DIAMOND;
$chart->add_scatter(17.0, 3, SCATTER_TRIANGLE_UP, 0x50808060, 30);
$chart->add(array(17.8,17.1,17.3,17.2,17.1,17.3,17.3,17.3,17.1,17.5,17.4));
$chart->add(array(16.4,16.0,15.7,15.25,16.0,16.1,16.8,16.5,16.8,16.2,16.0));
$chart->add(array(17.0,16.8,16.9,15.9,16.8,17.2,16.8,17.0,16.9,16.4,16.1));
$chart->add_combo(
array(150.0,100.0,340.0,999.0,390.0,420.0,150.0,100.0,340.0,1590.0,700.0));
$chart->labels =
array("May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","Jan","Feb","Mar","Apr");
$chart->out(640,480,IMG_PNG);
?>

?

?

  相关解决方案