freeCodeCamp/curriculum/challenges/portuguese/04-data-visualization/data-visualization-with-d3/display-shapes-with-svg.por...

3.6 KiB
Raw Blame History

id title challengeType videoUrl localeTitle
587d7fa8367417b2b2512bcc Display Shapes with SVG 6 Exibir formas com SVG

Description

O último desafio criou um elemento svg com uma determinada largura e altura, que era visível porque tinha uma background-color aplicada a ele na tag de style . O código criou espaço para a largura e a altura especificadas. O próximo passo é criar uma forma para colocar na área svg . Há várias formas suportadas no SVG, como retângulos e círculos. Eles são usados para exibir dados. Por exemplo, uma forma SVG retangular ( <rect> ) poderia criar uma barra em um gráfico de barras. Quando você coloca uma forma na área svg , você pode especificar onde ela vai com as coordenadas x e y . O ponto de origem de (0, 0) está no canto superior esquerdo. Valores positivos para x empurram a forma para a direita e valores positivos para y empurram a forma para baixo a partir do ponto de origem. Para colocar uma forma no meio dos 500 (largura) x 100 (altura) svg do último desafio, a coordenada x seria 250 e a coordenada y seria 50. Um rect SVG tem quatro atributos. Existem os x e y coordenadas para onde ele é colocado no svg área. Também possui height e width para especificar o tamanho.

Instructions

Adicionar um rect forma para o svg usando append() , e dar-lhe uma width atributo de 25 e height atributo de 100. Além disso, dar a rect x e y atributos de cada conjunto para 0.

Tests

tests:
  - text: Seu documento deve ter um elemento <code>rect</code> .
    testString: 'assert($("rect").length == 1, "Your document should have 1 <code>rect</code> element.");'
  - text: O elemento <code>rect</code> deve ter um atributo <code>width</code> definido como 25.
    testString: 'assert($("rect").attr("width") == "25", "The <code>rect</code> element should have a <code>width</code> attribute set to 25.");'
  - text: O elemento <code>rect</code> deve ter um atributo <code>height</code> definido como 100.
    testString: 'assert($("rect").attr("height") == "100", "The <code>rect</code> element should have a <code>height</code> attribute set to 100.");'
  - text: O elemento <code>rect</code> deve ter um atributo <code>x</code> definido como 0.
    testString: 'assert($("rect").attr("x") == "0", "The <code>rect</code> element should have an <code>x</code> attribute set to 0.");'
  - text: O elemento <code>rect</code> deve ter um atributo <code>y</code> definido como 0.
    testString: 'assert($("rect").attr("y") == "0", "The <code>rect</code> element should have a <code>y</code> attribute set to 0.");'

Challenge Seed

<body>
  <script>
    const dataset = [12, 31, 22, 17, 25, 18, 29, 14, 9];

    const w = 500;
    const h = 100;

    const svg = d3.select("body")
                  .append("svg")
                  .attr("width", w)
                  .attr("height", h)
                  // Add your code below this line



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

Solution

// solution required