0

I use the piwik php api to generate data like this:

[   
{"label":"1680x1050","nb_visits":9,"nb_actions":53,"max_actions":27,"sum_visit_length":3051,"bounce_count":3,"nb_visits_converted":0,"sum_daily_nb_uniq_visitors":7,"sum_daily_nb_users":0,"segment":"resolution==1680x1050"},
{"label":"1440x900","nb_visits":1,"nb_actions":1,"max_actions":1,"sum_visit_length":0,"bounce_count":1,"nb_visits_converted":0,"sum_daily_nb_uniq_visitors":1,"sum_daily_nb_users":0,"segment":"resolution==1440x900"}
]

and i want to use chart.js to visualize this data, at the moment my code looks like this and doesn't work:

var chartjsData = [];
var chartjsLabel = [];

$.getJSON("piwik.php", function (json) {
 ///src = http://stackoverflow.com/questions/24696329/how-to-use-json-data-in-chart-js
 for (var i = 0; i < json.length; i++) {
    chartjsData.push(json[i].nb_visits);  
    chartjsLabel.push(json[i].label);      
 }   
});    

var barChartData = {
    labels :[chartjsLabel],datasets : [
       {
          fillColor : "rgba(220,280,220,0.5)",
          strokeColor : "rgba(220,220,220,1)",
          data : chartjsData
        }
      ]
    };

var ctx = document.getElementById("myChart").getContext("2d");

var myChart = new Chart(ctx, {
    type: 'bar',
    data: barChartData,
});

can maybe someone give me a working example how to work with chart.js and piwik's json data, or a hint how to get this working, thanks alot!

buckdanny
  • 347
  • 3
  • 19

1 Answers1

0

I got it like this:

var label = []; 
var data = [];  

$.getJSON("piwik.php", function (json) {
    for (var i = 0; i < json.length; i++) {
    label.push(json[i].label); 
    data.push(json[i].nb_visits);
    }
graph();
});


function graph(){
    var ctx = document.getElementById("myChart");
    var myChart = new Chart(ctx, {
        type: 'bar',
        data: {
            labels: label,
            datasets: [{
                label: '',
                data: data,
                backgroundColor: [
                    'rgba(255, 99, 132, 0.2)',
                ],
                borderColor: [
                    'rgba(255,99,132,1)',
                ],
                borderWidth: 1
            }]
        },
        options: {

        }
    });


};
buckdanny
  • 347
  • 3
  • 19