scatter3

3-D точечный график

Описание

пример

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

пример

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

пример

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

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

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

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

пример

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

пример

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

пример

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

пример

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

пример

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

Примеры

свернуть все

Создайте 3-D точечный график. Используйте sphere задавать векторы xY, и 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)

Figure contains an axes. The axes contains an object of type scatter.

Используйте sphere задавать векторы xY, и 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)

Figure contains an axes. The axes contains an object of type scatter.

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

Используйте sphere задавать векторы xY, и 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)

Figure contains an axes. The axes contains an object of type scatter.

Соответствующие записи в xYZ, и 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)

Figure contains an axes. The axes contains an object of type scatter.

Инициализируйте генератор случайных чисел, чтобы сделать выход 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)

Figure contains an axes. The axes contains an object of type scatter.

Инициализируйте генератор случайных чисел, чтобы сделать выход 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)

Figure contains an axes. The axes contains an object of type scatter.

Начиная в R2019b, можно отобразить плиточное размещение графиков с помощью tiledlayout и nexttile функции.

Загрузите seamount набор данных, чтобы получить векторы xY, и z. Вызовите tiledlayout функция, чтобы создать 2 1 мозаичное размещение графика. Вызовите nexttile функция, чтобы создать объекты осей ax1 и ax2. Затем создайте отдельные графики рассеивания в осях путем определения объекта осей в качестве первого аргумента к scatter3.

load seamount
tiledlayout(2,1)
ax1 = nexttile;
ax2 = nexttile;
scatter3(ax1,x,y,z,'MarkerFaceColor',[0 .75 .75])
scatter3(ax2,x,y,z,'*')

Figure contains 2 axes. Axes 1 contains an object of type scatter. Axes 2 contains an object of type scatter.

Используйте sphere функция, чтобы создать векторы xY, и 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);

Figure contains an axes. The axes contains an object of type scatter.

Используйте значение цвета триплета RGB, чтобы выбрать цвет поверхности маркера. Используйте запись через точку, чтобы установить свойства.

h.MarkerFaceColor = [0 0.5 0.5];

Figure contains an axes. The axes contains an object of type scatter.

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

свернуть все

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

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

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

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

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

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

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

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

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

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

Пример: 50

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

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

Триплет 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]

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

Пример: 'y'

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

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

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

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

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

Задайте дополнительные разделенные запятой пары Name,Value аргументы. 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