Solucionado (ver solución)
Solucionado
(ver solución)
4
respuestas

Me tranque en el desarrollo de grafico de barras

Alguien puede explicarme paso a paso, la solución del profesor, con respecto al programa del grafico de barras.

Me siento bloqueada y la verdad no doy mas.

Gracias!!!!

4 respuestas

Buenas tardes Amarilys, animo que no decaiga. Respecto a tu duda, que es lo que te esta trabando?

Saludos!

Hola Ezequiel, muchas gracias por tu apoyo. Te comento que primero hice este código: `canvas width="600" height="400">>


y luego este otro y nada que logre avanzar:

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



<script>

    var pantalla = document.querySelector ("canvas");
    var pincel = pantalla.getContext("2d");


    var serie2009 = [6, 47, 41, 3, 3];
    //es un arreglo cuyo indice es 0,1,2,3,4
    var serie2019 = [81, 9, 3, 3, 4];
    //es un arreglo cuyo indice es 0,1,2,3,4
    var colores = ["blue","green","yellow", "red","gray"];
    //es un arreglo cuyo indice es 0,1,2,3,4

    function dibujarRectangulo(x,y,base,altura) {
        //x= el parámetro variable, y=parámetro variable, color=parametrovariable

        pincel.fillStyle = color;//propiedad
        pincel.fillRect(x,y,base,altura);//función 
        pincel.strokeStyle = "black";
        pincel.strokeRect(x,y,base,altura)

    }


    function escribirTexto(x,y,texto) {

    pincel.font = "15px, georgia";//propiedad
    pincel.fillStyle = "black";
    pincel.filltext(x,y + "serie2009");

    }



    function dibujarBarra(x,y,serie2009,colores,texto) {

        for (var y = 50; y <= 150; y = y + serie2009) {
            var i = 0
            if(i <= 4) {
                dibujarRectangulo(50,50,200,y,"colores");
                escribirTexto();
            }

            if (serie2019 <= 4){
                dibujarBarra(50,50,200,y,"colores", escribirTexto);
            }

        }

   }

    alert("fin");

</script>

`

Si crees que puede ayudarme mucho te lo agradecería. Saludos. Amarilys

<script>
    // Funcion dibujar rectangulo
    function dibujarRectangulo(x, y, base, altura, color) {
        var pantalla = document.querySelector("canvas");
        var pincel = pantalla.getContext("2d");

        pincel.fillStyle=color;//El color del rectangulo
        pincel.fillRect(x,y, base, altura);//El tamaño del rectangulo de la barra
        pincel.strokeStyle="black";//El color del Borde
        pincel.strokeRect(x,y, base, altura);//El tamaño del borde del rectangulo
    }

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

        pincel.font="15px Georgia"; //LA fuente del texto
        pincel.fillStyle="black"; //El color del texto
        pincel.fillText(texto, x, y); //El texto que aparecera
    }

    function dibujarBarra(x, y, serie, colores, texto) {
//Aqui la funcion escribirTexto es llamada y aparece arriba por 10px del rectangulo
      escribirTexto(x, y - 10, texto);
// La variable acumula la altura, entre mas numeros tengas en el arreglo este crecera mas
      var sumaAltura = 0;
// El for nos va a leer las matrizes de serie 2009 y 2019
// Nos dice que empezara a leer desde 0 hasta que llegue al tope de la matriz
      for(var i = 0; i < serie.length; i ++){
        //   mientras mas numeros metamos a la matriz, mas grande es la altura
          var altura = serie[i];
        //   Se dibujara un rectangulo con nuestra funcion dibujarRectangulo
                            // la x nos dice desde donde empieza de izquierda a derecha
                            // la y nos dice que empieza desde arriba a abajo
                            // el 50 es la base (osea el ancho de la barra)
                            // la altura es la matriz de numeros que tenemos
                            // los colores estan en dados en la matriz de colores, podemos agregar mas
          dibujarRectangulo(x,y + sumaAltura, 50, altura, colores[i]);

          sumaAltura = sumaAltura + altura;
      }
    }

    // LAs variables a usarse de colores, la matriz de serie2009 y 2019
    var colores = ["blue","green","yellow", "red","gray", "orange"];
    var serie2009 = [6, 47, 41, 3, 3];
    var serie2019 = [81, 9, 3, 3, 4];
    // pondremos una mas
    var serie2022 = [40, 30, 10, 20];

    // Dibujaremos las barras
        dibujarBarra(50, 50, serie2009, colores, "2009");
        dibujarBarra(150, 50, serie2019, colores, "2019");
        // Dibujaremos una barra mas
        dibujarBarra(250, 50, serie2022, colores, "2022");
</script>

Trate de explicarlo, disculpa si no es entendible, pero por lo menos espero haberte sacado de alguna duda Amarilys c:

solución!

Gracias a todos!!!!