PHP - Como graficar datos por fecha con chartjs en MVC

 
Vista:
Imágen de perfil de Rosario Angeles

Como graficar datos por fecha con chartjs en MVC

Publicado por Rosario Angeles (6 intervenciones) el 31/10/2018 22:57:54
Hola buen día tengo un problema no puedo graficar datos de una tabla en MySQL con codeigniter, solo eh podido graficarlos con dos datos de la tabla, pero quiero graficar la suma de los saldos por meses y no tengo idea de como hacerlo ¿pueden ayudarme?

Mi tabla en MySQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
CREATE TABLE `pago` (
  `Id` int(30) ,
  `Folio` varchar(10) ,
  `Fecha` date ,
  `Forma_pago` varchar(50) ,
  `Importe` float ,
  `Estado` varchar(30),
  `Banco` varchar(20) ,
  `Numchequel` varchar(6) ,
  `Fecha_posfe` varchar(50) ,
  `Factura_rel` int(20),
  `Perfil_user` int(10),
  `Numasig_rel` varchar(20)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

VISTA
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<h1 class="page-header"><span class="glyphicon glyphicon-usd"></span>
          Saldos
        <small>Estadísticas</small>
</h1>
 
<br>
<div id="graficagral">
    <canvas id="myChart" width="400" height="150"></canvas>
</div>
<br>
 
<script>
    var paramFac = [];
    var paramMonto = [];
        $.post("<?php echo base_url();?>con_estadisticas/getgrafsal",//llama al controlador y esta a su vez al modelo que contiene la consulta SQL
        function(data){
            var obj = JSON.parse(data);
 
            paramFac = [];
            paramMonto = [];
 
            $.each(obj,function(i,item){
                paramFac.push(item.Factura);
                paramMonto.push(item.Importe);
            });
 
            $('#myChart').remove(); //borra la grafica (para que no se repitan los datos)
            $('#graficagral').append("<canvas id='myChart' width='400' height='150'></canvas>");  //vuelve a generar la grafica 
 
            var ctx = $("#myChart");
            var myChart = new Chart(ctx,{
                type: 'line',
                data: {
                    labels: paramFac,//["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],
                    datasets:[
                        {
                            label: "Monto de saldos",
                            fill: true,
                            lineTension: 0.1,
                            backgroudColor: "rgba(75,192,192,0.4)",
                            borderColor: "rgba(75,192,192,1)",
                            borderCapStyle: 'butt',
                            borderDash:[],
                            borderDashOffset: 0.0,
                            borderJoinStyle: 'miter',
                            pointBorderColor: "rgba(75,192,192,1)",
                            pointBackgroundColor: "#fff",
                            pointBorderWidth: 10,
                            pointHoverRadius: 5,
                            pointHoverBackgroudColor: "rgba(75,192,192,1)",
                            pointHoverBorderColor: "rgba(220,220,220,1)",
                            pointHoverBorderWidth: 5,
                            pointRadius: 1,
                            pointHitRadius: 10,
                            data: paramMonto,
                            spanGaps: false
                        }
                    ]
                },
                options:{
                    scales:{
                        yAxes: [{
                                ticks:{
                                    beginAtZero: true
                                }
                        }]
                    }
                }
            });
        });//
</script>

CONTROLADOR ( llamado con_estadisticas)
1
2
3
4
5
//----------- GRAFICA DE SALDOS --------------------------------       
        public function getgrafsal(){
            $result= $this->estadisticas_model->count_salds();//manda el dato al modelo                       
            echo json_encode($result);
        }

MODELO (llamado estadisticas_model)
1
2
3
4
5
6
public function count_salds(){
         $this->db->select('*');
		$this->db->from('pago');
		$query = $this->db->get();
		return $query->result();
    }
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder