Files
freeCodeCamp/curriculum/challenges/espanol/04-data-visualization/data-visualization-with-d3/update-the-height-of-an-element-dynamically.md

2.9 KiB

id, title, challengeType, forumTopicId, dashedName
id title challengeType forumTopicId dashedName
587d7fa8367417b2b2512bc9 Actualiza la altura de un elemento dinámicamente 6 301493 update-the-height-of-an-element-dynamically

--description--

Los desafíos anteriores cubrieron cómo mostrar los datos de un arreglo y cómo agregar clases CSS. Puedes combinar estas lecciones para crear un simple gráfico de barras. Hay dos pasos para conseguirlo:

  1. Crea un div por cada punto de datos en el arreglo

  2. Dale a cada div una altura dinámica, usa la función callback en el método style() que establece una altura igual al valor de los datos

Recuerda el formato para establecer un estilo usando una función callback:

selection.style("cssProperty", (d) => d)

--instructions--

Añade el método style() al código en el editor para establecer la propiedad height a cada elemento. Usa una función callback para devolver el valor de los datos con la cadena px añadida a él.

--hints--

El primer div debe tener un valor height de 12 píxeles.

assert($('div').eq(0)[0].style.height === '12px');

El segundo div debe tener un valor height de 31 píxeles.

assert($('div').eq(1)[0].style.height === '31px');

El tercer div debe tener un valor height de 22 píxeles.

assert($('div').eq(2)[0].style.height === '22px');

El cuarto div debe tener un valor height de 17 píxeles.

assert($('div').eq(3)[0].style.height === '17px');

El quinto div debe tener un valor height de 25 píxeles.

assert($('div').eq(4)[0].style.height === '25px');

El sexto div debe tener un valor height de 18 píxeles.

assert($('div').eq(5)[0].style.height === '18px');

El séptimo div debe tener un valor height de 29 píxeles.

assert($('div').eq(6)[0].style.height === '29px');

El octavo div debe tener un valor height de 14 píxeles.

assert($('div').eq(7)[0].style.height === '14px');

El noveno div debe tener un valor height de 9 píxeles.

assert($('div').eq(8)[0].style.height === '9px');

--seed--

--seed-contents--

<style>
  .bar {
    width: 25px;
    height: 100px;
    display: inline-block;
    background-color: blue;
  }
</style>
<body>
  <script>
    const dataset = [12, 31, 22, 17, 25, 18, 29, 14, 9];

    d3.select("body").selectAll("div")
      .data(dataset)
      .enter()
      .append("div")
      .attr("class", "bar")
      // Add your code below this line



      // Add your code above this line
  </script>
</body>

--solutions--

<style>
  .bar {
    width: 25px;
    height: 100px;
    display: inline-block;
    background-color: blue;
  }
</style>
<body>
  <script>
    const dataset = [12, 31, 22, 17, 25, 18, 29, 14, 9];

    d3.select("body").selectAll("div")
      .data(dataset)
      .enter()
      .append("div")
      .attr("class", "bar")
      .style('height', d => `${d}px`)
  </script>
</body>