$lr = new LinearRegression($datax, $datay); list($stderr, $corr) = $lr->GetStat(); list($xd, $yd) = $lr->GetY(0, 19); // Create the graph $graph = new Graph\Graph(300, 250); $graph->SetScale('linlin'); // Setup title $graph->title->Set("Linear regression"); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); $graph->subtitle->Set('(stderr=' . sprintf('%.2f', $stderr) . ', corr=' . sprintf('%.2f', $corr) . ')'); $graph->subtitle->SetFont(FF_ARIAL, FS_NORMAL, 12); // make sure that the X-axis is always at the // bottom at the plot and not just at Y=0 which is // the default position $graph->xaxis->SetPos('min'); // Create the scatter plot with some nice colors $sp1 = new ScatterPlot($datay, $datax); $sp1->mark->SetType(MARK_FILLEDCIRCLE); $sp1->mark->SetFillColor("red"); $sp1->SetColor("blue"); $sp1->SetWeight(3); $sp1->mark->SetWidth(4); // Create the regression line $lplot = new Plot\LinePlot($yd); $lplot->SetWeight(2); $lplot->SetColor('navy'); // Add the pltos to the line $graph->Add($sp1); $graph->Add($lplot); // ... and stroke $graph->Stroke();
use Amenadiel\JpGraph\Plot; // Some (random) data $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); // Size of the overall graph $width = 350; $height = 250; // Create the graph and set a scale. // These two calls are always required $graph = new Graph\Graph($width, $height); $graph->SetScale('intlin'); $graph->SetShadow(); // Setup margin and titles $graph->SetMargin(40, 20, 20, 40); $graph->title->Set('Calls per operator'); $graph->subtitle->Set('(March 12, 2008)'); $graph->xaxis->title->Set('Operator'); $graph->yaxis->title->Set('# of calls'); $graph->yaxis->title->SetFont(FF_FONT1, FS_BOLD); $graph->xaxis->title->SetFont(FF_FONT1, FS_BOLD); $graph->yaxis->SetColor('blue'); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetColor('blue'); $lineplot->SetWeight(2); // Two pixel wide // Add an image mark scaled to 50% $lineplot->mark->SetType(MARK_IMG_DIAMOND, 'red', 0.5); // Add the plot to the graph $graph->Add($lineplot); // Display the graph $graph->Stroke();
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; // Some data $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); // Create the graph. These two calls are always required $graph = new Graph\Graph(350, 250); $graph->SetScale('textlin'); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetColor('blue'); // Add the plot to the graph $graph->Add($lineplot); // Display the graph $graph->Stroke();
// content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; // Some data $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); // Create the graph. These two calls are always required $graph = new Graph\Graph(350, 250); $graph->SetScale("textlin"); $graph->SetMargin(40, 40, 50, 50); // Setup the grid and plotarea box $graph->ygrid->SetLineStyle('dashed'); $graph->ygrid->setColor('darkgray'); $graph->SetBox(true); // Steup graph titles $graph->title->SetFont(FF_ARIAL, FS_BOLD, 12); $graph->title->Set('Using background image'); $graph->subtitle->SetFont(FF_COURIER, FS_BOLD, 11); $graph->subtitle->Set('"BGIMG_COPY"'); $graph->subtitle->SetColor('darkred'); // Add background with 25% mix $graph->SetBackgroundImage('heat1.jpg', BGIMG_COPY); $graph->SetBackgroundImageMix(25); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetColor("blue"); // Add the plot to the graph $graph->Add($lineplot); // Display the graph $graph->Stroke();
$graph->xaxis->title->SetFont(FF_FONT1, FS_BOLD); // Turn the tickmarks $graph->xaxis->SetTickSide(SIDE_DOWN); $graph->yaxis->SetTickSide(SIDE_LEFT); $graph->y2axis->SetTickSide(SIDE_RIGHT); $graph->y2axis->SetColor('black', 'blue'); $graph->y2axis->SetLabelFormat('%3d.0%%'); // Create a bar pot $bplot = new Plot\BarPlot($data_freq); // Create targets and alt texts for the image maps. One for each bar // (In this example this is just "dummy" targets) $targ = array("#1", "#2", "#3", "#4", "#5", "#6", "#7"); $alts = array("val=%d", "val=%d", "val=%d", "val=%d", "val=%d", "val=%d", "val=%d"); $bplot->SetCSIMTargets($targ, $alts); // Create accumulative graph $lplot = new Plot\LinePlot($data_accfreq); // We want the line plot data point in the middle of the bars $lplot->SetBarCenter(); // Use transperancy $lplot->SetFillColor('lightblue@0.6'); $lplot->SetColor('blue@0.6'); //$lplot->SetColor('blue'); $graph->AddY2($lplot); // Setup the bars $bplot->SetFillColor("orange@0.2"); $bplot->SetValuePos('center'); $bplot->value->SetFormat("%d"); $bplot->value->SetFont(FF_ARIAL, FS_NORMAL, 9); $bplot->value->Show(); // Add it to the graph $graph->Add($bplot);
$ydata2 = array(1, 19, 15, 7, 22, 14, 5, 9, 21, 13); // Size of the overall graph $width = 350; $height = 250; // Create the graph and set a scale. // These two calls are always required $graph = new Graph\Graph($width, $height); $graph->SetScale('intlin'); $graph->SetShadow(); // Setup margin and titles $graph->SetMargin(40, 20, 20, 40); $graph->title->Set('Calls per operator (June,July)'); $graph->subtitle->Set('(March 12, 2008)'); $graph->xaxis->title->Set('Operator'); $graph->yaxis->title->Set('# of calls'); $graph->yaxis->title->SetFont(FF_FONT1, FS_BOLD); $graph->xaxis->title->SetFont(FF_FONT1, FS_BOLD); // Create the first data series $lineplot = new Plot\LinePlot($ydata); $lineplot->SetWeight(2); // Two pixel wide // Add the plot to the graph $graph->Add($lineplot); // Create the second data series $lineplot2 = new Plot\LinePlot($ydata2); $lineplot2->SetWeight(2); // Two pixel wide // Add the second plot to the graph $graph->Add($lineplot2); // Display the graph $graph->Stroke();
$graph->subtitle->Set("100 data points, X-Scale: 'text'"); // Use built in font (don't need TTF support) $graph->title->SetFont(FF_FONT1, FS_BOLD); // Make the margin around the plot a little bit bigger then default $graph->img->SetMargin(40, 140, 40, 80); // Slightly adjust the legend from it's default position in the // top right corner to middle right side $graph->legend->Pos(0.03, 0.5, "right", "center"); // Display every 6:th tickmark $graph->xaxis->SetTextTickInterval(6); // Label every 2:nd tick mark $graph->xaxis->SetTextLabelInterval(2); // Setup the labels $graph->xaxis->SetTickLabels($databarx); $graph->xaxis->SetLabelAngle(90); // Create a red line plot $p1 = new Plot\LinePlot($datay); $p1->SetColor("red"); $p1->SetLegend("Pressure"); // Create the bar plot $b1 = new Plot\BarPlot($databary); $b1->SetLegend("Temperature"); $b1->SetFillColor("orange"); $b1->SetAbsWidth(8); // Drop shadow on bars adjust the default values a little bit $b1->SetShadow("steelblue", 2, 2); // The order the plots are added determines who's ontop $graph->Add($p1); $graph->AddY2($b1); // Finally output the image $graph->Stroke();
require_once '../../vendor/autoload.php'; require_once 'jpgraph/jpgraph_line.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $ydata = array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11); $ydata2 = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); $targ = array("#1", "#2", "#3", "#4", "#5", "#6", "#7", "#8", "#9", "#10"); $alt = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); // Create the graph. $graph = new Graph\Graph(300, 200); $graph->SetScale("textlin"); $graph->img->SetMargin(40, 20, 30, 40); $graph->title->Set("CSIM example with bar and line"); $graph->title->SetFont(FF_FONT1, FS_BOLD); // Setup axis titles $graph->xaxis->title->Set("X-title"); $graph->yaxis->title->Set("Y-title"); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->mark->SetType(MARK_FILLEDCIRCLE); $lineplot->mark->SetWidth(5); $lineplot->mark->SetColor('black'); $lineplot->mark->SetFillColor('red'); $lineplot->SetCSIMTargets($targ, $alt); // Create line plot $barplot = new Plot\BarPlot($ydata2); $barplot->SetCSIMTargets($targ, $alt); // Add the plots to the graph $graph->Add($lineplot); $graph->Add($barplot); $graph->StrokeCSIM();
$graph->ygrid->SetLineStyle('dashed'); $graph->ygrid->SetColor('gray'); $graph->xgrid->Show(); $graph->xgrid->SetLineStyle('dashed'); $graph->xgrid->SetColor('gray'); // Setup month as labels on the X-axis $graph->xaxis->SetTickLabels($months); $graph->xaxis->SetFont(FF_ARIAL, FS_NORMAL, 8); $graph->xaxis->SetLabelAngle(45); // Create a bar pot $bplot = new Plot\BarPlot($ydata); $bplot->SetWidth(0.6); $fcol = '#440000'; $tcol = '#FF9090'; $bplot->SetFillGradient($fcol, $tcol, GRAD_LEFT_REFLECTION); // Set line weigth to 0 so that there are no border // around each bar $bplot->SetWeight(0); $graph->Add($bplot); // Create filled line plot $lplot = new Plot\LinePlot($ydata2); $lplot->SetFillColor('skyblue@0.5'); $lplot->SetColor('navy@0.7'); $lplot->SetBarCenter(); $lplot->mark->SetType(MARK_SQUARE); $lplot->mark->SetColor('blue@0.5'); $lplot->mark->SetFillColor('lightblue'); $lplot->mark->SetSize(6); $graph->Add($lplot); // .. and finally send it back to the browser $graph->Stroke();
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $ydata = array(11, -3, -8, 7, 5, -1, 9, 13, 5, -7, -7); // Create the graph. These two calls are always required $graph = new Graph\Graph(300, 200); $graph->SetScale("textlin"); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetStepStyle(); // Add the plot to the graph $graph->Add($lineplot); $graph->img->SetMargin(40, 20, 20, 40); $graph->title->Set("Example 2.6 (Line with stepstyle)"); $graph->xaxis->title->Set("X-title"); $graph->xaxis->SetPos("min"); $graph->yaxis->title->Set("Y-title"); // Display the graph $graph->Stroke();
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $l1datay = array(11, 9, 2, 4, 3, 13, 17); $l2datay = array(23, 12, 5, 19, 17, 10, 15); $datax = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug'); // Create the graph. $graph = new Graph\Graph(400, 200); $graph->SetScale('textlin'); $graph->img->SetMargin(40, 130, 20, 40); $graph->SetShadow(); // Create the linear error plot $l1plot = new Plot\LinePlot($l1datay); $l1plot->SetColor('red'); $l1plot->SetWeight(2); $l1plot->SetLegend('Prediction'); // Create the bar plot $bplot = new Plot\BarPlot($l2datay); $bplot->SetFillColor('orange'); $bplot->SetLegend('Result'); // Add the plots to t'he graph $graph->Add($bplot); $graph->Add($l1plot); $graph->title->Set('Adding a line plot to a bar graph v1'); $graph->xaxis->title->Set('X-title'); $graph->yaxis->title->Set('Y-title'); $graph->title->SetFont(FF_FONT1, FS_BOLD); $graph->yaxis->title->SetFont(FF_FONT1, FS_BOLD);
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; require_once 'jpgraph/jpgraph_line.php'; $datay = array(5, 3, 11, 6, 3); $graph = new Graph\Graph(400, 300, 'auto'); $graph->SetScale("textlin"); $graph->title->Set('Images on top of bars'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 13); $graph->SetTitleBackground('lightblue:1.1', TITLEBKG_STYLE1, TITLEBKG_FRAME_BEVEL); $bplot = new Plot\BarPlot($datay); $bplot->SetFillColor("orange"); $bplot->SetWidth(0.5); $lplot = new Plot\LinePlot($datay); $lplot->SetColor('white@1'); $lplot->SetBarCenter(); $lplot->mark->SetType(MARK_IMG_LBALL, 'red'); $graph->Add($bplot); $graph->Add($lplot); $graph->Stroke();
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); // Create the graph. These two calls are always required $graph = new Graph\Graph(350, 250); $graph->SetScale("textlin"); $graph->img->SetMargin(30, 90, 40, 50); $graph->xaxis->SetFont(FF_FONT1, FS_BOLD); $graph->title->Set("Dashed lineplot"); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetLegend("Test 1"); $lineplot->SetColor("blue"); // Style can also be specified as SetStyle([1|2|3|4]) or // SetStyle("solid"|"dotted"|"dashed"|"lobgdashed") $lineplot->SetStyle("dashed"); // Add the plot to the graph $graph->Add($lineplot); // Display the graph $graph->Stroke();
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); // Create the graph. These two calls are always required $graph = new Graph\Graph(300, 200); $graph->SetScale("textlin"); $graph->img->SetMargin(50, 90, 40, 50); $graph->xaxis->SetFont(FF_FONT1, FS_BOLD); $graph->title->Set("Examples for graph"); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetLegend("Test 1"); $lineplot->SetColor("blue"); // Add the plot to the graph $graph->Add($lineplot); // Display the graph $graph->Stroke();
require_once 'jpgraph/jpgraph_log.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); $y2data = array(354, 200, 265, 99, 111, 91, 198, 225, 293, 251); // Create the graph. These two calls are always required $graph = new Graph\Graph(350, 200); $graph->SetScale("textlog"); $graph->SetY2Scale("log"); $graph->SetShadow(); $graph->SetMargin(40, 110, 20, 40); $graph->ygrid->Show(true, true); $graph->xgrid->Show(true, false); // Create the linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot2 = new Plot\LinePlot($y2data); $lineplot2->SetColor("orange"); $lineplot2->SetWeight(2); $graph->yaxis->scale->ticks->SupressFirst(); // Add the plot to the graph $graph->Add($lineplot); $graph->AddY2($lineplot2); $graph->title->Set("Example 8"); $graph->xaxis->title->Set("X-title"); $graph->yaxis->title->Set("Y-title"); $graph->title->SetFont(FF_FONT1, FS_BOLD); $graph->yaxis->title->SetFont(FF_FONT1, FS_BOLD); $graph->xaxis->title->SetFont(FF_FONT1, FS_BOLD); $lineplot->SetColor("blue"); $lineplot->SetWeight(2); $lineplot2->SetColor("orange");
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $l1datay = array(11, 9, 2, 4, 3, 13, 17); $l2datay = array(23, 12, 5, 19, 17, 10, 15); $datax = array("Jan", "Feb", "Mar", "Apr", "May"); // Create the graph. $graph = new Graph\Graph(400, 200); $graph->SetScale("textlin"); $graph->img->SetMargin(40, 130, 20, 40); $graph->SetShadow(); // Create the linear error plot $l1plot = new Plot\LinePlot($l1datay); $l1plot->SetColor("red"); $l1plot->SetWeight(2); $l1plot->SetLegend("Prediction"); // Create the bar plot $bplot = new Plot\BarPlot($l2datay); $bplot->SetFillColor("orange"); $bplot->SetLegend("Result"); // Add the plots to t'he graph $graph->Add($l1plot); $graph->Add($bplot); $graph->title->Set("Adding a line plot to a bar graph v1"); $graph->xaxis->title->Set("X-title"); $graph->yaxis->title->Set("Y-title"); $graph->title->SetFont(FF_FONT1, FS_BOLD); $graph->yaxis->title->SetFont(FF_FONT1, FS_BOLD);
<?php // content="text/plain; charset=utf-8" require_once '../../vendor/autoload.php'; use Amenadiel\JpGraph\Graph; use Amenadiel\JpGraph\Plot; $ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7); $y2data = array(354, 200, 265, 99, 111, 91, 198, 225, 293, 251); // Create the graph and specify the scale for both Y-axis $graph = new Graph\Graph(300, 240); $graph->SetScale("textlin"); $graph->SetShadow(); // Adjust the margin $graph->img->SetMargin(40, 40, 20, 70); // Create the two linear plot $lineplot = new Plot\LinePlot($ydata); $lineplot->SetStepStyle(); // Adjust the axis color $graph->yaxis->SetColor("blue"); $graph->title->Set("Example 6.2"); $graph->xaxis->title->Set("X-title"); $graph->yaxis->title->Set("Y-title"); $graph->title->SetFont(FF_FONT1, FS_BOLD); $graph->yaxis->title->SetFont(FF_FONT1, FS_BOLD); $graph->xaxis->title->SetFont(FF_FONT1, FS_BOLD); // Set the colors for the plots $lineplot->SetColor("blue"); $lineplot->SetWeight(2); // Set the legends for the plots $lineplot->SetLegend("Plot 1"); // Add the plot to the graph