Soy principiante en este Chart.js y quiero preguntar: ¿Cómo puedo ocultar las etiquetas y los valores 0 en el gráfico de barras? No puedo simplemente ocultar todo el conjunto de datos ya que estoy usando una tabla SQL para obtener los valores "en" Chart.Js. Solo quiero que el gráfico de barras se muestre solo si las etiquetas tienen el valor. Necesito tu ayuda
{ { $.post("datachartasr.php", function (data) { console.log(data); var intake = []; var active = []; var inactive = []; var deffered = []; var widthdrawn = []; var dis_ter_dereg = []; var missing = []; for (var i in data) { intake.push(data[i].intake); active.push(data[i].active); inactive.push(data[i].inactive); deffered.push(data[i].deffered); widthdrawn.push(data[i].widthdrawn); dis_ter_dereg.push(data[i].dis_ter_dereg); missing.push(data[i].missing); } var chartdata = { labels: intake, datasets: [ { label: 'Active Status', backgroundColor: '#1E90FF', borderColor: '#1E90FF', hoverBackgroundColor: '#1E90FF', hoverBorderColor: '#666666', data: active }, { label: 'Deferred Status', backgroundColor: '#708090', borderColor: '#708090', hoverBackgroundColor: '#708090', hoverBorderColor: '#666666', data: deffered }, ..... ..... ..... ] }; var graphTarget = $("#graphCanvas"); var barGraph = new Chart(graphTarget, { type: 'bar', data: chartdata, }); }); } }Puede tener la siguiente función dentro de las etiquetas de datos para ocultar el valor cero:
options: { plugins: { datalabels: { display: function(context) { return context.dataset.data[context.dataIndex] !== 0; // or >= 1 or ... } } } }Vea más sobre este problema aquí https://github.com/chartjs/chartjs-plugin-datalabels/issues/6