<sectionid="description"><strong>Objetivo:</strong> criar um aplicativo <ahref="https://codepen.io"target="_blank">CodePen.io</a> que seja funcionalmente semelhante a este: <ahref="https://codepen.io/freeCodeCamp/full/GrZVaM"target="_blank">https://codepen.io/freeCodeCamp/full/GrZVaM</a> . Cumpra as <ahref="https://pt.wikipedia.org/wiki/História_de_usuário"target="_blank">histórias de usuário</a> abaixo e faça todos os testes para passar. Dê seu estilo pessoal. Você pode usar HTML, JavaScript, CSS e a biblioteca de visualização baseada em svg D3. Os testes exigem que os eixos sejam gerados usando a propriedade do eixo D3, que gera automaticamente marcações ao longo do eixo. Esses tiques são necessários para passar nos testes D3, porque suas posições são usadas para determinar o alinhamento dos elementos gráficos. Você encontrará informações sobre como gerar eixos em <ahref="https://github.com/d3/d3/blob/master/API.md#axes-d3-axis"target="_blank">https://github.com/d3/d3/blob/master/API.md#axes-d3-axis</a> . Elementos DOM (não virtuais) requeridos são consultados no momento de cada teste. Se você usar uma estrutura frontend (como o Vue, por exemplo), os resultados do teste podem ser imprecisos para o conteúdo dinâmico. Esperamos acomodá-los eventualmente, mas esses frameworks não são suportados atualmente para projetos D3. <strong>História do usuário 1:</strong> meu gráfico deve ter um título com um <code>id="title"</code> . <strong>História do usuário # 2:</strong> Meu gráfico deve ter um eixo x do elemento <code>g</code> com um <code>id="x-axis"</code> . <strong>História de usuário # 3:</strong> Meu gráfico deve ter um eixo y do elemento <code>g</code> com um <code>id="y-axis"</code> . <strong>História de usuário # 4: Os</strong> dois eixos devem conter vários rótulos de ticks, cada um com a <code>class="tick"</code> correspondente <code>class="tick"</code> . <strong>História de usuário # 5:</strong> Meu gráfico deve ter um elemento <code>rect</code> para cada ponto de dados com uma <code>class="bar"</code> exibindo os dados. <strong>História de usuário # 6:</strong> Cada barra deve ter as propriedades <code>data-date</code> e <code>data-gdp</code> contendo data e valores do PIB. <strong>História de usuário # 7:</strong> As propriedades <code>data-date</code> dos elementos da barra devem corresponder à ordem dos dados fornecidos. <strong>História de usuário # 8:</strong> As propriedades do <code>data-gdp</code> dos elementos da barra devem corresponder à ordem dos dados fornecidos. <strong>História do usuário nº 9:</strong> a altura de cada elemento da barra deve representar com precisão o PIB correspondente dos dados. <strong>História de usuário # 10:</strong> O atributo <code>data-date</code> e seu elemento de barra correspondente devem estar alinhados com o valor correspondente no eixo x. <strong>História de usuário # 11:</strong> O atributo <code>data-gdp</code> e seu elemento de barra correspondente devem estar alinhados com o valor correspondente no eixo y. <strong>História de usuário # 12:</strong> Eu posso passar o mouse sobre uma área e ver uma dica com uma <code>id="tooltip"</code> que exibe mais informações sobre a área. <strong>História de usuário # 13:</strong> Minha dica de ferramenta deve ter uma propriedade <code>data-date</code> que corresponda à <code>data-date</code> da área ativa. Aqui está o conjunto de dados necessário para concluir este projeto: <code>https://raw.githubusercontent.com/freeCodeCamp/ProjectReferenceData/master/GDP-data.json</code> Você pode criar seu projeto, bifurcando <ahref="https://codepen.io/freeCodeCamp/pen/MJjpwO"target="_blank">essa caneta CodePen</a> . Ou você pode usar este link CDN para executar os testes em qualquer ambiente que desejar: <code>https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js</code> . Quando terminar, envie o URL para o seu projeto de trabalho com todos os testes sendo aprovados. Lemb