exponenta event banner

дрожь

Волнистый или векторный график

  • Cartesian grid with plotted arrows

Описание

пример

quiver(X,Y,U,V) строит стрелки с направленными компонентами U и V в декартовых координатах, указанных X и Y. Например, первая стрелка начинается от точки X(1) и Y(1), простирается горизонтально в соответствии с U(1)и простирается вертикально в соответствии с V(1). По умолчанию quiver функция масштабирует длины стрелок таким образом, чтобы они не перекрывались.

quiver(U,V) отображает стрелки с направленными компонентами, заданными U и V в равноотстоящих точках.

  • Если U и V являются векторами, то x-координаты стрелок находятся в диапазоне от 1 до числа элементов в U и Vи координаты y равны 1.

  • Если U и V - матрицы, то x-координаты стрелок находятся в диапазоне от 1 до числа столбцов в U и Vи координаты y стрелок находятся в диапазоне от 1 до числа строк в U и V.

пример

quiver(___,scale) корректирует длину стрелок:

  • Когда scale - положительное число, quiver функция автоматически корректирует длины стрелок так, чтобы они не перекрывались, а затем растягивает их в коэффициент scale. Например, scale 2 удваивает длину стрелок, и scale от 0,5 до половины длины стрелок.

  • Когда scale является 'off' или 0, такие как quiver(X,Y,U,V,'off'), то автоматическое масштабирование отключено.

пример

quiver(___,LineSpec) задает стиль линии, маркер и цвет. Маркеры отображаются в точках, указанных X и Y. При указании маркера с помощью LineSpec, то quiver не отображает стрелки. Чтобы задать маркер и отобразить стрелки, задайте Marker вместо этого свойство.

quiver(___,LineSpec,'filled') заполняет маркеры, указанные LineSpec.

quiver(___,Name,Value) задает свойства quiver, используя один или несколько аргументов пары имя-значение. Список свойств см. в разделе Свойства Quiver. Укажите аргументы пары имя-значение после всех других входных аргументов. Аргументы пары «имя-значение» применяются ко всем стрелкам на графике quiver.

пример

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

пример

q = quiver(___) возвращает Quiver объект. Этот объект полезен для управления свойствами графика quiver после его создания.

Примеры

свернуть все

Загрузить данные выборки, которые представляют воздушные течения над Северной Америкой. В этом примере выберите подмножество данных.

load('wind','x','y','u','v')
X = x(11:22,11:22,1);
Y = y(11:22,11:22,1);
U = u(11:22,11:22,1);
V = v(11:22,11:22,1);

Создайте quiver-график выбранного подмножества. Векторы X и Y представляют расположение основания каждой стрелки, и U и V представляют компоненты направления каждой стрелки. По умолчанию quiver функция укорачивает стрелки, чтобы они не перекрывались. Звонить axis equal для использования одинаковых длин единиц данных вдоль каждой оси. Это заставляет стрелки указывать в правильном направлении.

quiver(X,Y,U,V)
axis equal

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

По умолчанию quiver функция укорачивает стрелки, чтобы они не перекрывались. Отключить автоматическое масштабирование, чтобы длины стрелок определялись полностью U и V путем установки scale аргумент для 0.

Например, создайте сетку из X и Y значения с использованием meshgrid функция. Укажите компоненты направления, используя эти значения. Затем создайте график quiver без автоматического масштабирования.

[X,Y] = meshgrid(0:6,0:6);
U = 0.25*X;
V = 0.5*Y;
quiver(X,Y,U,V,0)

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

Постройте график градиента и контуров функции z = xe-x2-y2. Используйте quiver для построения графика градиента и contour функция для печати контуров.

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

spacing = 0.2;
[X,Y] = meshgrid(-2:spacing:2);
Z = X.*exp(-X.^2 - Y.^2);
[DX,DY] = gradient(Z,spacing);

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

quiver(X,Y,DX,DY)
hold on
contour(X,Y,Z)
axis equal
hold off

Figure contains an axes. The axes contains 2 objects of type quiver, contour.

Создайте график quiver и укажите цвет стрелок.

[X,Y] = meshgrid(-pi:pi/8:pi,-pi:pi/8:pi);
U = sin(Y);
V = cos(X);
quiver(X,Y,U,V,'r')

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

Создание сетки из X и Y значения и два набора U и V направленные компоненты.

[X,Y] = meshgrid(0:pi/8:pi,-pi:pi/8:pi);
U1 = sin(X);
V1 = cos(Y);
U2 = sin(Y);
V2 = cos(X); 

