web-dev-qa-db-fra.com

Chart.js: graphique non affiché

Je voudrais utiliser Chart.js pour créer de superbes graphiques dans une page Web.

Suite à la documentation, j'ai écrit le code comme suit:

<!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);
    </script>

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

</html>

Quelle est la raison pour laquelle le graphique n'apparaît pas?

13
vdenotaris

Tout d'abord, vous devez mettre votre script après la déclaration canvas. Après cela, supprimez les options de tarte (ou définissez-les).

<html>
<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>


    <h1>Chart.js Sample</h1>

    <canvas id="countries" width="600" height="400"></canvas>
    <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);
    </script>
</body>
19
Julien Malige

Ajoutez un div en dehors de l'élément canvas:

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

pieOptions est null :) supprimez-le simplement de votre appel .Pie ().

http://jsbin.com/decagicu/1/

Et gardez la console de script de votre navigateur ouverte, afin que vous puissiez voir tous les résultats précieux qu'elle vous fournit :)

1
Brunis