plot3

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

Синтаксис

plot3(X,Y,Z)
plot3(X,Y,Z,LineSpec)
plot3(X1,Y1,Z1,...,Xn,Yn,Zn)
plot3(X1,Y1,Z1,LineSpec1,...,Xn,Yn,Zn,LineSpecn)
plot3(___,Name,Value)
plot3(ax,___)
p = plot3(___)

Описание

пример

plot3(X,Y,Z) графики координируют на 3-D пробеле.

  • Чтобы построить набор координат, соединенных с методической точностью сегменты, задайте X, Y и Z как векторы той же длины.

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

пример

plot3(X,Y,Z,LineSpec) создает график с помощью заданного стиля линии, маркера и цвета.

пример

plot3(X1,Y1,Z1,...,Xn,Yn,Zn) графики несколько наборов координат на том же наборе осей. Используйте этот синтаксис в качестве альтернативы определению нескольких наборов как матрицы.

пример

plot3(X1,Y1,Z1,LineSpec1,...,Xn,Yn,Zn,LineSpecn) присваивает определенные стили линии, маркеры, и окрашивает к каждому триплету XYZ. Можно задать LineSpec для некоторых триплетов и не использовать его для других. Например, plot3(X1,Y1,Z1,'o',X2,Y2,Z2) задает маркеры для первого триплета, но не для второго триплета.

пример

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

пример

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

пример

p = plot3(___) возвращает объект Line или массив объектов Line. Используйте p, чтобы изменить свойства графика после создания его. Для списка свойств смотрите Line Properties.

Примеры

свернуть все

Задайте t как вектор значений между 0 и 10π. Задайте st и ct как векторы значений косинуса и синуса. Затем постройте st, ct и t.

t = 0:pi/50:10*pi;
st = sin(t);
ct = cos(t);
plot3(st,ct,t)

Создайте два набора x-, y-, и z-координаты.

t = 0:pi/500:pi;
xt1 = sin(t).*cos(10*t);
yt1 = sin(t).*sin(10*t);
zt1 = cos(t);

xt2 = sin(t).*cos(12*t);
yt2 = sin(t).*sin(12*t);
zt2 = cos(t);

Вызовите функцию plot3 и задайте последовательные триплеты XYZ.

plot3(xt1,yt1,zt1,xt2,yt2,zt2)

Создайте матричный X, содержащий три строки x-координат. Создайте матричный Y, содержащий три строки y-координат.

t = 0:pi/500:pi;
X(1,:) = sin(t).*cos(10*t);
X(2,:) = sin(t).*cos(12*t);
X(3,:) = sin(t).*cos(20*t);

Y(1,:) = sin(t).*sin(10*t);
Y(2,:) = sin(t).*sin(12*t);
Y(3,:) = sin(t).*sin(20*t);

Создайте матричный Z, содержащий z-координаты для всех трех наборов.

Z = cos(t);

Постройте все три набора координат на том же наборе осей.

plot3(X,Y,Z)

Создайте векторы xt, yt и zt.

t = 0:pi/500:40*pi;
xt = (3 + cos(sqrt(32)*t)).*cos(t);
yt = sin(sqrt(32) * t);
zt = (3 + cos(sqrt(32)*t)).*sin(t);

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

plot3(xt,yt,zt)
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')

Создайте векторы t, xt и yt, и постройте точки в тех векторах с помощью круговых маркеров.

t = 0:pi/20:10*pi;
xt = sin(t);
yt = cos(t);
plot3(xt,yt,t,'o')

Создайте векторы t, xt и yt, и постройте точки в тех векторах как синяя строка с круговыми маркерами с 10 точками. Используйте шестнадцатеричный цветовой код, чтобы задать голубой цвет заливки для маркеров.

t = 0:pi/20:10*pi;
xt = sin(t);
yt = cos(t);
plot3(xt,yt,t,'-o','Color','b','MarkerSize',10,'MarkerFaceColor','#D9FFFF')

Создайте векторный t. Затем используйте t, чтобы вычислить два набора значений X и Y.

t = 0:pi/20:10*pi;
xt1 = sin(t);
yt1 = cos(t);

