我有使用chart js显示图表的js代码,并且在控制台中不显示错误消息,仅显示api的响应(json响应),这是我的代码:
Json回应
[{"id_barang":"0ca287da-9990-44db-a6f8-c6b05ec5d504","nama":"keju","jenis":"makanan","harga_beli":5000,"harga_jual":9000,"stok_awal":22,"transfer":0,"penjualan":14,"adjustment":0,"stok_akhir":8,"barang_laris":0,"uom":"pcs"},{"id_barang":"464e5c0e-4ed1-4382-958f-df8e4ec724cd","nama":"kornet","jenis":"makanan","harga_beli":8000,"harga_jual":12000,"stok_awal":90,"transfer":0,"penjualan":12,"adjustment":0,"stok_akhir":78,"barang_laris":0,"uom":"unit"},{"id_barang":"568ba244-dad5-4bbc-ad41-b38098c1da7a","nama":"baygon","jenis":"Lain_Lain","harga_beli":34000,"harga_jual":40000,"stok_awal":10,"transfer":0,"penjualan":6,"adjustment":0,"stok_akhir":4,"barang_laris":0,"uom":"unit"},{"id_barang":"5ef61405-6029-4f62-b2af-189f436e9315","nama":"sarden","jenis":"makanan","harga_beli":50000,"harga_jual":60000,"stok_awal":11,"transfer":0,"penjualan":5,"adjustment":0,"stok_akhir":6,"barang_laris":0,"uom":"unit"},{"id_barang":"76f27deb-d16c-41e3-b87f-0b23d0675c39","nama":"hit","jenis":"Lain_Lain","harga_beli":14000,"harga_jual":20000,"stok_awal":12,"transfer":0,"penjualan":8,"adjustment":0,"stok_akhir":4,"barang_laris":0,"uom":"unit"}]
var ctx = document.getElementById("canvas"); var chartdata = {
labels: [],
datasets: [{
label: 'data barang',
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: []
}]
};
var getData = function() {
$.ajax({
url: 'http://localhost:1111/BarangAll',
success: function(data) {
console.log(data);
chartdata.labels.push(data.nama);
chartdata.labels.push(data.stok_awal);
chartdata.update();
}
});
};
getData();
答案 0 :(得分:0)
我已经成功建立了条形图。这是代码。您可以在代码段中运行,但请确保http://localhost:1111/BarangAll
提供的数据没有任何跨域问题。
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.bundle.js"></script>
<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById('myChart').getContext('2d');
var dataset = {
type: 'bar',
data: {
labels: [],
datasets: [{
label: 'data barang',
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: []
}]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}]
}
}
}
var getData = function(chartdata) {
$.ajax({
url: 'http://localhost:1111/BarangAll',
success: function(data) {
//console.log(data);
data.forEach((el, i) => {
chartdata.data.labels.push(el.nama);
chartdata.data.datasets[0].data.push(el.stok_awal);
});
var myChart = new Chart(ctx, chartdata);
}
});
};
getData(dataset);
</script>