Files

104 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: 587d7fab367417b2b2512bd7
title: Створити точкову діаграму з колами SVG
challengeType: 6
forumTopicId: 301484
dashedName: create-a-scatterplot-with-svg-circles
---
# --description--
Точковий графік — це інший вид візуалізації. Він зазвичай використовує кола, щоб нанести точки даних, які мають по два значення. Ці значення прив'язують до осей `x` та `y`, і використовуються, щоб розмістити коло у візуалізації.
SVG має теґ `circle` для створення форми кола. Він працює так само, як елементи `rect`, які ви використовували для стовпчикової діаграми.
# --instructions--
Використовуйте методи `data()`, `enter()` та `append()`, щоб прив'язати `dataset` до нового елемента `circle`, що є доданими до полотен SVG.
**Примітка:** Кола будуть невидимими, так як ви ще не маєте набору їх атрибутів. Ми зробимо це у наступному завданні.
# --hints--
Ваш код повинен мати 10 елементів `circle`.
```js
assert($('circle').length == 10);
```
# --seed--
## --seed-contents--
```html
<body>
<script>
const dataset = [
[ 34, 78 ],
[ 109, 280 ],
[ 310, 120 ],
[ 79, 411 ],
[ 420, 220 ],
[ 233, 145 ],
[ 333, 96 ],
[ 222, 333 ],
[ 78, 320 ],
[ 21, 123 ]
];
const w = 500;
const h = 500;
const svg = d3.select("body")
.append("svg")
.attr("width", w)
.attr("height", h);
svg.selectAll("circle")
// Add your code below this line
// Add your code above this line
</script>
</body>
```
# --solutions--
```html
<body>
<script>
const dataset = [
[ 34, 78 ],
[ 109, 280 ],
[ 310, 120 ],
[ 79, 411 ],
[ 420, 220 ],
[ 233, 145 ],
[ 333, 96 ],
[ 222, 333 ],
[ 78, 320 ],
[ 21, 123 ]
];
const w = 500;
const h = 500;
const svg = d3.select("body")
.append("svg")
.attr("width", w)
.attr("height", h);
svg.selectAll("circle")
.data(dataset)
.enter()
.append("circle")
</script>
</body>
```