Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Nao estou a conseguir criar um grafico circular que me mostre o valor que foi gasto em cada produto que um determinado utilizador comprou
<div id="chart-container">
<canvas id="mycanvas"></canvas>
</div>
<script>
$(document).ready(function(){
$.ajax({
url: "data.php",
method: "POST",
type : 'nif',
success: function(data) {
console.log(data);
var nome = [];
var descricao = [];
for(var i in data) {
nome.push("Player " + data[i].nome);
descricao.push(data[i].descricao);
}
var chartdata = {
labels: player,
datasets : [
{
label: 'Player Score',
backgroundColor: 'rgba(200, 200, 200, 0.75)',
borderColor: 'rgba(200, 200, 200, 0.75)',
hoverBackgroundColor: 'rgba(200, 200, 200, 1)',
hoverBorderColor: 'rgba(200, 200, 200, 1)',
data: score
}
]
};
var ctx = $("#mycanvas");
var barGraph = new Chart(ctx, {
type: 'bar',
data: chartdata
});
},
error: function(data) {
console.log(data);
}
});
}); </script>
<?php
//setting header to json
header('Content-Type: application/json');
require_once ('../configurations/config.php');
//database
$id=$_POST['nif'];
//get connection
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
if(!$mysqli){
die("Connection failed: " . $mysqli->error);
}
//query to get data from the table
$query = sprintf("SELECT reservas.idreserva,servicos.id,servicos.nome,servicos.descricao,reservas.quantidade,servicos.precosiva,servicos.descontos,servicos.iva,servicos.valordesc,servicos.valoriva,servicos.precototal FROM servicos INNER JOIN reservas ON servicos.id=reservas.id_servico where reservas.id_user='$id'");
//execute query
$result = $mysqli->query($query);
//loop through the returned data
$data = array();
foreach ($result as $row) {
$data[] = $row;
}
//free memory associated with result
$result->close();
//close connection
$mysqli->close();
//now print the data
print json_encode($data);
acabei por arranjar outro mas obrigada
mesmo assim não estou a conseguir buscar os dados da minha tabela e postar num grafico
segue-se o codigo o que estou a fazer de errado
<script>
angular.module("app", ["chart.js"]).controller("DoughnutCtrl", function ($scope,$http,$timeout) {
$scope.show_data = function() {
$http.get("data.php")
.success(function(data) {
$scope.names = data;
});
}
//$scope.labels =
//$scope.labels = ["Download Sales", "In-Store Sales", "Mail-Order Sales"];
//$scope.data = [300, 500, 100];
});</script>
<div class="col-lg-6 col-sm-12" id="doughnut-chart" ng-controller="DoughnutCtrl" ng-init="show_data()">
<div class="panel panel-default">
<div class="panel-heading"> Quantidade Total de Serviços Comprados</div>
<div class="panel-body" ng-repeat="x in names">
<canvas id="doughnut" class="chart chart-doughnut chart-xs"
chart-data={{x.quantidade}}
chart-labels={{x.nome}}></canvas>
</div>
</div>
</div>
melhor coisa que eu ví para fazer graficos:
https://www.highcharts.com/demo/pie-basic