javascripthtmlhtml5-canvas

Chart.js: chart not displayed


I'd like to use Chart.js to create stunning charts into a webpage.

Following the documentation, I wrote the code as follows:

    <!DOCTYPE html>
    <html lang="en">

    <head>
        <meta charset="utf-8"/>
        <title>Chart.js demo</title>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/0.2.0/Chart.min.js" type="text/javascript"></script>
    </head>

    <body>
        <script>
            var pieData = [
                {
                    value: 20,
                    color:"#878BB6"
                },
                {
                    value : 40,
                    color : "#4ACAB4"
                },
                {
                    value : 10,
                    color : "#FF8153"
                },
                {
                    value : 30,
                    color : "#FFEA88"
                }
            ];
            // Get the context of the canvas element we want to select
            var countries= document.getElementById("countries").getContext("2d");
            new Chart(countries).Pie(pieData, pieOptions);
        </script>

        <h1>Chart.js Sample</h1>
        <canvas id="countries" width="600" height="400"></canvas>
    </body>

    </html>

Which is the reason why the chart doesn't appear?


Solution

  • Add a div outside the canvas element:

    <div><canvas id="countries" width="600" height="400"></canvas></div>