scatter3

3-D график рассеивания

Синтаксис

scatter3(X,Y,Z)
scatter3(X,Y,Z,S)
scatter3(X,Y,Z,S,C)
scatter3(___,'filled')
scatter3(___,markertype)
scatter3(___,Name,Value)
scatter3(ax,___)
h = scatter3(___)

Описание

пример

scatter3(X,Y,Z) круги отображений в местоположениях, заданных векторами X, Y и Z.

пример

scatter3(X,Y,Z,S) рисует каждый круг с размером, заданным S. Чтобы построить каждый круг с равным размером, задайте S как скаляр. Чтобы построить каждый круг с определенным размером, задайте S как вектор.

пример

scatter3(X,Y,Z,S,C) рисует каждый круг с цветом, заданным C.

  • Если C является триплет RGB или вектор символов или строка, содержащая название цвета, то все круги построены с заданным цветом.

  • Если C является тремя матрицами столбца с количеством строк в C, равном длине X, Y и Z, то каждая строка C задает значение цвета RGB для соответствующего круга.

  • Если C является вектором с длиной, равной длине X, Y и Z, то значения в C линейно сопоставлены с цветами в текущей палитре.

пример

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

пример

scatter3(___,markertype) задает тип маркера.

пример

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

пример

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

пример

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

Примеры

свернуть все

Создайте 3-D график рассеивания. Используйте sphere, чтобы задать векторы x, y и z.

figure
[X,Y,Z] = sphere(16);
x = [0.5*X(:); 0.75*X(:); X(:)];
y = [0.5*Y(:); 0.75*Y(:); Y(:)];
z = [0.5*Z(:); 0.75*Z(:); Z(:)];
scatter3(x,y,z)

Используйте sphere, чтобы задать векторы x, y и z.

[X,Y,Z] = sphere(16);
x = [0.5*X(:); 0.75*X(:); X(:)];
y = [0.5*Y(:); 0.75*Y(:); Y(:)];
z = [0.5*Z(:); 0.75*Z(:); Z(:)];

Задайте векторный s, чтобы задать размеры маркера.

S = repmat([100,50,5],numel(X),1);
s = S(:);

Создайте 3-D график рассеивания и используйте view, чтобы изменить угол осей в фигуре.

figure
scatter3(x,y,z,s)
view(40,35)

Соответствующие записи в x, y, z и s определяют местоположение и размер каждого маркера.

Используйте sphere, чтобы задать векторы x, y и z.

[X,Y,Z] = sphere(16);
x = [0.5*X(:); 0.75*X(:); X(:)];
y = [0.5*Y(:); 0.75*Y(:); Y(:)];
z = [0.5*Z(:); 0.75*Z(:); Z(:)];

Задайте векторы s и c, чтобы задать размер и цвет каждого маркера.

S = repmat([50,25,10],numel(X),1);
C = repmat([1,2,3],numel(X),1);
s = S(:);
c = C(:);

Создайте 3-D график рассеивания и используйте view, чтобы изменить угол осей в фигуре.

figure
scatter3(x,y,z,s,c)
view(40,35)

Соответствующие записи в x, y, z и c определяют местоположение и цвет каждого маркера.

Создайте векторы x и y как косинус и значения синуса со случайным шумом.

z = linspace(0,4*pi,250);
x = 2*cos(z) + rand(1,250);
y = 2*sin(z) + rand(1,250);

Создайте 3-D график рассеивания и заполните маркеры. Используйте view, чтобы изменить угол осей в фигуре.

scatter3(x,y,z,'filled')
view(-30,10)

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

rng default
z = linspace(0,4*pi,250);
x = 2*cos(z) + rand(1,250);
y = 2*sin(z) + rand(1,250);

Создайте 3-D график рассеивания и установите тип маркера. Используйте view, чтобы изменить угол осей в фигуре.

figure
scatter3(x,y,z,'*')
view(-30,10)

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

rng default
z = linspace(0,4*pi,250);
x = 2*cos(z) + rand(1,250);
y = 2*sin(z) + rand(1,250);

Создайте 3-D график рассеивания и установите цвет обводки маркера и цвет поверхности маркера. Используйте view, чтобы изменить угол осей в фигуре.

figure
scatter3(x,y,z,...
        'MarkerEdgeColor','k',...
        'MarkerFaceColor',[0 .75 .75])
view(-30,10)

Загрузите набор данных seamount, чтобы получить векторы x, y и z.

load seamount

Создайте фигуру с двумя подграфиками и возвратите указатели на эти две оси в массиве hs. В каждом подграфике создайте 3-D график рассеивания. Задайте свойства маркера для каждого графика рассеивания.

figure
hs(1) = subplot(2,1,1);
hs(2) = subplot(2,1,2);
scatter3(hs(1),x,y,z,'MarkerFaceColor',[0 .75 .75])
scatter3(hs(2),x,y,z,'*')

Используйте функцию sphere, чтобы создать векторы x, y и z.

[X,Y,Z] = sphere(16);
x = [0.5*X(:); 0.75*X(:); X(:)];
y = [0.5*Y(:); 0.75*Y(:); Y(:)];
z = [0.5*Z(:); 0.75*Z(:); Z(:)];

Создайте векторы s и c, чтобы задать размер и цвет для каждого маркера.

S = repmat([70,50,20],numel(X),1);
C = repmat([1,2,3],numel(X),1);
s = S(:);
c = C(:);

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

h = scatter3(x,y,z,s,c);

Используйте значение цвета триплета RGB, чтобы выбрать цвет поверхности маркера. Начиная с R2014b, вы можете использовать запись через точку для того, чтобы задать свойства. Если вы используете более раннюю версию, используйте вместо этого функцию set.

h.MarkerFaceColor = [0 0.5 0.5];

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

свернуть все

x значения, заданные как вектор. X, Y и Z должны быть векторами равной длины.

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

y значения, заданные как вектор. X, Y и Z должны быть векторами равной длины.

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

z значения, заданные как вектор. X, Y и Z должны быть векторами равной длины.

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

Область Marker, заданная как скаляр, вектор или []. Значения в S должны быть положительными. Модули для области являются точками, в квадрате.

  • Если S является скаляром, то scatter3 строит все маркеры с заданной областью.

  • Если S является строкой или вектор-столбцом, то каждая запись в S задает область для соответствующего маркера. Длина S должна равняться длине X, Y и Z. Соответствующие записи в X, Y, Z и S определяют местоположение и область каждого маркера.

  • Если S пуст, то размер по умолчанию 36 точек придал квадратную форму, используется.

Пример: 50

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

Цвет маркера, заданный как триплет RGB, матрица с тремя столбцами триплета RGB, вектора или одного из параметров цвета в таблице.

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

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

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

Пример: 'y'

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

Маркер, заданный как один из маркеров в этой таблице.

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

Объект осей. Если вы не задаете оси, то scatter3 строит в текущую систему координат.

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

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

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

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

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

Пример: 0.75

Цвет контура маркера, заданный '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'

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

свернуть все

Объект Scatter. Это - уникальный идентификатор, который можно использовать, чтобы запросить и изменить свойства объекта Scatter после того, как он создается.

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

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