<?php require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_windrose.php'; // Data can be specified using both ordinal idex of axis as well // as the direction label $data = array(1 => array(10, 10, 13, 7), 2 => array(2, 8, 10), 4 => array(1, 12, 22)); $data2 = array(4 => array(12, 8, 2, 3), 2 => array(5, 4, 4, 5, 2)); // Create a new small windrose graph $graph = new WindroseGraph(660, 400); $graph->SetShadow(); $graph->title->Set('Two windrose plots in one graph'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); $graph->subtitle->Set('(Using Box() for each plot)'); $wp = new WindrosePlot($data); $wp->SetType(WINDROSE_TYPE8); $wp->SetSize(0.42); $wp->SetPos(0.25, 0.55); $wp->SetBox(); $wp2 = new WindrosePlot($data2); $wp2->SetType(WINDROSE_TYPE16); $wp2->SetSize(0.42); $wp2->SetPos(0.74, 0.55); $wp2->SetBox(); $wp2->SetRangeColors(array('green', 'yellow', 'red', 'brown')); $graph->Add($wp); $graph->Add($wp2); $graph->Stroke(); ?>
// E 東 // NE 北東 // N 北 // NW 北西 // W 西 // SW 南西 // S 南 // SE 南東 $jp_CompassLbl = array('東', '', '北東', '', '北', '', '北西', '', '西', '', '南西', '', '南', '', '南東', ''); $wp->SetCompassLabels($jp_CompassLbl); #$wp->SetFont(FF_MINCHO,FS_NORMAL,15); // Localize the "Calm" text into Swedish and make the circle // slightly bigger than default $jp_calmtext = '平穏'; $wp->legend->SetCircleText($jp_calmtext); $wp->legend->SetCircleRadius(20); #$wp->legend->SetCFont(FF_MINCHO,FS_NORMAL,10); $wp->legend->SetMargin(5, 0); $wp->SetPos(0.5, 0.5); // Adjust the displayed ranges $ranges = array(1, 3, 5, 8, 12, 19, 29); $wp->SetRanges($ranges); // Set the scale to always have max value of 30 $wp->scale->Set(30, 10); #$wp->scale->SetFont(FF_VERA,FS_NORMAL,12); // Finally add it to the graph and send back to client $graph->Add($wp); $graph->Stroke(); ?>
// Data can be specified using both ordinal idex of axis as well // as the direction label $data2 = array('vsv' => array(12, 8, 2, 3), 6 => array(5, 4, 4, 5, 4)); $se_CompassLbl = array('O', 'ONO', 'NO', 'NNO', 'N', 'NNV', 'NV', 'VNV', 'V', 'VSV', 'SV', 'SSV', 'S', 'SSO', 'SO', 'OSO'); // Create a new small windrose graph $graph = new WindroseGraph(400, 400); $graph->SetMargin(25, 25, 25, 25); $graph->SetFrame(); $graph->title->Set('Example with background flag'); #$graph->title->SetFont(FF_VERA,FS_BOLD,14); //$graph->SetBackgroundImage('bkgimg.jpg',BGIMG_FILLFRAME); //$graph->SetBackgroundImageMix(90); $graph->SetBackgroundCFlag(28, BGIMG_FILLFRAME, 15); $wp2 = new WindrosePlot($data2); $wp2->SetType(WINDROSE_TYPE16); $wp2->SetSize(0.55); $wp2->SetPos(0.5, 0.5); $wp2->SetAntiAlias(false); $wp2->SetFont(FF_ARIAL, FS_BOLD, 10); $wp2->SetFontColor('black'); $wp2->SetCompassLabels($se_CompassLbl); $wp2->legend->SetMargin(20, 5); $wp2->scale->SetZFont(FF_ARIAL, FS_NORMAL, 8); $wp2->scale->SetFont(FF_ARIAL, FS_NORMAL, 9); $wp2->scale->SetLabelFillColor('white', 'white'); $wp2->SetRangeColors(array('green', 'yellow', 'red', 'brown')); $graph->Add($wp2); $graph->Stroke(); ?>
$graph->title->SetFont(FF_VERDANA, FS_BOLD, 14); $graph->title->SetColor('navy'); // Create the first plot $wp1 = new WindrosePlot($data); $wp1->SetType(WINDROSE_TYPE16); // This is the default encoding $wp1->SetDataKeyEncoding(KEYENCODING_ANTICLOCKWISE); $wp1->legend->Hide(); $wp1->SetPos($xpos1, $ypos1); $wp1->SetSize(0.5); // Create the second plot $wp2 = new WindrosePlot($data); $wp2->SetType(WINDROSE_TYPE16); $wp2->SetDataKeyEncoding(KEYENCODING_CLOCKWISE); $wp2->legend->Hide(); $wp2->SetPos($xpos2, $ypos1); $wp2->SetSize(0.5); $txt1 = new Text('KEYENCODING_ANTICLOCKWISE'); $txt1->SetFont(FF_COURIER, FS_BOLD, 12); $txt1->SetPos($xpos1, $ypos2); $txt1->SetAlign('center', 'top'); $txt2 = new Text('KEYENCODING_CLOCKWISE'); $txt2->SetFont(FF_COURIER, FS_BOLD, 12); $txt2->SetPos($xpos2, $ypos2); $txt2->SetAlign('center', 'top'); // Finally add it to the graph and send back to the client $graph->Add($wp1); $graph->Add($txt1); $graph->Add($wp2); $graph->Add($txt2); $graph->Stroke();
} $graph->Add($txtbox); // Create the windrose plot. $wp = new WindrosePlot($data); // Set background color for plot area $wp->SetColor('lightyellow'); // Add a box around the plot $wp->SetBox(); // Setup the colors for the ranges $wp->SetRangeColors($rangeColors); // Adjust the font and font color for scale labels $wp->scale->SetFont(FF_ARIAL, FS_NORMAL, 9); $wp->scale->SetFontColor('navy'); // Set the diameter and position for plot $wp->SetSize(190); $wp->SetPos(0.35, 0.53); $wp->SetZCircleSize(0.2); // Adjust the font and font color for compass directions $wp->SetFont(FF_ARIAL, FS_NORMAL, 10); $wp->SetFontColor('darkgreen'); // Adjust the margin to the compass directions $wp->SetLabelMargin(50); // Adjust grid colors $wp->SetGridColor('silver', 'blue'); // Add (m/s) text to legend $wp->legend->SetText('(m/s)'); $wp->legend->SetMargin(20, 5); // Add plot and send back to client $graph->Add($wp); $graph->Stroke(); ?>