Создание мозаичной компоновки графиков с двумя осями, ax1 и ax2. Добавьте график и заголовок quiver к каждой оси. (Перед R2019b используйте subplot вместо tiledlayout и nexttile.)

tiledlayout(1,2)

ax1 = nexttile;
quiver(ax1,X,Y,U1,V1)
axis equal
title(ax1,'Left Plot')

ax2 = nexttile;
quiver(ax2,X,Y,U2,V2)
axis equal
title(ax2,'Right Plot')

Figure contains 2 axes. Axes 1 with title Left Plot contains an object of type quiver. Axes 2 with title Right Plot contains an object of type quiver.

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

[X,Y] = meshgrid(-pi:pi/8:pi,-pi:pi/8:pi);
U = sin(Y);
V = cos(X);

q = quiver(X,Y,U,V);
q.ShowArrowHead = 'off';
q.Marker = '.';

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

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

свернуть все

x - координаты оснований стрелок, заданные как скаляр, вектор или матрица.

Если X и Y являются векторами и U и V являются матрицами, то quiver расширяется X и Y в матрицы. В этом случае size(U) и size(V) должны равняться [length(Y) length(X)]. Дополнительные сведения о развертывании векторов в матрицы см. в разделе meshgrid.

Если X и Y являются матрицами, то X, Y, U, и V должен быть одинакового размера.

y - координаты оснований стрелок, заданные как скаляр, вектор или матрица.

Если X и Y являются векторами и U и V являются матрицами, то quiver расширяется X и Y в матрицы. В этом случае size(U) и size(V) должны равняться [length(Y) length(X)]. Дополнительные сведения о развертывании векторов в матрицы см. в разделе meshgrid.

Если X и Y являются матрицами, то X, Y, U, и V должен быть одинакового размера.

x - компоненты стрелок, заданные как скаляр, вектор или матрица.

Если X и Y являются векторами, то size(U) и size(V) должны равняться [length(Y) length(X)].

Если X и Y являются матрицами, то X, Y, U, и V должен быть одинакового размера.

y-компоненты стрелок, заданные как скаляр, вектор или матрица.

Если X и Y являются векторами, то size(U) и size(V) должны равняться [length(Y) length(X)].

Если X и Y являются матрицами, то X, Y, U, и V должен быть одинакового размера.

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

При указании маркера с помощью LineSpec, то quiver не отображает стрелки. Чтобы задать маркер и отобразить стрелки, задайте Marker вместо этого свойство.

Пример: '--or' - красная пунктирная линия с маркерами окружности

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

y

желтый

m

пурпурный

c

голубой

r

красный

g

зеленый

b

синий

w

белый

k

черный

Коэффициент масштабирования стрелок, заданный как положительное число или 'off'. По умолчанию quiver функция автоматически масштабирует стрелки, чтобы они не перекрывались. quiver функция применяет коэффициент масштабирования после автоматического масштабирования стрелок.

Определение scale совпадает с настройкой AutoScaleFactor свойства объекта quiver. Например, указание scale как 2 удваивает длину стрелок. Определение scale как 0.5 уменьшает длину стрелок наполовину.

Чтобы отключить автоматическое масштабирование, укажите scale как 'off' или 0. При указании любого из этих значений AutoScale свойство объекта quiver имеет значение 'off' и длина стрелки определяется полностью U и V.

Целевые оси, указанные как Axes объект. Если оси не указаны, то quiver функция использует текущие оси.

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

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

Пример: 'Color','r','LineWidth',1

Примечание

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

Ширина стержня стрелки и головки, заданная как скалярное числовое значение, большее нуля в единицах измерения точки. Одна точка равна 1/72 дюйм. Значение по умолчанию: 0.5 точка.

Пример: 0.75

Отображение стрелки, указанное как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.

  • 'on' - Отображение векторов со стрелками.

  • 'off' - Отображение векторов без стрелок.

Автоматическое масштабирование длины стрелки, указанное как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.

  • 'on' - масштабировать длину стрелки так, чтобы она вписывалась в определенные сеткой данные координат и масштабировать стрелки так, чтобы они не перекрывались. quiver или quiver3 затем применяет AutoScaleFactor до длины стрелки.

  • 'off' - Не масштабировать длины стрелок.

Масштабный коэффициент, заданный как скаляр. Значение 2 удваивает длину стрелок. Значение 0.5 уменьшает длину стрелок наполовину.

Это свойство действует только в том случае, если AutoScale свойство имеет значение 'on'.

Пример: 2

Совет

Чтобы создать график «quiver» с использованием полярных координат, сначала преобразуйте их в декартовы координаты с помощью pol2cart функция.

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

См. также

Функции

Свойства

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