Рой диаграмма поля точек
swarmchart( отображает наклонную диаграмму, которая является графиком поля точек со смещением точек (джиттерированным) в x,y)x-размерность. Точки образуют различные формы, и контур каждой формы аналогичен графику скрипки. Рой графики помогают вам визуализировать дискретные x данные с распределением y данные. В каждом месте в xточки джиттерируются на основе оценки плотности ядра y.
Чтобы построить график одного набора точек, задайте x и y как векторы равной длины.
Чтобы построить график нескольких наборов точек на одном и том же наборе осей, задайте хотя бы один из x или y как матрица.
swarmchart(___, задает маркер, отличный от маркера по умолчанию, который является кругом. Задайте mkr)mkr после всех аргументов в любом из предыдущих синтаксисов.
swarmchart(___, заполняет маркеры. Задайте 'filled')'filled' опция после всех аргументов в любом из предыдущих синтаксисов.
swarmchart(___, задает дополнительные свойства для графика роя, используя один или несколько Name,Value)Name,Value аргументы в виде пар. Задайте свойства после всех других входных параметров. Список свойств см. в разделе Свойств объекта Scatter.
swarmchart( отображает наклонный график в целевых осях. Задайте оси перед всеми аргументами в любом из предыдущих синтаксисов.ax,___)
s = swarmchart(___) возвращает Scatter объект или массив Scatter объекты. Использование s для изменения свойств графика после ее создания. Список свойств см. в разделе Свойств объекта Scatter.
Создайте вектор x координаты и использование randn функция для генерации нормально распределенных случайных значений для y. Затем создайте рывковый график x и y.
x = [ones(1,500) 2*ones(1,500) 3*ones(1,500)]; y1 = 2 * randn(1,500); y2 = 3 * randn(1,500) + 5; y3 = 5 * randn(1,500) + 5; y = [y1 y2 y3]; swarmchart(x,y)

Создайте три набора x и y координаты. Используйте randn функция для генерации случайных значений для y.
x1 = ones(1,500); x2 = 2 * ones(1,500); x3 = 3 * ones(1,500); y1 = 2 * randn(1,500); y2 = [randn(1,250) randn(1,250) + 4]; y3 = 5 * randn(1,500) + 5;
Создайте график роя первого набора данных и задайте равномерный размер маркера 5. Затем позвоните hold on для построения графика второго и третьего наборов данных вместе с первым набором данных. Функции hold off чтобы отпустить состояние удержания осей.
swarmchart(x1,y1,5) hold on swarmchart(x2,y2,5) swarmchart(x3,y3,5) hold off

Чтение BicycleCounts.csv набор данных в расписание с именем tbl. Этот набор данных содержит данные о велосипедном движении в течение определенного периода времени. Отображение первых пяти строк tbl.
tbl = readtable(fullfile(matlabroot,'examples','matlab','data','BicycleCounts.csv')); tbl(1:5,:)
ans=5×5 table
Timestamp Day Total Westbound Eastbound
___________________ _____________ _____ _________ _________
2015-06-24 00:00:00 {'Wednesday'} 13 9 4
2015-06-24 01:00:00 {'Wednesday'} 3 3 0
2015-06-24 02:00:00 {'Wednesday'} 1 1 0
2015-06-24 03:00:00 {'Wednesday'} 1 1 0
2015-06-24 04:00:00 {'Wednesday'} 1 1 0
Создайте вектор x с именем дня из каждого наблюдения и другим вектором y с наблюдаемым велосипедным движением. Затем создайте рывковый график x и y, и задайте маркер точки ('.'). На графике показано распределение велосипедного движения по дням недели.
daynames = ["Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"]; x = categorical(tbl.Day,daynames); y = tbl.Total; swarmchart(x,y,'.');

Чтение BicycleCounts.csv набор данных в расписание с именем tbl. Создайте вектор x с именем дня для каждого наблюдения, другой вектор y при наблюдаемом движении велосипедов и третьем векторе c с часом дня.
Затем создайте рывковый график x и y, и укажите размер маркера следующим 20. Задайте цвета маркеров как векторные c. Значения в индексе вектора в палитру рисунка. Таким образом, цвета изменяются в соответствии с часом для каждой точки данных. Используйте 'filled' опция для заливки маркеров цветом вместо отображения их в виде полых кругов.
tbl = readtable(fullfile(matlabroot,'examples','matlab','data','BicycleCounts.csv')); daynames = ["Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"]; x = categorical(tbl.Day,daynames); y = tbl.Total; c = hour(tbl.Timestamp); swarmchart(x,y,20,c,'filled');

