Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
4
respuestas

Grafico de barras

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidadMi version del codigo con las leyendas definidas por color según el grafico de barras, detallando cada parte para explicar de mejor manera

<meta charset="utf-8">

<h2>GRÁFICO DE BARRAS</h2>
<br>

<canvas width="600" height="400"></canvas>

<script>

    // Creamos nuestra funcion para el rectangulo
    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);
    }

    //Creamos nuestra funcion para el texto sobre nuestras barras
    function escribirTexto (x , y, texto, color, fuente) {
        var pantalla = document.querySelector("canvas");
        var pincel = pantalla.getContext("2d");

        pincel.font = fuente;
        pincel.fillStyle = color;
        pincel.fillText(texto, x, y);    
    }

    //Creamos la funcion para las barras
    function dibujarBarra (x, y, serie, colores, texto) {
        escribirTexto (x, y - 10, texto, "black", "15px Tahoma");  

        //variable auxiliar
        var sumaAltura = 0; 
        for (var i = 0; i <= serie.length; i ++) {
            var altura = serie[i];  
            dibujarRectangulo(x, y + sumaAltura, 50, altura, colores[i]);
            sumaAltura = sumaAltura + altura;  
        }
    }

    //Creamos la funcion para las leyendas
    // 1 Texto para el titulo LEYENDA
    // 2 Texto de la leyenda
    function dibujarLeyenda (x, y, leyenda) {
        escribirTexto (x + 200, y, "LEYENDA:", "black", "25px Tahoma");

        espaciado = 20;
        for (i = 0; i < leyenda.length; i ++) {
            escribirTexto (x + 200, y + espaciado, leyenda[i], colores[i], "15px Tahoma");
            espaciado = espaciado + 20;
        }
    }

    //Declaramos las variables serie, leyenda y colores
    var serie2009 = [6, 47, 41, 3, 3];  
    var serie2019 = [81, 9, 3, 3, 4]; 
    var leyenda = ["Chrome", "FireFox", "Explorer", "Safari", "Otros"];  
    var colores = ["blue","green","yellow", "red","gray"];   

    //Definimos los valores que tendra cada barra a mostrar y la leyenda
    dibujarBarra (50, 50, serie2009, colores, "2009"); 
    dibujarBarra (150, 50, serie2019, colores, "2019");
    dibujarLeyenda (50, 50, leyenda);

</script>
4 respuestas

Increíble! Gracias por compartir!

Muy bueno! me ayuda a comprender algunas cuestiones. Gracias

Que interesante, no sabía como poner las leyendas.

Te agradezco

muy bueno...