xt2 = sin(2*t);
yt2 = cos(2*t);

Постройте эти два множества значений. Используйте строку по умолчанию для первого набора и задайте пунктирную линию для второго набора.

plot3(xt1,yt1,t,xt2,yt2,t,'--')

Создайте векторы t, xt и yt, и отобразите данные на графике в тех векторах. Возвратите линию на графике в выходной переменной p.

t = linspace(-10,10,1000);
xt = exp(-t./10).*sin(5*t);
yt = exp(-t./10).*cos(5*t);
p = plot3(xt,yt,t);

Измените ширину линии на 3.

p.LineWidth = 3;

Используйте функцию subplot, чтобы создать две оси, ax1 и ax2. Постройте отдельные графики в осях путем определения объекта осей в качестве первого аргумента к plot 3.

% Left plot
ax1 = subplot(1,2,1);
t = 0:pi/20:10*pi;
xt1 = sin(t);
yt1 = cos(t);
plot3(ax1,xt1,yt1,t)
title(ax1,'Helix With 5 Turns')

% Right plot
ax2 = subplot(1,2,2);
t = 0:pi/20:10*pi;
xt2 = sin(2*t);
yt2 = cos(2*t);
plot3(ax2,xt2,yt2,t)
title(ax2,'Helix With 10 Turns')

Создайте x и y как векторы случайных значений между 0 и 1. Создайте z как вектор случайных значений длительности.

x = rand(1,10);
y = rand(1,10);
z = duration(rand(10,1),randi(60,10,1),randi(60,10,1));

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

plot3(x,y,z,'o','DurationTickFormat','mm:ss')
xlabel('X')
ylabel('Y')
zlabel('Duration')
grid on

Создайте векторы xt, yt и zt. Постройте значения, задав сплошную линию с круговыми маркерами с помощью аргумента LineSpec. Задайте свойство MarkerIndices поместить один маркер в 200-й точке данных.

t = 0:pi/500:pi;
xt(1,:) = sin(t).*cos(10*t);
yt(1,:) = sin(t).*sin(10*t);
zt = cos(t);
plot3(xt,yt,zt,'-o','MarkerIndices',200)

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

свернуть все

x-, заданные как скаляр, вектор или матрица. Размер и форма X зависят от формы ваших данных и типа графика, который вы хотите создать. Эта таблица описывает наиболее распространенные ситуации.

Тип графикаКак задать координаты
Одна точка

Задайте X, Y и Z как скаляры и включайте маркер. Например:

plot3(1,2,3,'o')

Один набор точек

Задайте X, Y и Z как любая комбинация строки или вектор-столбцы той же длины. Например:

plot3([1 2 3],[4; 5; 6],[7 8 9])

Несколько наборов точек
(использование векторов)

Задайте последовательные наборы X, Y и векторов Z. Например:

plot3([1 2 3],[4 5 6],[7 8 9],[1 2 3],[4 5 6],[10 11 12])

Несколько наборов точек
(использование матриц)

Задайте по крайней мере один из X, Y или Z как матрица и другие как векторы. Каждый X, Y и Z должен иметь по крайней мере одну размерность, которая является тем же размером. Для лучших результатов задайте все векторы той же формы и все матрицы той же формы. Например:

plot3([1 2 3],[4 5 6],[7 8 9; 10 11 12])

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

y-, заданные как скаляр, вектор или матрица. Размер и форма Y зависят от формы ваших данных и типа графика, который вы хотите создать. Эта таблица описывает наиболее распространенные ситуации.

Тип графикаКак задать координаты
Одна точка

Задайте X, Y и Z как скаляры и включайте маркер. Например:

plot3(1,2,3,'o')

Один набор точек

Задайте X, Y и Z как любая комбинация строки или вектор-столбцы той же длины. Например:

plot3([1 2 3],[4; 5; 6],[7 8 9])

Несколько наборов точек
(использование векторов)

Задайте последовательные наборы X, Y и векторов Z. Например:

plot3([1 2 3],[4 5 6],[7 8 9],[1 2 3],[4 5 6],[10 11 12])

Несколько наборов точек
(использование матриц)