Чтение BicycleCounts.csv набор данных в расписание с именем tbl. Создайте вектор x с именем дня для каждого наблюдения, другой вектор y при наблюдаемом движении велосипедов и третьем векторе c с часом дня. Затем создайте рывковый график x и y, и укажите размер маркера следующим 5, и цвета маркеров как векторные c. Вызовите swarmchart функция с возвращаемым аргументом s, так что можно изменить график после ее создания.
tbl = readtable(fullfile(matlabroot,'examples','matlab','data','BicycleCounts.csv')); daynames = ["Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"]; x = categorical(tbl.Day,daynames); y = tbl.Total; c = hour(tbl.Timestamp); s = swarmchart(x,y,5,c);

Изменяйте формы кластеров в каждом x местоположение, так что точки распределены равномерно и случайным образом и интервал ограничен не более 0.5 модулей данных.
s.XJitter = 'rand';
s.XJitterWidth = 0.5;
Создайте пару x и y координаты. Используйте randn функция для генерации случайных значений для y. Затем создайте наклонный график с заполненными маркерами, которые на 50% прозрачны как на их гранях, так и на ребрах.
x1 = ones(1,500); x2 = 2 * ones(1,500); x = [x1 x2]; y1 = 2 * randn(1,500); y2 = [randn(1,250) randn(1,250) + 4]; y = [y1 y2]; swarmchart(x,y,'filled','MarkerFaceAlpha',0.5,'MarkerEdgeAlpha',0.5)

Чтение BicycleCounts.csv набор данных в расписание с именем tbl. Этот набор данных содержит данные о велосипедном движении в течение определенного периода времени. Отображение первых пяти строк tbl.
tbl = readtable(fullfile(matlabroot,'examples','matlab','data','BicycleCounts.csv')); tbl(1:5,:)
ans=5×5 table
Timestamp Day Total Westbound Eastbound
___________________ _____________ _____ _________ _________
2015-06-24 00:00:00 {'Wednesday'} 13 9 4
2015-06-24 01:00:00 {'Wednesday'} 3 3 0
2015-06-24 02:00:00 {'Wednesday'} 1 1 0
2015-06-24 03:00:00 {'Wednesday'} 1 1 0
2015-06-24 04:00:00 {'Wednesday'} 1 1 0
Определите x как категориальный массив имен дней в таблице. Определите yEast и yWest как векторы, содержащие количество велосипедного трафика в восточном и западном направлениях.
daynames = ["Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"]; x = categorical(tbl.Day,daynames); yEast = tbl.Eastbound; yWest = tbl.Westbound;
Создайте мозаику графика размещения в 'flow' расположение плитки, так что оси заполняют доступное пространство в размещении. Вызовите nexttile функция, чтобы создать объект осей и вернуть его как ax1. Затем создайте рой графиков данных в восточном направлении путем прохождения ax1 на swarmchart функция.
tiledlayout('flow') ax1 = nexttile; y = tbl.Eastbound; swarmchart(ax1,x,y,'.');

