PHP - Graficar datos con chartjs y codeigniter

 
Vista:
Imágen de perfil de Rouse

Graficar datos con chartjs y codeigniter

Publicado por Rouse (6 intervenciones) el 13/11/2018 21:09:40
Hola buen día necesito graficar una consulta por fechas en codeigniter mediante chartjs, pero no tengo idea de como enviar la consulta a el script, alguien puede ayudarme

Mi tabla en MySQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
TABLE relacion
Id_rel INT(10)
Folio_rel VARCHAR(10)
Fecha_rel DATE
Forpa_rel VARCHAR (50)
Importe_rel FLOAT
Estado_rel VARCHAR(30)
Banco_rel VARCHAR(20)
Numcheque_rel VARCHAR(6)
Fechapos_rel VARCHAR(20)
Factura_rel INT(20)
Perfil_user INT(10)
Numasig_rel VARCHAR(20)

Este es el controlador:
1
2
3
4
public function getgrafreg(){
    $result= $this->estadisticas_model->count_regs();//manda el dato al modelo                       
    echo json_encode($result);
}

Esta es mi consulta en el modelo:
1
2
3
4
5
6
public function count_regs(){
    $year=2018;
    $mes = 8;
    $this->db->from('asignacion')->where('MONTH(Fecha_asig)',$mes)->where('YEAR(Fecha_asig)',$year);
    return $this->db->count_all_results();
}

Esta es la 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
<div id="graficagral">
    <canvas id="myChart" width="400" height="150"></canvas>
</div>
 
<script>
 
    var paramFac = [];
        $.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 = [];
 
            $.each(obj,function(i,item){
                paramFac.push(item.Factura_rel);
            });
 
            $('#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:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],
                    datasets:[{
                            label: "Asignaciones",
                            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: paramFac,
                            spanGaps: false
                        }
                    ]
                },
                options:{
                    scales:{
                        yAxes: [{
                                ticks:{
                                    beginAtZero: true
                                }
                        }]
                    }
                }
            });
        });//
</script>

Intente hacerlo, pero no se en donde esta mi error
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