scatter

График поля точек

Описание

пример

scatter(x,y) создает график рассеивания с кругами в местоположениях, заданных векторами x и y. Этот тип графика также известен как пузырьковый график.

пример

scatter(x,y,sz) задает круговые размеры. Чтобы построить каждый круг с равным размером, задайте sz как скаляр. Чтобы построить каждый круг с различным размером, задайте sz как вектор с длиной равняются длине x и y.

пример

scatter(x,y,sz,c) задает круговые цвета. Чтобы построить все круги с тем же цветом, задайте c как название цвета или триплет RGB. Чтобы использовать различный цвет, задайте c как вектор или матрица с тремя столбцами триплетов RGB.

пример

scatter(___,'filled') заполняет круги. Используйте 'filled' опция с любой из комбинаций входных аргументов в предыдущих синтаксисах.

пример

scatter(___,mkr) задает тип маркера.

пример

scatter(___,Name,Value) изменяет диаграмму поля точек с помощью одного или нескольких аргументов пары "имя-значение". Например, 'LineWidth',2 устанавливает ширину контура маркера до 2 точек.

пример

scatter(ax,___) графики в оси заданы ax вместо в текущую систему координат. Опция ax может предшествовать любой из комбинаций входных аргументов в предыдущих синтаксисах.

пример

s = scatter(___) возвращает Scatter объект. Используйте s сделать будущие модификации к диаграмме поля точек после того, как это создается.

Примеры

свернуть все

Создайте x как 200 равномерно распределенных значений между 0 и 3π. Создайте y как значения косинуса со случайным шумом. Затем создайте график рассеивания.

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);  
scatter(x,y)

Создайте график рассеивания с помощью кругов с различными размерами. Укажите, что размер в точках придал квадратную форму

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
sz = linspace(1,100,200);
scatter(x,y,sz)

Соответствующие элементы в xY, и sz определите местоположение и размер каждого круга. Чтобы построить все круги с равной областью, задайте sz в виде числа.

Создайте график рассеивания и варьируйтесь круговой цвет.

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
c = linspace(1,10,length(x));
scatter(x,y,[],c)

Соответствующие элементы в xY, и c определите местоположение и цвет каждого круга. scatter функционируйте сопоставляет элементы в c к раскрашивает текущую палитру.

Создайте график рассеивания и заполните маркеры. scatter заливки каждый маркер с помощью цвета ребра маркера.

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
sz = 25;
c = linspace(1,10,length(x));
scatter(x,y,sz,c,'filled')

Создайте векторы x и y как синус и значения косинуса со случайным шумом. Затем создайте график рассеивания и используйте ромбовидные маркеры с областью 140 точек, в квадрате.

theta = linspace(0,2*pi,150);
x = sin(theta) + 0.75*rand(1,150);
y = cos(theta) + 0.75*rand(1,150);  
sz = 140;
scatter(x,y,sz,'d')

Создайте векторы x и y как синус и значения косинуса со случайным шумом. Создайте график рассеивания и установите цвет обводки маркера, цвет поверхности маркера и ширину линии.

theta = linspace(0,2*pi,300);
x = sin(theta) + 0.75*rand(1,300);
y = cos(theta) + 0.75*rand(1,300);  
sz = 40;
scatter(x,y,sz,'MarkerEdgeColor',[0 .5 .5],...
              'MarkerFaceColor',[0 .7 .7],...
              'LineWidth',1.5)

Можно варьироваться прозрачность рассеянных точек путем установки AlphaData свойство к вектору из различных значений непрозрачности. Гарантировать график рассеивания использует AlphaData значения, набор MarkerFaceAlpha свойство к 'flat'.

Создайте набор нормально распределенных случайных чисел. Затем создайте график рассеивания данных с заполненными маркерами.

x = randn(1000,1);
y = randn(1000,1);
s = scatter(x,y,'filled');

Установите непрозрачность каждой точки согласно ее расстоянию от нуля.

distfromzero = sqrt(x.^2 + y.^2);
s.AlphaData = distfromzero;
s.MarkerFaceAlpha = 'flat';

Начиная в R2019b, можно отобразить плиточное размещение графиков с помощью tiledlayout и nexttile функции. Вызовите tiledlayout функция, чтобы создать 2 1 мозаичное размещение графика. Вызовите nexttile функция, чтобы создать объекты осей ax1 и ax2. Отобразите данные, имеющий разброс на графике в каждого, исключает. В нижнем графике рассеивания укажите, что ромб заполнил ромбовидные маркеры.

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
tiledlayout(2,1)

% Top plot
ax1 = nexttile;
scatter(ax1,x,y)

% Bottom plot
ax2 = nexttile;
scatter(ax2,x,y,'filled','d')

Создайте график рассеивания и возвратите поля точек серийный объект, s.

theta = linspace(0,1,500);
x = exp(theta).*sin(100*theta);
y = exp(theta).*cos(100*theta);
s = scatter(x,y);

