I am creating a bar chart using chart.js. but this chart look blurry in my screen. Below is my html and js code:
<canvas id="myChart" style="padding-left: 0;padding-right: 0;margin-left: auto; margin-right: auto; display: block;width: 90%;height:350px;"></canvas>
Js Code for create chart bar:
window.onload = function () {
var data = {
labels: [],
datasets: [
{
label: "My First dataset",
fillColor: "rgba(220,220,220,2)",
strokeColor: "rgba(220,220,220,2)",
pointColor: "rgba(220,220,220,2)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(220,220,220,2)"
},
{
label: "My Second dataset",
fillColor: "rgba(12, 18, 51, 1)",
strokeColor: "rgba(12, 18, 51, 1)",
pointColor: "rgba(12, 18, 51, 1)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(12, 18, 51, 1)"
}
]
};
var ctx = jQuery("#myChart")[0].getContext('2d');
var options = {
scaleBeginAtZero : true,
scaleShowGridLines : true,
scaleGridLineColor : "rgba(0,0,0,.05)",
scaleGridLineWidth : 1,
scaleShowHorizontalLines: true,
scaleShowVerticalLines: false,
barShowStroke : true,
barStrokeWidth : 2,
barValueSpacing : 10,
barDatasetSpacing : 1,
legendTemplate : "<ul class=\"<%=name.toLowerCase()%>-legend\"><% for (var i=0; i<datasets.length; i++){%><li><span style=\"background-color:<%=datasets[i].fillColor%>\"></span><%if(datasets[i].label){%><%=datasets[i].label%><%}%></li><%}%></ul>"
}
var myLineChart = new Chart(ctx).Bar(data, options);
<?php foreach($resultGraph as $share){?>
myLineChart.addData([<?php echo $share->shCOunt;?>, <?php echo $share->tt;?>], "<?php echo $share->post_date1;?>");
<?php } ?>
//myLineChart.addData([30, 50], "January");
}
</script>
When you delete a chart, the data you have used as the source of the table remains intact. Click the edge of chart's frame to highlight the chart. On the Home tab, in the Editing group, click Clear > Clear All. Tip: For faster results, you can also press Delete on your keyboard.
Google Charts is an interactive web service that creates graphical charts from user-supplied information. Chart. js is an open-source JavaScript library that allows you to draw different types of charts by using the HTML5 canvas element.
This means that when you resize the embedded Mimic, its width and height will maintain their relationship, for example, if you reduce the height, the width will also reduce automatically.
Make sure that you don't adding some css to the canvas element. In my case I found that I am adding border property to the canvas element what was causing the problem of blur on text and bars.
dont use something like that :
canvas { border: 1px solid #000 }
or with id like in your example :
#myChart { border: 1px solid #000 }
I faced this today on Chrome latest version, literally wasted 3 hours to chase it. Finally it turned out that issue only occurs only when the browser URL is localhost with some port. e.g. http://localhost:1700/
I browsed my app on a dummy host as http://www.localdomain.com/(by modifying hosts file) and issue is gone. :-)
Hope this info helps the developers to reproduce and fix the bug!!!
Try adding 0.5 to your x coordinate values. See explanation to this here
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With