Графические контуры
fcontour( строит графики линий символьных выражений f (x, y) на интервале по умолчанию f)x и y, который [-5 5].
fcontour( графики f,[xmin xmax
ymin ymax])f через интервал xmin <x <xmax и ymin <y <ymax. fcontour функция использует symvar чтобы упорядочить переменные и назначить интервалы.
fcontour(___, использует LineSpec)LineSpec чтобы задать стиль линии и цвет. fcontour не поддерживает маркеры.
fcontour(___, задает свойства линий с помощью одной или нескольких Name,Value)Name,Value аргументы в виде пар. Используйте эту опцию с любыми комбинациями входных аргументов в предыдущих синтаксисах. Name,Value настройки пар применяются ко всем нанесенным на график линиям. Чтобы задать опции для отдельных участков, используйте объекты, возвращенные fcontour.
fcontour( Графики в осях ax,___)ax объекта вместо текущей системы координат gca.
возвращает объект контура функции. Используйте объект для запроса и изменения свойств определенного контурного графика. Для получения дополнительной информации см. FunctionContour Properties.fc = fcontour(___)
Постройте графики контуров по умолчанию область значений и . Показать шкалу палитры. Найдите уровень контура, сопоставив цвет контура со значением шкалы палитры.
syms x y fcontour(sin(x) + cos(y)) colorbar

Постройте графики контуров по умолчанию область значений и .
syms f(x,y)
f(x,y) = sin(x) + cos(y);
fcontour(f)
График и путем определения интервала графического изображения в качестве второго аргумента fcontour.
syms x y f = sin(x) + cos(y); fcontour(f,[-pi/2 pi/2 0 5])

Постройте графики контуров как синие, штриховые линии путем определения LineSpec вход. Задайте LineWidth от 2. Маркеры не поддерживаются fcontour.
syms x y fcontour(x^2 - y^2,'--b','LineWidth',2)

Постройте несколько контурных графиков либо путем передачи входов в виде вектора, либо при помощи hold on последовательно построить график на одном и том же рисунке. Если вы задаете LineStyle и аргументы Name-Value, они применяются ко всем контурным графикам. Вы не можете задать отдельные LineStyle и аргументы пары "имя-значение" для каждого графика.
Разделите рисунок на два подграфика при помощи subplot. На первом подграфике постройте график и при помощи векторного входа. На втором подграфике постройте графики тех же выражений при помощи hold on.
syms x y subplot(2,1,1) fcontour([sin(x)+cos(y) x-y]) title('Multiple Contour Plots Using Vector Inputs') subplot(2,1,2) fcontour(sin(x)+cos(y)) hold on fcontour(x-y) title('Multiple Contour Plots Using Hold Command') hold off

Постройте графики контуров . Задайте выход для создания fcontour возвращает объект графика.
syms x y f = exp(-(x/3)^2-(y/3)^2) + exp(-(x+2)^2-(y+2)^2); fc = fcontour(f)

fc =
FunctionContour with properties:
Function: [1x1 sym]
LineColor: 'flat'
LineStyle: '-'
LineWidth: 0.5000
Fill: off
LevelList: [0.2000 0.4000 0.6000 0.8000 1 1.2000 1.4000]
Show all properties
Измените LineWidth на 1 и LineStyle штриховая линия с помощью записи через точку для того, чтобы задать свойства объекта fc. Визуализация контуров, близких к 0 и 1 путем установки LevelList на [1 0.9 0.8 0.2 0.1].
fc.LineStyle = '--';
fc.LineWidth = 1;
fc.LevelList = [1 0.9 0.8 0.2 0.1];
colorbar
Заполните область между контурами путем установки Fill вход fcontour на 'on'. Если вы хотите вместо этого интерполировать затенение, используйте fsurf функция с ее опцией 'EdgeColor' установлено на 'none' далее следует команда view(0,90).
Создать график, похожий на закат, заполнив контуры
syms x y f = erf((y+2)^3) - exp(-0.65*((x-2)^2+(y-2)^2)); fcontour(f,'Fill','on')

Установите значения, при которых fcontour рисует контуры при помощи 'LevelList' опция.
syms x y f = sin(x) + cos(y); fcontour(f,'LevelList',[-1 0 1])

Управление разрешением контурных линий при помощи 'MeshDensity' опция. Увеличение 'MeshDensity' может сделать более плавными, более точные графики, в то время как уменьшение это может увеличить скорость графического изображения.
Разделите рисунок на две функции с помощью subplot. В первой подграфике постройте график контуров . Углы квадратов не совпадают. Чтобы устранить эту проблему, увеличьте 'MeshDensity' на 200 во второй подграфике. Теперь углы встречаются, показывая, что увеличивая 'MeshDensity' вы увеличиваете разрешение графика.
syms x y subplot(2,1,1) fcontour(sin(x).*sin(y)) title('Default MeshDensity = 71') subplot(2,1,2) fcontour(sin(x).*sin(y),'MeshDensity',200) title('Increased MeshDensity = 200')

График . Добавьте заголовок и подписи по осям. Создайте такты на оси X путем охвата пределов оси X с интервалами pi/2. Отобразите эти такты при помощи XTick свойство. Создайте метки оси X при помощи arrayfun для применения texlabel на S. Отображение этих меток при помощи XTickLabel свойство. Повторите эти шаги для оси Y.
Чтобы использовать LaTeX на графиках, смотрите latex.
syms x y fcontour(x*sin(y)-y*cos(x), [-2*pi 2*pi]) grid on title('xsin(y)-ycos(x) for -2\pi < x < 2\pi and -2\pi < y < 2\pi') xlabel('x') ylabel('y') ax = gca; S = sym(ax.XLim(1):pi/2:ax.XLim(2)); ax.XTick = double(S); ax.XTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false); S = sym(ax.YLim(1):pi/2:ax.YLim(2)); ax.YTick = double(S); ax.YTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false);

Создавайте анимации путем изменения отображаемого выражения с помощью Function свойство указателя на функцию, а затем использование drawnow для обновления графика. Для экспорта в GIF см. раздел imwrite.
Варьируя i переменной от -,/8 до, анимируйте параметрическую кривую i sin (x) + i cos (y).
syms x y fc = fcontour(-pi/8.*sin(x)-pi/8.*cos(y)); for i=-pi/8:0.01:pi/8 fc.Function = i.*sin(x)+i.*cos(y); drawnow pause(0.05) end

fcontour присваивает символьные переменные в f на x ось, затем y ось, и symvar определяет порядок переменных, которые будут назначены. Поэтому имена переменных и осей могут не совпадать. Вызвать fcontour чтобы назначить x или y ее соответствующей оси, создайте символическую функцию для построения графика, затем передайте символьную функцию fcontour.
Для примера следующий код строит графики контура поверхностного f (x, y) = sin (y) двумя способами. Первый способ заставляет волны колебаться относительно оси y. Второй способ присваивает y оси x, потому что это первая (и единственная) переменная в символьной функции.
syms x y; f(x,y) = sin(y); figure; subplot(2,1,1) fcontour(f); subplot(2,1,2) fcontour(f(x,y)); % Or fcontour(sin(y));