Повторите процесс, чтобы создать второй объект осей и рой график для западного трафика.
ax2 = nexttile;
y = tbl.Westbound;
s = swarmchart(ax2,x,y,'.');
x - x -координатыx -кординаты, заданные как скаляр, вектор или матрица. Размер и форма x зависит от формы ваших данных. В этой таблице описываются наиболее распространенные ситуации.
| Тип графика | Как задать координаты |
|---|---|
| Одна точка | Задайте swarmchart(1,1) |
| Один набор точек | Задайте x = randi(3,100,1); y = randn(1,100); swarmchart(x,y) |
| Несколько наборов точек, которые являются различными цветами | Если все наборы имеют одинаковые x - или y - координаты, задайте общие координаты как вектор, а другие координаты как матрицу. Длина вектора должна совпадать с одним из размерностей матрицы. Для примера: x = randi(2,1,100); y = [randn(100,1) randn(100,1)+5]; swarmchart(x,y,100) swarmchart строит отдельный набор точек для каждого столбца в матрице.Кроме того, задайте x = randi(2,100,2); y = [randn(100,1) randn(100,1)+5]; swarmchart(x,y,100) |
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical
y - y -координатыy -кординаты, заданные как скаляр, вектор или матрица. Размер и форма y зависит от формы ваших данных. В этой таблице описываются наиболее распространенные ситуации.
| Тип графика | Как задать координаты |
|---|---|
| Одна точка | Задайте swarmchart(1,1) |
| Один набор точек | Задайте x = randi(3,100,1); y = randn(1,100); swarmchart(x,y) |
| Несколько наборов точек, которые являются различными цветами | Если все наборы имеют одинаковые x - или y - координаты, задайте общие координаты как вектор, а другие координаты как матрицу. Длина вектора должна совпадать с одним из размерностей матрицы. Для примера: x = randi(2,1,100); y = [randn(100,1) randn(100,1)+5]; swarmchart(x,y,100) swarmchart строит отдельный набор точек для каждого столбца в матрице.Кроме того, задайте x = randi(2,100,2); y = [randn(100,1) randn(100,1)+5]; swarmchart(x,y,100) |
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
sz - Размер маркера[]Размер маркера, заданный как числовой скаляр, вектор, матрица или пустой массив ([]). Размер управляет площадью каждого маркера в точках в квадрате. Пустой массив задает размер по умолчанию 36 точек. Способ задания размера зависит от способа задания x и yи как вы хотите, чтобы график выглядел. В этой таблице описываются наиболее распространенные ситуации.
| Желаемые размеры маркера | x и y
| sz | Пример |
|---|---|---|---|
Одинаковый размер для всех точек | Любая допустимая комбинация векторов или матриц, описанная для | Скаляр | Задайте x = randi(2,1,100); y = randn(100,1); swarmchart(x,y,100) |
Разный размер для каждой точки | Векторы той же длины |
| Задайте x = randi(2,1,100); y = randn(100,1); sz = randi([70 2000],100,1); swarmchart(x,y,sz) Задайте x = randi(2,1,100); y = randn(100,1); sz = randi([70 2000],100,2); swarmchart(x,y,sz) |
Разный размер для каждой точки | По крайней мере, один из |
| Задайте x = randi(2,1,100); y = [randn(100,1) randn(100,1)+5]; sz = randi([70 2000],100,1); swarmchart(x,y,sz) Задайте x = randi(2,1,100); y = [randn(100,1) randn(100,1)+5]; sz = randi([70 2000],100,2); swarmchart(x,y,sz) |
c - Цвет маркераЦвет маркера, заданный как название цвета, триплет RGB, матрица триплетов RGB или вектор индексов палитры.
Название цвета - название цвета, такое как 'red', или краткое имя, например 'r'.
Триплет RGB - трехэлементный вектор-строка, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7]. Триплеты RGB полезны для создания пользовательских цветов.
Матрица триплетов RGB - трехколоночная матрица, в которой каждая строка является триплетом RGB.
Вектор индексов палитры - вектор числовых значений, имеющий ту же длину, что и x и y векторы.
Способ задания цвета зависит от требуемой цветовой схемы и от того, строите ли вы график для одного набора координат или нескольких наборов координат. В этой таблице описываются наиболее распространенные ситуации.
| Цветовая схема | Как задать цвет | Пример |
|---|---|---|
Используйте один цвет для всех точек. | Укажите название цвета или краткое имя из таблицы ниже или укажите один триплет RGB. | Постройте график одного набора точек и задайте цвет следующим x = randi(2,1,100);
y = randn(100,1);
c = 'red';
swarmchart(x,y,[],c)Постройте график двух наборов точек и укажите цвет как красный с помощью триплета RGB. x = randi(2,1,100); y = randn(100,1); c = [0.6 0 0.9]; swarmchart(x,y,[],c) |
Назначьте различные цвета каждой точке с помощью палитры. | Задайте строку или вектор-столбец чисел. Индекс чисел в текущий массив палитры. Наименьшее значение преобразуется в первую строку палитры, а наибольшее значение - в последнюю строку. Промежуточные значения линейно сопоставляются с промежуточными строками. Если ваш график имеет три точки, задайте вектор-столбец, чтобы убедиться, что значения интерпретируются как индексы палитры. Использовать этот метод можно только при | Создайте вектор x = randi(2,1,100);
y = randn(100,1);
c = 1:100;
swarmchart(x,y,[],c)
colormap(gca,'winter') |
Создайте пользовательский цвет для каждой точки. | Задайте матрицу m на 3 триплетов RGB, где m - число точек на графике. Использовать этот метод можно только при | Создайте матрицу x = randi(2,1,100); y = randn(100,1); c = rand(100,3); swarmchart(x,y,[],c) |
Создайте другой цвет для каждого набора данных. | Задайте матрицу n на 3 триплетов RGB, где n - количество наборов данных. Использовать этот метод можно только тогда, когда хотя бы один из | Создайте матрицу x = randi(2,100,2); y = [randn(100,1) randn(100,1)+5]; c = [1 0 0; 0 0 1]; swarmchart(x,y,[],c) |
| Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
|---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' |
|
'green' | 'g' | [0 1 0] | '#00FF00' |
|
'blue' | 'b' | [0 0 1] | '#0000FF' |
|
'cyan' | 'c' | [0 1 1] | '#00FFFF' |
|
'magenta' | 'm' | [1 0 1] | '#FF00FF' |
|
'yellow' | 'y' | [1 1 0] | '#FFFF00' |
|
'black' | 'k' | [0 0 0] | '#000000' |
|
'white' | 'w' | [1 1 1] | '#FFFFFF' |
|
Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB® использует на многих типах графиков.
| Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
|---|---|---|
[0 0.4470 0.7410] | '#0072BD' |
|
[0.8500 0.3250 0.0980] | '#D95319' |
|
[0.9290 0.6940 0.1250] | '#EDB120' |
|
[0.4940 0.1840 0.5560] | '#7E2F8E' |
|
[0.4660 0.6740 0.1880] | '#77AC30' |
|
[0.3010 0.7450 0.9330] | '#4DBEEE' |
|
[0.6350 0.0780 0.1840] | '#A2142F' |
|
mkr - Тип маркера'o' (по умолчанию) | '+' | '*' | '.' | 'x' | ...Тип маркера, заданный как одно из значений, перечисленных в этой таблице.
| Маркер | Описание |
|---|---|
'o' | Круг |
'+' | Плюс знак |
'*' | Звездочка |
'.' | Точка |
'x' | Крест |
'_' | Горизонтальная линия |
'|' | Вертикальная линия |
's' | Квадрат |
'd' | Алмаз |
'^' | Направленный вверх треугольник |
'v' | Нисходящий треугольник |
'>' | Треугольник , указывающий вправо |
'<' | Треугольник , указывающий влево |
'p' | Пентаграмма |
'h' | Hexagram |
'filled' - Опция заполнения внутренних маркеров'filled'Опция заполнения интерьера маркеров, заданная как 'filled'. Используйте эту опцию с маркерами, которые имеют лицо, например 'o' или 'square'. Маркеры, которые не имеют грани и содержат только ребра, не визуализируются вообще ('+', '*', '.', и 'x').
The 'filled' опция устанавливает MarkerFaceColor свойство Scatter объект к 'flat' и MarkerEdgeColor свойство к 'none'. В этом случае MATLAB рисует грани маркера, но не ребра.
ax - Целевые осиAxes | объекта PolarAxes | объекта GeographicAxes объектЦелевые оси, заданные как Axes объект, a PolarAxes объект, или GeographicAxes объект. Если вы не задаете оси, графики MATLAB в текущие системы координат создает Axes объект, если он не существует.
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
swarmchart(randi(4,500,1),randn(500,1),'MarkerFaceColor','red') задает красные заполненные маркеры.
Примечание
Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойств объекта Scatter.
'XJitter' - Тип дрожания для x -размерность'none' | 'density' | 'rand' | 'randn'Тип дрожания (интервал между точками) вдоль x -размерность, заданный как одно из следующих значений:
'none' - Не дрожать точки.
'density' - Дрожание точек с помощью оценки плотности ядра y для 2-D графиков. Если вы задаете эту опцию в две размерностей для 3-D графиков, точки джиттерируются на основе оценки плотности ядра в третьей размерности. Для примера установка XJitter и YJitter на 'density' использует оценку плотности ядра z.
'rand' - Дрожание точек случайным образом с равномерным распределением.
'randn' - Дрожание указывает случайным образом с нормальным распределением.
'XJitterWidth' - Максимальное дрожание вдоль x -размерностьМаксимальное количество дрожания (смещение между точками) вдоль x -размерность, заданное как неотрицательное скалярное значение в единицах данных.
Например, чтобы задать ширину дрожания 90% от кратчайшего расстояния между смежными точками, берите минимальное расстояние между уникальными значениями x и шкала по 0.9.
XJitterWidth = 0.9 * min(diff(unique(x)));
Точки на роевом графике джиттерируются с помощью равномерных случайных значений, которые взвешиваются оценкой плотности ядра Гауссова y и относительные числа точек на каждом x расположение. Это поведение соответствует значению по умолчанию 'density' установка XJitter свойство на Scatter объект, когда вы вызываете swarmchart функция.
Максимальное распределение точек в каждом x местоположение составляет 90% наименьшего расстояния между смежными x значения по умолчанию:
spread = 0.9 * min(diff(unique(x)));
Вы можете управлять спредом, установив XJitterWidth свойство на Scatter объект.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.