---
id: 587d7fac367417b2b2512bdc
title: Use the d3.max and d3.min Functions to Find Minimum and Maximum Values in a Dataset
challengeType: 6
forumTopicId: 301496
localeTitle: Используйте функции d3.max и d3.min для поиска минимальных и максимальных значений в наборе данных
---
## Description
D3 method domain()
и range()
устанавливают эту информацию для вашего масштаба на основе данных. Есть несколько способов сделать это проще. Часто, когда вы устанавливаете домен, вы хотите использовать минимальное и максимальное значения в наборе данных. Попытка найти эти значения вручную, особенно в большом наборе данных, может привести к ошибкам. D3 имеет два метода - min()
и max()
чтобы вернуть эту информацию. Вот пример: const exampleData = [34, 234, 73, 90, 6, 52];
d3.min (exampleData) // Возвращает 6
d3.max (exampleData) // Возвращает 234
Набор данных может иметь вложенные массивы, такие как пары координат [x, y], которые были в примере графика рассеяния. В этом случае вам нужно рассказать D3, как рассчитать максимум и минимум. К счастью, методы min()
и max()
принимают функцию обратного вызова. В этом примере аргумент функции обратного вызова d
для текущего внутреннего массива. Обратный вызов должен возвращать элемент из внутреннего массива (значение x или y), по которому вы хотите вычислить максимальное или минимальное значение. Ниже приведен пример того, как найти значения min и max с массивом массивов: const locationData = [[1, 7], [6, 3], [8, 3]];
// Возвращает наименьшее число из первых элементов
const minX = d3.min (locationData, (d) => d [0]);
// minX сравнивается с 1, 6 и 8 и устанавливается в 1
## Instructions
Переменная positionData
содержит трехмерный (3D) массив. Используйте метод D3, чтобы найти максимальное значение координаты z (третье значение) из массивов и сохранить его в output
переменной. Заметка
Интересный факт - D3 может отображать 3D-массивы.
## Tests
```yml
tests:
- text: The text in the h2
should be 8.
testString: assert(output == 8 && $('h2').text() == '8');
- text: Your code should use the max()
method.
testString: assert(code.match(/\.max/g), 'Your code should use the max()
method.')
```
## Challenge Seed
## Solution
```html
// solution required
```