Используйте s запросить и установить свойства поля точек ряда после того, как это было создано. Установите ширину линии на 0.6 точка. Установите цвет обводки маркера на синий. Выберите цвет поверхности маркера с помощью цвета триплета RGB.

s.LineWidth = 0.6;
s.MarkerEdgeColor = 'b';
s.MarkerFaceColor = [0 0.5 0.5];

Входные параметры

свернуть все

x значения в виде вектора. x и y должны быть векторы из равной длины.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

y значения в виде вектора. x и y должны быть векторы из равной длины.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

Область Marker в точках придала квадратную форму, заданный в одной из следующих форм:

  • Числовой скаляр — График все маркеры с равным размером.

  • Строка или вектор-столбец — Использование различные размеры для каждого маркера. Соответствующие элементы в xY, и sz определите местоположение и область каждого маркера. Длина sz должен равняться длине x и y.

  • [] — Используйте область по умолчанию 36 точек, в квадрате.

Модули для области маркера являются точками, в квадрате.

Пример: 50

Пример: [36 25 25 17 46]

Цвет маркера, заданный в одной из следующих форм:

  • Триплет RGB или название цвета — График все маркеры с тем же цветом.

  • Три матрицы столбца триплетов RGB — Использование различные цвета для каждого маркера. Каждая строка матрицы задает цвет триплета RGB для соответствующего маркера. Количество строк должно равняться длине x и y.

  • Вектор — Использование различные цвета для каждого маркера и линейно сопоставляет значения в c к цветам в текущей палитре. Длина c должен равняться длине x и y. Чтобы изменить палитру для осей, используйте colormap функция.

    Если вы имеете три точки в графике рассеивания и хотите, чтобы цвета были индексами в палитру, задали c как трехэлементный вектор-столбец.

Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7]Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены варианты длинного и краткого наименований цветов и их эквивалентные значения RGB.

ОпцияОписаниеЭквивалентный триплет RGB
'red' или 'r'Красный[1 0 0]
'green' или 'g'Зеленый[0 1 0]
'blue' или 'b'Синий[0 0 1]
'yellow' или 'y'Желтый[1 1 0]
'magenta' или 'm'Пурпурный[1 0 1]
'cyan' или 'c'Голубой[0 1 1]
'white' или 'w'Белый[1 1 1]
'black' или 'k'Черный[0 0 0]

Пример: 'k'

Пример: [1 2 3 4]

Тип маркера в виде одного из значений перечислен в этой таблице.

ЗначениеОписание
'o'Круг
'+'Знак «плюс»
'*'Звездочка
'.'Точка
'x'Крест
'_'Горизонтальная линия
'|'Вертикальная линия
'square' или 's'Квадрат
'diamond' или 'd'Ромб
'^'Треугольник, направленный вверх
'v'Нисходящий треугольник
'>'Треугольник, указывающий вправо
'<'Треугольник, указывающий влево
'pentagram' или 'p'Пятиконечная звезда (пентаграмма)
'hexagram' или 'h'Шестиконечная звезда (гексаграмма)
'none'Никакие маркеры

Опция, чтобы заполнить внутреннюю часть маркеров в виде 'filled'. Используйте эту опцию с маркерами, которые имеют поверхность, например, 'o' или 'square'. Маркеры, которые не имеют поверхности и содержат только ребра, не чертят ('+', '*', '.', и 'x').

'filled' опция устанавливает MarkerFaceColor свойство Scatter возразите против 'flat' и MarkerEdgeColor свойство к 'none', таким образом, поверхности маркера чертят, но ребра не делают.

Целевые оси в виде Axes объект, PolarAxes объект или GeographicAxes объект. Если вы не задаете оси и если текущей системой координат являются Оси декартовой системы координат, то scatter функционируйте использует текущую систему координат. Чтобы построить в полярные оси, задайте PolarAxes возразите как первый входной параметр или используйте polarscatter функция. Чтобы построить в географические оси, задайте GeographicAxes возразите как первый входной параметр или используйте geoscatter функция.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'MarkerFaceColor','red' выбирает цвет поверхности маркера к красному.

Scatter свойства объектов, перечисленные здесь, являются только подмножеством. Для полного списка см. свойства объекта Scatter.

Цвет контура маркера, заданный 'flat', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию 'flat' использование окрашивает от CData свойство.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет 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'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот являются триплеты 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'

Пример: [0.5 0.5 0.5]

Пример: 'blue'

Пример: '#D2F9A7'

Цвет заливки маркера в виде 'flat''auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. 'flat' опция использует CData значения. 'auto' опция использует тот же цвет в качестве Color свойство для осей.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет 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'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот являются триплеты 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'

Example: [0.3 0.2 0.1]

Пример: 'green'

Пример: '#D2F9A7'

Ширина ребра маркера в виде положительного значения в модулях точки.

Пример: 0.75

Выходные аргументы

свернуть все

Scatter объект. Используйте s получить доступ и изменить свойства диаграммы поля точек после того, как это было создано.

Расширенные возможности

Представлено до R2006a