foreach ($row as $key => $blob) { $data = unpack("f*", $blob); foreach ($data as $id => $value) { //echo "\r\n"; //print_r($id); echo "\r\n"; //print_r($value); array_push($output[$id - 1], $value); #$output = array_fill($id, 1, array_push( } } } //print_r($output); // Some (random) matrix $data = array(array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)); //print_r($data); // Setup a bsic matrix graph and title $graph = new MatrixGraph(1000, 600); $graph->title->Set('Basic matrix example'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); // Create a matrix plot using all default values $mp = new MatrixPlot($output); $mindataval = -2; // The minimum data value $maxdataval = 2; // The maximum data value $contrast = 0; // Reduce the contrast by 50% $adj = ($maxdataval - $mindataval + 1) * $contrast / 2; $mp->colormap->SetRange($mindataval + $adj, $maxdataval - $adj); $graph->Add($mp); $graph->Stroke('./test.png');
<?php require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_matrix.php'; require_once 'jpgraph/jpgraph_iconplot.php'; $data = array(array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)); // Do the meshinterpolation once for the data doMeshInterpolate($data, 4); $r = count($data); $c = count($data[0]); $width = 400; $height = 400; $graph = new MatrixGraph($width, $height); $graph->title->Set('Adding a background image'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); // Add a stretched background image $graph->SetBackgroundImage('ironrod.jpg', BGIMG_FILLFRAME); $graph->SetBackgroundImageMix(50); $mp = new MatrixPlot($data, 1); $mp->SetSize(0.6); $mp->SetCenterPos(0.5, 0.5); $mp->SetLegendLayout(1); $graph->Add($mp); $graph->Stroke();
require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_matrix.php'; require_once 'jpgraph/jpgraph_iconplot.php'; $data = array(array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)); // Interpolate the data a factor of 4 to get some mroe // data points doMeshInterpolate($data, 4); // Setup a timer $timer = new Util\JpgTimer(); $timer->Push(); //-------------------------------------------------------------- // Setup a basic matrix graph //-------------------------------------------------------------- $width = 740; $height = 500; $graph = new MatrixGraph($width, $height); $graph->SetMargin(1, 2, 70, 1); $graph->SetColor('white'); $graph->SetMarginColor('#fafafa'); $graph->title->Set('Intro matrix graph'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); // Setup the background image $graph->SetBackgroundImage('fireplace.jpg', BGIMG_FILLPLOT); $graph->SetBackgroundImageMix(50); // Setup the timer in the right footer $graph->footer->SetTimer($timer); $graph->footer->right->SetColor('white'); //-------------------------------------------------------------- // Create the 2 matrix plots //-------------------------------------------------------------- $mp = array();
<?php // content="text/plain; charset=utf-8" require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_matrix.php'; $data = array(array(0, null, 2, 3, 4, 5, 6, 7, 8, 9, 10, 8, 6, 4, 2), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 8, 5, 9, 2), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 4, 5, 7), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0, 8, 6, 4, 2), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10, 3, 2, 7, 2), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10, 5, 3, 9, 1), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0, 6, 5, 10, 2), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, NULL, 8, 6, 4, 2)); for ($i = 0; $i < count($data[0]); ++$i) { $xlabels[$i] = sprintf('xlabel: %02d', $i); } for ($i = 0; $i < count($data); ++$i) { $ylabels[$i] = sprintf('ylabel: %02d', $i); } // Setup a nasic matrix graph $graph = new MatrixGraph(400, 250); $graph->SetMarginColor('white'); $graph->title->Set('Adding labels on the edges'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); // Create one matrix plot $mp = new MatrixPlot($data, 1); $mp->SetModuleSize(13, 15); $mp->SetCenterPos(0.35, 0.45); $mp->colormap->SetNullColor('gray'); // Setup column lablels $mp->collabel->Set($xlabels); $mp->collabel->SetSide('bottom'); $mp->collabel->SetFont(FF_ARIAL, FS_NORMAL, 8); $mp->collabel->SetFontColor('darkgray'); // Setup row lablels $mp->rowlabel->Set($ylabels); $mp->rowlabel->SetSide('right'); $mp->rowlabel->SetFont(FF_ARIAL, FS_NORMAL, 8);
<?php require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_matrix.php'; $data = array(array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)); doMeshInterpolate($data, 4); $graph = new MatrixGraph(850, 580); $graph->title->Set('Matrix layout example'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); $mp = array(); $n = 5; for ($i = 0; $i < $n; ++$i) { $mp[$i] = new MatrixPlot($data); $mp[$i]->colormap->SetMap($i); if ($i < 2) { $mp[$i]->SetSize(0.35); } else { $mp[$i]->SetSize(0.21); } // We need to make the legend a bit smaller since by // defalt has a ~45% height $mp[$i]->legend->SetModuleSize(15, 2); } $hor1 = new LayoutHor(array($mp[0], $mp[1])); $hor2 = new LayoutHor(array($mp[2], $mp[3], $mp[4])); $vert = new LayoutVert(array($hor1, $hor2)); $vert->SetCenterPos(0.45, 0.5); $graph->Add($vert); $graph->Stroke();
// content="text/plain; charset=utf-8" require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_matrix.php'; require_once 'jpgraph/jpgraph_plotline.php'; $data = array(array(0, null, 2, 3, 4, 5, 6, 7, 8, 9, 10, 8, 6, 4, 2), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 8, 5, 9, 2), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 4, 5, 7), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0, 8, 6, 4, 2), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10, 3, 2, 7, 2), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10, 5, 3, 9, 1), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0, 6, 5, 10, 2), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, NULL, 8, 6, 4, 2)); $nx = count($data[0]); $ny = count($data); for ($i = 0; $i < $nx; ++$i) { $collabels[$i] = sprintf('column label: %02d', $i); } for ($i = 0; $i < $ny; ++$i) { $rowlabels[$i] = sprintf('row label: %02d', $i); } // Setup a nasic matrix graph $graph = new MatrixGraph(400, 350); $graph->SetBackgroundGradient('lightsteelblue:0.8', 'lightsteelblue:0.3'); $graph->title->Set('Matrix with lines'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 18); $graph->title->SetColor('white'); // Create two lines to add as markers $l1 = new PlotLine(VERTICAL, 5, 'lightgray:1.5', 4); $l2 = new PlotLine(HORIZONTAL, 3, 'lightgray:1.5', 4); // Create one matrix plot $mp = new MatrixPlot($data, 1); $mp->SetModuleSize(13, 15); $mp->SetCenterPos(0.35, 0.6); $mp->colormap->SetNullColor('gray'); // Add lines $mp->AddLine($l1); $mp->AddLine($l2);
<?php require_once 'jpgraph/jpgraph.php'; require_once 'jpgraph/jpgraph_matrix.php'; require_once 'jpgraph/jpgraph_iconplot.php'; $data = array(array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), array(10, 9, 8, 17, 6, 5, 4, 3, 2, 1, 0), array(0, 1, 2, 3, 4, 4, 9, 7, 8, 9, 10), array(8, 1, 2, 3, 4, 8, 3, 7, 8, 9, 10), array(10, 3, 5, 7, 6, 5, 4, 3, 12, 1, 0), array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)); $nrow = count($data); $ncol = count($data[0]); $width = 350; $height = 300; $graph = new MatrixGraph($width, $height); $graph->title->Set('Add ine row/col labels'); $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14); $mp = new MatrixPlot($data, 1); $mp->SetSize(0.55); $mp->SetCenterPos(0.45, 0.45); $rowtitles = array(); for ($i = 0; $i < $nrow; ++$i) { $rowtitles[$i] = sprintf('Row: %02d', $i); } $coltitles = array(); for ($i = 0; $i < $ncol; ++$i) { $coltitles[$i] = sprintf('Col: %02d', $i); } $mp->rowlabel->Set($rowtitles); $mp->rowlabel->SetFont(FF_ARIAL, FS_NORMAL, 10); $mp->rowlabel->SetFontColor('blue'); $mp->rowlabel->SetSide('left'); $mp->collabel->Set($coltitles); $mp->collabel->SetFont(FF_ARIAL, FS_NORMAL, 10); $mp->collabel->SetFontColor('darkred');