Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Gráfico de Barras

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <canvas width="600" height="400"></canvas>
</body>
<script>
    function dibujarRectangulo(x, y, base, altura, color) {
        var pantalla = document.querySelector("canvas");
        var pincel = pantalla.getContext("2d");

        pincel.fillStyle=color;
        pincel.fillRect(x,y, base, altura);
        pincel.strokeStyle="black";
        pincel.strokeRect(x,y, base, altura);
    }

    function escribirTexto(x , y, texto) {
        var pantalla = document.querySelector("canvas");
        var pincel = pantalla.getContext("2d");

        pincel.font="15px Georgia";
        pincel.fillStyle="black";
        pincel.fillText(texto, x, y);    
    }
    var serie2009 = [6, 47, 41, 3, 3];
    var serie2019 = [81, 9, 3, 3, 4];
    var colores = ["blue","green","yellow", "red","gray"];

    function dibujarBarra(x,y,serie,colores,texto){
        escribirTexto(x,y-10,texto)
    for(i=0;i<serie.length;i++){
            dibujarRectangulo(x, y, 50,serie[i], colores[i])
            y=y+serie[i]
        }

    }

    dibujarBarra(50, 50, serie2009, colores, "2009");
    dibujarBarra(150, 50, serie2019, colores, "2019");
</script>
</html>
1 respuesta
<canvas width="600" height="400"> </canvas>

<script>
    // llamar el objeto canvas y luego el contexto de ese objeto
    var pantalla = document.querySelector("canvas");
    var pincel = pantalla.getContext("2d");       

    // colores de las barras
    let colores = ["blue","green","yellow", "red","gray", "purple", "orange", "black"];  

        // Dibujar los graficos de barras
    function dibujarBarras (x, y, arrAño, texto){
        pincel.strokeStyle = "lightgrey";   // strokeStyle: asigna un color de linea perimetral estandar
        let h1 = 0;
        let h2 = 0;
        for (let i = 0; i < arrAño.length; i++){        
            pincel.fillStyle = colores[i];

            // barra 2009
            pincel.fillRect(x,(y + h1),75,arrAño[i]*2)
            h1 += arrAño[i]*2
            // barra 2019
            pincel.fillRect(x,(y + h2),75,arrAño[i]*2)
            h2 += arrAño[i]*2

            pincel.font="15px Georgia";
            pincel.fillStyle="black";
            pincel.fillText(texto, x+5, y-10);  
        } 
    }

    // Porcentaje de uso de los navegadores en los años 2009 y 2019
    let arr2009 = [6, 47, 41, 3, 3];
    let arr2019 = [81, 9, 3, 3, 4];  

    dibujarBarras(50,50,arr2009,"Año 2009");
    dibujarBarras(175,50,arr2019,"Año 2019");

</script>