salve!
ho installato la libreria jpgraph ed ho fatto un esempio base con un semplice array numerico e tutto funziona.
poi ho provato a caricare i dati da db ma ho sempre questo messaggio di errore:
codice:
Cannot use autoscaling since it is impossible to determine a valid min/max value of Y-axis (only null values).
l'errore l'ho capito solo che nn ho capito come risolverlo.
questo il controller:
Codice PHP:
<?php
class Report extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->library('jpgraph');
}
public function index() {
if ($this->session->userdata('logged_in')) {
$this->load->model('report_model');
$data = array();
$data['titolo'] = 'Report';
$data['causali'] = $this->report_model->getCausali();
$gEntrate = $this->report_model->graphEntrate();
$graph = $this->jpgraph->linechart($gEntrate, 'This is a Line Chart');
$graph_temp_directory = 'temp';
$graph_file_name = 'test.png';
$graph_file_location = $graph_temp_directory . '/' . $graph_file_name;
$graph->Stroke('./' . $graph_file_location);
$data['graph'] = $graph_file_location;
$this->load->view('header', $data);
$this->load->view('report_view', $data);
$this->load->view('footer');
} else {
redirect('login', 'refresh');
}
}
}
e questo il model:
Codice PHP:
<?php
class Report_model extends CI_Model {
public function graphEntrate() {
$this->db->select('causali.causale_nome AS Causali, SUM(entrata_valore) AS Valore');
$this->db->from('entrate');
$this->db->join('causali', 'entrate.causale_id = causali.causale_id');
$this->db->group_by("Causali");
$this->db->order_by('Valore', 'DESC');
$this->db->limit(10);
$query = $this->db->get();
return $query->result();
}
}
questa query la uso in un vecchio sito che nn usa framework ed usa un'altra libreria grafica.
probabilmente è qua l'errore.
in pratica il risultato che dovrei ottenere è di avere i valori sull'asse Y e la causali sull'asse X.