<?php
include ("minisp/spgraph.php");
include ("minisp/spgraph_line.php");


require('startinclude.php');
include "lecturadb_slow.php";
// comun para todos..
	$camaras_actual=array();
	$camaras=array();
	leer_camaras($camaras);
	//leer_camaras_actual($camaras_actual);
	$totalcamaras=count($camaras);
// fin comun



include('include/plchart.php'); 


$camara=parametro('camara',0);
$proceso=parametro('proceso',0);
$escala_minima=parametro('escala_minima',-55);
$escala_maxima=parametro('escala_maxima',55);
$rango=parametro('rango',86400); // 24 horas = 1440 minutos * 60 =86400seg
$titulo=parametro('titulo',$camara);


$totalcamaras=0;
$maxima=0;
$minima=0;
$estado=0;
$num_temp=0;

$nombre_sensor=array();


$temp=array();
$limite=array();
$sensor_visible=array();

//leer_temperatura2($temp,$camara); //,$maxima,$minima,$estado,$nombre_sensor,$num_temp,$limite);
$rango="";



leer_estados_historicos3($data,$camara,$proceso,$rango,$escala_minima*10,$escala_maxima*10);


//debug($data);

//$titulo=apc_fetch("grafico_leyenda0_1");


$cantidad_valores=count($data[0]);
$num_sensores=count($data)-1 ; // el cero es el eje x.

$label_total=10; // cantidad de labels total a mostrar.

$salto=floor($cantidad_valores/$label_total);
$salto=($salto==0)?1:$salto;

$salto=3;

$valores_total=30;
$saltov=floor($cantidad_valores/$valores_total);
$saltov=($saltov==0)?1:$saltov;

$saltov=1;

// leemos los sensores visibles.
for ($i=0;$i<=$num_sensores;$i++) {
	$sensor_visible[$i]=parametro('sv'.$i,1);
}




// etiquetas.
$contador=0;
for ($i=0;$i<$cantidad_valores;$i=$i+$saltov) {
	
	if ($contador%$salto==0) {
		$xetiqueta[$contador]=@$data[0][$i];
	} else {
		$xetiqueta[$contador]='';
	}
	$contador++;
}

	


// encabezado grafico.
$graph = new Graph(800,600,"auto");
$graph->img->SetMargin(40,20,40,80);	

$graph->img->SetAntiAliasing();
//$graph->SetScale("textlin",$escala_minima,$escala_maxima);
$graph->SetScale("textlin");
$graph->SetShadow();
$graph->title->Set($titulo);
$graph->title->SetFont(FF_FONT1,FS_BOLD);

// Add 10% grace to top and bottom of plot
$graph->yscale->SetGrace(10,10); 

$graph->xaxis->SetTickLabels($xetiqueta);
$graph->xaxis->SetFont(FF_ARIAL,FS_NORMAL,8);
$graph->xaxis->SetLabelAngle(45);

// datos..
for ($e=1;$e<=$num_sensores;$e++) {
	// $e=0 indica al eje x
	if ($sensor_visible[$e]) {
		$contador=0;
		for ($i=0;$i<$cantidad_valores;$i=$i+$saltov) {
			if (!isset($data[$e][$i])) {
//				$data[$e][$i]="";
			
			}
			$datay[$contador]=@$data[$e][$i];// rand(0,500)/10;
			
			$contador++;
		}
		//$graph->AddLine(new PlotLine(VERTICAL,5,"black",2)); 
		//debug($datay);
		$p1 = new LinePlot($datay);
		$p1->mark->SetType($e % 10);
		$p1->mark->SetFillColor($colores[$e+1]);
		$p1->mark->SetWidth(3);
		
		$p1->SetColor($colores[$e]);
		//$p1->SetColor("black");
		$p1->SetCenter();
		$graph->Add($p1);
	}
}
$graph->Stroke();

?>


