38 lines
6.2 KiB
Markdown
38 lines
6.2 KiB
Markdown
---
|
||
id: 587d7fa6367417b2b2512bc0
|
||
title: Visualize Data with a Treemap Diagram
|
||
isRequired: true
|
||
challengeType: 3
|
||
videoUrl: ''
|
||
localeTitle: Визуализация данных с диаграммой карт
|
||
---
|
||
|
||
## Description
|
||
<section id="description"> <strong>Цель:</strong> создать приложение <a href="https://codepen.io" target="_blank">CodePen.io</a> , функционально похожее на это: <a href="https://codepen.io/freeCodeCamp/full/KaNGNR" target="_blank">https://codepen.io/freeCodeCamp/full/KaNGNR</a> . Выполните приведенные ниже <a href="https://en.wikipedia.org/wiki/User_story" target="_blank">истории пользователей</a> и получите все тесты для прохождения. Дайте ему свой личный стиль. Вы можете использовать HTML, JavaScript, CSS и D3 svg-based visualization library. Тесты требуют создания осей с использованием свойства оси D3, которое автоматически генерирует тики вдоль оси. Эти тики необходимы для прохождения тестов D3, потому что их позиции используются для определения выравнивания графических элементов. Вы найдете информацию о генерации осей на <a href="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> . Обязательные (не виртуальные) элементы DOM запрашиваются в момент каждого теста. Если вы используете фреймворк интерфейса (например, Vue), результаты теста могут быть неточными для динамического содержимого. Мы надеемся, что в конечном итоге их разместим, но эти рамки в настоящее время не поддерживаются для проектов D3. <strong>User Story # 1:</strong> Моя карта дерева должна иметь заголовок с соответствующим <code>id="title"</code> . <strong>User Story # 2:</strong> Моя древовидная карта должна иметь описание с соответствующим <code>id="description"</code> . <strong>User Story # 3:</strong> Моя карта деревьев должна иметь <code>rect</code> элементы с соответствующим <code>class="tile"</code> которые представляют данные. <strong>User Story # 4:</strong> Для плиток должно быть не менее двух разных цветов заливки. <strong>User Story # 5:</strong> Каждая плитка должна иметь свойства <code>data-name</code> , <code>data-category</code> и <code>data-value</code> содержащие их соответствующее имя, категорию и значение. <strong>User Story # 6:</strong> Площадь каждой плитки должна соответствовать размеру данных: плитки с большим значением данных должны иметь большую площадь. <strong>User Story # 7:</strong> Моя карта деревьев должна иметь легенду с соответствующим <code>id="legend"</code> . <strong>User Story # 8:</strong> Моя легенда должна иметь <code>rect</code> элементы с соответствующим <code>class="legend-item"</code> . <strong>User Story # 9:</strong> <code>rect</code> элементы в легенде должны использовать как минимум 2 разных цвета заливки. <strong>User Story # 10:</strong> Я могу навести курсор мыши на область и увидеть всплывающую подсказку с соответствующей <code>id="tooltip"</code> которая отображает больше информации о области. <strong>User Story # 11:</strong> Моя подсказка должна иметь свойство <code>data-value</code> , соответствующее <code>data-value</code> данных активной области. Для этого проекта вы можете использовать любой из следующих наборов данных: <br><ul><li> <strong>Kickstarter Pledges:</strong> <code>https://cdn.rawgit.com/freeCodeCamp/testable-projects-fcc/a80ce8f9/src/data/tree_map/kickstarter-funding-data.json</code> </li><li> <strong>Продажа фильмов:</strong> <code>https://cdn.rawgit.com/freeCodeCamp/testable-projects-fcc/a80ce8f9/src/data/tree_map/movie-data.json</code> </li><li> <strong>Продажа видеоигр:</strong> <code>https://cdn.rawgit.com/freeCodeCamp/testable-projects-fcc/a80ce8f9/src/data/tree_map/video-game-sales-data.json</code> </li></ul> Вы можете создать свой проект, <a href="https://codepen.io/freeCodeCamp/pen/MJjpwO" target="_blank">нажимая эту ручку CodePen</a> . Или вы можете использовать эту ссылку CDN для запуска тестов в любой среде: <code>https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js</code> Как только вы закончите, отправьте URL-адрес своей рабочей проект с прохождением всех его тестов. Не забудьте использовать метод <a href="https://forum.freecodecamp.org/t/how-to-get-help-when-you-are-stuck/19514" target="_blank">Read-Search-Ask,</a> если вы застряли. </section>
|
||
|
||
## Instructions
|
||
undefined
|
||
|
||
## Tests
|
||
<section id='tests'>
|
||
|
||
```yml
|
||
tests: []
|
||
|
||
```
|
||
|
||
</section>
|
||
|
||
## Challenge Seed
|
||
<section id='challengeSeed'>
|
||
|
||
</section>
|
||
|
||
## Solution
|
||
<section id='solution'>
|
||
|
||
```js
|
||
// solution required
|
||
```
|
||
</section>
|