PHP イメージ関数を使う
画像を作ったり、グラフを描画する方法は、多くの種類がある。配列を読み込んで、Flashで表示するグラフや、PHPスクリプトで、画像を出力する事もできる。データの読み込みが、xmlであったとしても、パスしてやればいいという観点から、PHP+GDの組み合わせによる簡単なサンプルを、表示する。
※ GDは、jpg,png,gif等の画像を生成したり合成したり出来るが、画像内にリンクを張ったりする事はできません。
PHP イメージ関数
円グラフ
スマイル |
Flashで読み込む
xmlファイルを用意しておいて、そのファイルを読み込んで、フラッシュの挙動を変更する方法は広く使われている。
配列を読み込んだグラフ
上記のFlashグラフは、以下の配列を読み込んで表示しているといる例です。
$chart[ 'axis_category' ] = array ( 'size'=>10, 'color'=>"FFFFFF", 'alpha'=>75, 'font'=>"arial", 'bold'=>true, 'skip'=>0 ,'orientation'=>"diagonal_up" );
$chart[ 'axis_ticks' ] = array ( 'value_ticks'=>true, 'category_ticks'=>true );
$chart[ 'axis_value' ] = array ( 'alpha'=>90, 'orientation'=>"horizontal" );
$chart[ 'chart_border' ] = array ( 'top_thickness'=>0, 'bottom_thickness'=>3, 'left_thickness'=>3, 'right_thickness'=>0 );
$chart[ 'chart_data' ] = array ( array ( "","9","10","11","12","13","14","15","16","17","18","19","20","21","22" )
, array ( "H15 6",25000, 57000, 64000, 63000, 70000, 80000, 81000, 67000, 57000, 64000, 60000, 50000, 32000, 15000 )
, array ( "H16 6",25000, 57000, 64000, 71000, 72000, 80000, 75000, 63000, 55000, 54000, 52000, 50000, 25000, 15000 )
, array ( "H17 6",20000, 40000, 50000, 60000, 70000, 70000, 73000, 70000, 70000, 71000, 74000, 70000, 35000, 15000 )
, array ( "H18 6",25000, 55000, 72000, 70000, 72000, 75000, 75000, 72000, 72000, 72000, 65000, 50000, 30000, 20000)
, array ( "H15 7",25000, 42000, 56000, 61000, 63000, 65000, 65000, 60000, 52000, 54000, 55000, 50000, 35000, 20000)
, array ( "H16 7",25000, 50000, 70000, 70000, 75000, 75000, 72000, 70000, 70000, 65000, 60000, 50000, 35000, 20000)
, array ( "H17 7",25000, 50000, 70000, 70000, 75000, 75000, 72000, 70000, 70000, 65000, 60000, 50000, 35000, 20000)
, array ( "H18 7",20000, 40000, 55000, 60000, 70000, 70000, 65000, 60000, 55000, 60000, 51000, 41000, 30000, 10000)
, array ( "H15 8",20000, 40000, 58000, 65000, 62000, 67000, 65000, 62000, 51000, 53000, 55000, 50000, 35000, 15000)
, array ( "H16 8",20000, 45000, 63000, 57000, 63000, 63000, 74000, 66000, 55000, 57000, 54000, 46000, 34000, 20000)
, array ( "H17 8",25000, 50000, 55000, 65000, 62000, 62000, 70000, 65000, 60000, 50000, 46000, 40000, 25000, 10000)
, array ( "H18 8",15000, 40000, 45000, 55000, 65000, 65000, 60000, 56000, 55000, 60000, 50000, 32000, 20000, 10000)
);
$chart[ 'chart_grid_h' ] = array ( 'thickness'=>1, 'color'=>"000000", 'alpha'=>20 );
$chart[ 'chart_grid_v' ] = array ( 'thickness'=>1, 'color'=>"000000", 'alpha'=>20 );
$chart[ 'chart_rect' ] = array ( 'x'=>15, 'y'=>-65, 'width'=>425, 'height'=>300, 'positive_alpha'=>20 );
$chart[ 'chart_pref' ] = array ( 'rotation_x'=>20, 'rotation_y'=>40 );
$chart[ 'chart_transition' ] = array ( 'type'=>"blink", 'delay'=>.5, 'duration'=>1, 'order'=>"series" );
$chart[ 'chart_type' ] = "parallel 3d column" ;
$chart[ 'chart_value' ] = array ( 'color'=>"000000", 'background_color'=>"ffff00", 'alpha'=>90, 'size'=>12, 'position'=>"cursor" );
$chart[ 'legend_label' ] = array ( 'layout'=>"horizontal", 'font'=>"arial", 'bold'=>true, 'size'=>12, 'color'=>"000000", 'alpha'=>50 );
$chart[ 'legend_rect' ] = array ( 'x'=>25, 'y'=>250, 'width'=>350, 'height'=>50, 'margin'=>20, 'fill_color'=>"000000", 'fill_alpha'=>7, 'line_color'=>"000000", 'line_alpha'=>0, 'line_thickness'=>0 );
$chart[ 'series_color' ] = array ("ff8844","88ff00" );
$chart[ 'series_gap' ] = array ( 'bar_gap'=>50, 'set_gap'=>50) ;
SendChartData ( $chart );
|