Задайте по крайней мере один из X, Y или Z как матрица и другие как векторы. Каждый X, Y и Z должен иметь по крайней мере одну размерность, которая является тем же размером. Для лучших результатов задайте все векторы той же формы и все матрицы той же формы. Например:

plot3([1 2 3],[4 5 6],[7 8 9; 10 11 12])

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

z-, заданные как скаляр, вектор или матрица. Размер и форма Z зависят от формы ваших данных и типа графика, который вы хотите создать. Эта таблица описывает наиболее распространенные ситуации.

Тип графикаКак задать координаты
Одна точка

Задайте X, Y и Z как скаляры и включайте маркер. Например:

plot3(1,2,3,'o')

Один набор точек

Задайте X, Y и Z как любая комбинация строки или вектор-столбцы той же длины. Например:

plot3([1 2 3],[4; 5; 6],[7 8 9])

Несколько наборов точек
(использование векторов)

Задайте последовательные наборы X, Y и векторов Z. Например:

plot3([1 2 3],[4 5 6],[7 8 9],[1 2 3],[4 5 6],[10 11 12])

Несколько наборов точек
(использование матриц)

Задайте по крайней мере один из X, Y или Z как матрица и другие как векторы. Каждый X, Y и Z должен иметь по крайней мере одну размерность, которая является тем же размером. Для лучших результатов задайте все векторы той же формы и все матрицы той же формы. Например:

plot3([1 2 3],[4 5 6],[7 8 9; 10 11 12])

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

Стиль линии, цвет и маркер задается как символ или строка символов. Символы могут появиться в любом порядке. Вы не должны задавать все три характеристики (стиль линии, маркер и цвет). Например, если вы не используете стиль линии и задаете маркер, затем график показывает только маркер и никакую строку.

Пример: '--or' является красной пунктирной линией с круговыми маркерами

Стиль линииОписание
-Сплошная линия (значение по умолчанию)
--Пунктирная линия
:Пунктирная линия
-.Штрихпунктирная линия
МаркерОписание
oКруг
+Знак «плюс»
*Звездочка
.Точка
xКрест
sКвадрат
dРомб
^Треугольник, направленный вверх
vНисходящий треугольник
>Треугольник, указывающий вправо
<Треугольник, указывающий влево
pПентаграмма
hГексаграмма
ЦветОписание

y

желтый

m

пурпурный

c

голубой

r

красный

g

зеленый

b

синий

w

белый

k

черный

Целевые оси, заданные как объект Axes. Если вы не задаете оси и если текущей системой координат являются Оси декартовой системы координат, то функция plot использует текущую систему координат.

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

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

Пример: plot3([1 2],[3 4],[5 6],'Color','red') задает красную линию для графика.

Примечание

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

Цвет, заданный как триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Цвет, который вы задаете, устанавливает цвет линии. Это также устанавливает цвет обводки маркера, когда свойство MarkerEdgeColor установлено в 'auto'.

Для пользовательского цвета задайте триплет 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'

Ширина линии, заданная как положительное значение в точках, где 1 точка = 1/72 дюйма. Если у линии есть маркеры, ширина линии также влияет на края маркера.

Размер маркера, заданный как положительное значение в точках, где 1 точка = 1/72 дюйма.

Цвет контура маркера, заданный как 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию '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'

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

Для пользовательского цвета задайте триплет 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'

Советы

  • Используйте NaN или Inf, чтобы создать пропуски в строках. Например, этот код строит график с пропуском между z=2 и z=4.

     plot3([1 2 3 4 5],[1 2 3 4 5],[1 2 NaN 4 5])

  • plot3 использует цвета и стили линии на основе свойств ColorOrder и LineStyleOrder осей. Это циклически повторяется через цвета с первым стилем линии. Затем это циклически повторяется через цвета снова с каждым дополнительным стилем линии.

    Можно изменить цвета по умолчанию и стили линии путем установки значений по умолчанию для свойств ColorOrder и LineStyleOrder. Например, чтобы установить стили линии по умолчанию на сплошную линию с маркерами звездочки, пунктирная линия и круговые маркеры без строки, используют эту команду:

    set(groot,'defaultAxesLineStyleOrder',{'-*',':','o'})

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

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