예제 #1
0
<?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();
예제 #2
0
<?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();
예제 #3
0
//--------------------------------------------------------------
$mp = array();
$n = 2;
for ($i = 0; $i < $n; ++$i) {
    $mp[$i] = new MatrixPlot($data);
    $mp[$i]->colormap->SetMap($i);
    $mp[$i]->SetSize(300, 250);
    $mp[$i]->SetLegendLayout(1);
    $mp[$i]->SetAlpha(0.2);
    // Make the legend slightly longer than default
    $mp[$i]->legend->SetSize(20, 280);
}
$mp[1]->colormap->SetMap(3);
$hor1 = new LayoutHor(array($mp[0], $mp[1]));
$hor1->SetCenterPos(0.5, 0.5);
$graph->Add($hor1);
//--------------------------------------------------------------
// Add texts to the graph
//--------------------------------------------------------------
$txts = array(array('Temperature gradient', $width / 2, 80), array('Heat color map', 200, 110), array('High contrast map', 560, 110));
$n = count($txts);
$t = array();
for ($i = 0; $i < $n; ++$i) {
    $t[$i] = new Text($txts[$i][0], $txts[$i][1], $txts[$i][2]);
    $t[$i]->SetFont(FF_ARIAL, FS_BOLD, 14);
    $t[$i]->SetColor('white');
    $t[$i]->SetAlign('center', 'top');
}
$graph->Add($t);
//--------------------------------------------------------------
// Add Jpgraph logo to top left corner
예제 #4
0
<?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, 3);
$r = count($data);
$c = count($data[0]);
$width = 400;
$height = 400;
$graph = new MatrixGraph($width, $height);
$graph->title->Set('Adding an icon to the background');
$graph->title->SetFont(FF_ARIAL, FS_BOLD, 14);
$mp = new MatrixPlot($data, 1);
$mp->SetSize(0.6);
$icon = new IconPlot('icon.jpg', $width - 1, $height - 1, 0.8, 50);
$icon->SetAnchor('right', 'bottom');
$graph->Add($icon);
$graph->Add($mp);
$graph->Stroke();