Перейти к содержимому

Как задать интервал в матлабе

  • автор:

In Matlab, how to change plot intervals?

I’ve been writin’ a Matlab function that reads a file and plots its 3D graphics, with three projection.

In the four graphics provided, it plots all the data, and decides the x,y,z interval from these data points. I woul like to change these plottin’ intervals, but I don’t know how to do it.

See this figure: enter image description here

In this case my problem is that on the 4th image (zy plane) I would like to see the y points in interval [1. 0], instead of viewin’ in interval [1. 0.4].

Matlab fplot()

Priya Pedamkar

MATLAB function fplot() is used to generate symbolic plots with respect to expressions or functions. The default range of interval for the graph generated out of the fplot() function is [-5,5].

Hadoop, Data Science, Statistics & others

Example

The below code is designed to generate a plot for the function tan(2x) using the fplot() method.

Output: The plot is generated for the function tan(2*var) with respect to the values of var ranging from -5 to 5.

Matlab fplot() - 1

Syntax

Based on the input argument given in the function call, there is the various syntax which can be used to implement the fplot() method as described below:

Methods of Matlab fplot()

Let’s understand the application of various syntax for implementing the method fplot() by means of examples.

Method #1 – Using the syntax fplot(x)

In the below example there is only one input argument i.e. the expression function defined with the depending variable x. Here, the value range for the variable x is set to default values i.e. [-5,5].

syms func(x)
func(x) = sin(x);
fplot(func)

Output:

fplot(x)

Method #2 – Using the syntax fplot(f,finterval)

The below code is written to generate a pot for the given expression func(x) within the specified time interval i.e. finterval.

Code:

syms func(x)
func(x) = sin(x);
fplot(func,[-2,2])

Output: The resultant plot is generated for the expression of sin(x) for the defined range of values -2 to 2.

fplot(f,finterval)

Method #3 – Using the syntax fplot(pt,qt)

The below MATLAB code is designed to generate plots for two functions pt, qt with the common depending variable t with the single call of the method fplot().

Code: The value range for the depending variable t is the default value set i.e. [-5,5].

pt = @(t) tan(2*t);
qt = @(t) cot(3*t);
fplot(pt,qt)

Output:

fplot(pt,qt)

Method #4 – Using the syntax fplot(pt,qt,tinterval)

Code:

pt = @(t) tan(2*t);
qt = @(t) cot(3*t);
fplot(pt,qt,[-1,1])

Output: The resultant graph generated from the above code, contains the plots for the expressions tan(2t) and cot(3t) for the depending variable t within the specified time range of [-1,1].

(pt,qt,tinterval)

5

Method #4 – Using the syntax p=fplot(——)

The below code is written to demonstrate the behavior of the function fplot() with a parametric object.

First phase

Code: The plot is generated using function call fplot() and is assigned to the parametric variable ‘p’.

syms var
p = fplot(cos(var))

Output:

Matlab fplot() - 6

Second Phase

Code: The presentation of the plot is customized by editing the attribute values accessing through the parametric object ‘p’.

p.LineStyle = ‘—‘;
p.Color = ‘r’;
p.Marker = ‘x’;
p.MarkerEdgeColor = ‘b’;

Output:

Matlab fplot() - 7

Example

The below code is written to generate the plot for the given function expression with editing representation of the graph by including title, x,y labels and tick values.

Code:

syms var
fplot(cos(var),[-2*pi 2*pi])
grid on
title(‘sin(var) from -2\pi to 2\pi’)
xlabel(‘var’)
ylabel(‘f’)
nx = gca;
S = sym(nx.XLim(1):pi/2:nx.XLim(2));
nx.XTick = double(S);
nx.XTickLabel = arrayfun(@texlabel,S,’UniformOutput’,false);

Output:

tick values

The plot is generated for the expression sin(var) for the range of values of var, -2\pi to 2\pi.The title of the graph as ‘sin(var) from -2\pi to 2\pi’, xlabel as ‘var’ and ylable as ‘f’ is set.

Different Attributes Supported by fplot()

There are various attributes that are supported by fplot() to edit the display of the plot. The major attributes are described in the below table:

Attribute Description
LineSpec Used to customize the display of the plot lines, markers, etc.
Color Used to decide the color of the line
LineStyle Used to decide the style of the line
Marker Decides the symbol be used as a marker
MarkerEdgeColor Used to decide the outline color of the marker
MarkerFaceColor Used to set the color to be filled in the marker
MarkerSize Decides the size of the marker
MeshDensity To set the number of the evaluation point

Examples to Implement Matlab fplot()

Below are the examples mentioned:

Example #1

The below code snippet is designed to plot the functions ‘pt’ and ‘qt’ and regulating the attribute Linewidth.

Code:

pt = @(t) tan(2*t);
qt = @(t) cot(3*t);
fplot(pt,qt,’-.*c’,’Linewidth’,2)

Output:

functions pt and qt

The resultant plot generated from the method fplot() for the functions pt and qt is presented with a modified line width value 2.

Example #2

The smoothness, accuracy, and speed of the drawing of the plot are controlled by the option MeshDensity which is the count for evaluation points.

Code:

syms x
Funcstep = rectangularPulse(2.1, 2.15, x);
subplot(2,1,1)
fplot(Funcstep);
title(‘ MeshDensity (Default value) = 23’)
subplot(2,1,2)
fplot(Funcstep,’MeshDensity’,50);
title(‘ MeshDensity (Increased value)= 50’)

Output:

plotting multiple functions

The method fplot() also supports plotting multiple functions in one single frame by splitting the layout into the same number of cells.

Example #3

Code:

syms var
subplot(2,1,1)
fplot([sin(var) cos(var)])
title(‘Multiple plots on single layout’)
subplot(2,1,2)
fplot(sin(var))
hold on
fplot(cos(var))
title(‘Multiple plots with Command hold on’)
hold off

Output:

Matlab fplot() - 11

Additional Note

Below are the additional note for Matlab fplot():

1. Re-evaluation on Zoom: The plot generated from the fplot can be reevaluated by using the zooming feature. It helps the user to reveal the hidden details in the plot.

Code:

syms var
fplot(var^2*cos(1/var));
axis([-2 2 -0.02 0.02]);
for i=1:5
zoom(1.6)
pause(0.6)
end

Output:

Re-evaluation on Zoom

2. In casefplot(f) syntax or any of its variation is used, then returned object is of type FunctionLine objects whereas in case of fplot(funx,funy) syntax,the object return type is ParameterizedFunctionLine.

Thus the function fplot() in MATLAB supports advanced plotting features for any kind of function or expressions along with providing a wide range of customization flexibility.

Recommended Articles

This is a guide to Matlab fplot(). Here we discuss the methods to know, with examples to implement with additional notes in detail. You can also go through our other related articles to learn more –

fplot

fplot( f ) строит кривую, заданную функциональным y = f(x) на интервале по умолчанию [-5 5] для x .

fplot( f , xinterval ) графики на заданном интервале. Задайте интервал как двухэлементный вектор из формы [xmin xmax] .

fplot( funx , funy ) строит кривую, заданную x = funx(t) и y = funy(t) на интервале по умолчанию [-5 5] для t .

fplot( funx , funy , tinterval ) графики на заданном интервале. Задайте интервал как двухэлементный вектор из формы [tmin tmax] .

fplot( ___ , LineSpec ) задает стиль линии, символ маркера и цвет линии. Например, ‘-r’ строит красную линию. Используйте эту опцию после любой из комбинаций входных аргументов в предыдущих синтаксисах.

fplot( ___ , Name,Value ) задает свойства линии с помощью одного или нескольких аргументов пары "имя-значение". Например, ‘LineWidth’,2 задает ширину линии 2 точек.

fplot( ax , ___ ) графики в осях задали by ax вместо текущей системы координат ( gca ). Задайте оси как первый входной параметр.

fp = fplot( ___ ) возвращает FunctionLine возразите или ParameterizedFunctionLine объект, в зависимости от входных параметров. Используйте fp запросить и изменить свойства определенной линии. Для списка свойств см. Свойства FunctionLine или ParameterizedFunctionLine Properties .

[x,y] = fplot( ___ ) возвращает абсциссы и ординаты для функции, не создавая график. Этот синтаксис будет удален в будущем релизе. Используйте XData и YData свойства объекта линии, fp , вместо этого.

Примечание

fplot больше входные параметры поддержек для определения ошибочного допуска или количества точек оценки. Чтобы задать количество точек оценки, используйте MeshDensity свойство.

Примеры

Графическое изображение выражения

Постройте sin(x) по x по умолчанию интервал [-5 5] .

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

Постройте параметрическую кривую

Постройте параметрическую кривую x = c o s ( 3 t ) и y = s i n ( 2 t ) .

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

Определение интервала графического изображения и Графическое изображение кусочных функций

Постройте кусочно-линейную функцию

e x — 3 < x < 0 cos ( x ) 0 < x < 3 .

Постройте несколько графиков с помощью hold on . Задайте интервалы графического вывода с помощью второго входного параметра fplot . Задайте цвет построенных линий как синее использование ‘b’ . Когда вы строите несколько графиков в тех же осях, пределы по осям настраивают, чтобы включить все данные.

Figure contains an axes object. The axes object contains 2 objects of type functionline.

Specify Line Properties и маркеры отображения

Постройте три синусоиды с различными фазами. Для первого используйте ширину линии 2 точек. Для второго задайте пунктирный стиль красной линии с круговыми маркерами. Для третьего задайте голубой, стиль точечной линии тире с маркерами звездочки.

Figure contains an axes object. The axes object contains 3 objects of type functionline.

Modify Line Properties после создания

Постройте sin(x) и присвойте функциональный объект линии переменной.

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

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

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

Построение нескольких графиков в тех же осях

Постройте два графика с помощью hold on .

Figure contains an axes object. The axes object contains 2 objects of type functionline.

Добавление заголовка и подписей по осям и метки деления формата

График sin ( x ) от — 2 π к 2 π использование указателя на функцию. Отобразите линии сетки. Затем добавьте заголовок и пометьте ось X и ось Y .

Figure contains an axes object. The axes object with title s i n ( x ) blank f r o m blank - 2 pi blank t o blank 2 pi contains an object of type functionline.

Используйте gca получить доступ к объекту текущей системы координат. Отобразите отметки деления вдоль оси X с промежутками в π / 2 . Отформатируйте значения деления оси X путем установки XTick и XTickLabel свойства объекта осей. Подобные свойства существуют для оси Y .

Figure contains an axes object. The axes object with title s i n ( x ) blank f r o m blank - 2 pi blank t o blank 2 pi contains an object of type functionline.

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

f — Функция, чтобы построить
указатель на функцию

Функция, чтобы построить в виде указателя на функцию к именованной или анонимной функции.

Задайте функцию формы y = f(x) . Функция должна принять векторный входной параметр и возвратить векторный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .* ( times ) вместо * ( mtimes ).

Примечание

Поддержка входных параметров вектора символов будет удалена в будущем релизе. Используйте указатели на функцию вместо этого.

Пример: f = @(x) sin(x);

xinterval — Интервал для x
[–5 5] (значение по умолчанию) | двухэлементный вектор из формы [xmin xmax]

Интервал для x В виде двухэлементного вектора из формы [xmin xmax] .

funx — Параметрическая функция для координат x
указатель на функцию

Параметрическая функция для x координирует в виде указателя на функцию к именованной или анонимной функции.

Задайте функцию формы x = funx(t) . Функция должна принять векторный входной параметр и возвратить векторный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .* ( times ) вместо * ( mtimes ).

Пример: funx = @(t) sin(2*t);

funy — Параметрическая функция для координат y
анонимная функция | указатель на функцию

Параметрическая функция для y координирует в виде указателя на функцию к именованной или анонимной функции.

Задайте функцию формы y = funy(t) . Функция должна принять векторный входной параметр и возвратить векторный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .* ( times ) вместо * ( mtimes ).

Пример: funy = @(t) cos(3*t);

tinterval — Интервал для t
[-5 5] (значение по умолчанию) | двухэлементный вектор из формы [tmin tmax]

Интервал для t В виде двухэлементного вектора из формы [tmin tmax] .

ax Объект осей
объект осей

Объект осей. Если вы не задаете объект осей, то fplot использует текущую систему координат ( gca ).

LineSpec — Стиль линии, маркер и цвет
вектор символов | строка

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

Пример: ‘—or’ красная пунктирная линия с круговыми маркерами

Sample of solid line

Sample of dashed line

Sample of dotted line

Sample of dash-dotted line, with alternating dashes and dots

Sample of circle marker

Sample of plus sign marker

Sample of asterisk marker

Sample of point marker

Sample of cross marker

Sample of horizontal line marker

Sample of vertical line marker

Sample of square marker

Sample of diamond line marker

Sample of upward-pointing triangle marker

Sample of downward-pointing triangle marker

Sample of right-pointing triangle marker

Sample of left-pointing triangle marker

Sample of pentagram marker

Sample of hexagram marker

Sample of the color red

Sample of the color green

Sample of the color blue

Sample of the color cyan

Sample of the color magenta

Sample of the color yellow

Sample of the color black

Sample of the color white

Аргументы name-value

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

Пример: ‘Marker’,’o’,’MarkerFaceColor’,’red’

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

MeshDensity — Количество точек оценки
23 (значения по умолчанию) | номер

Количество оценки указывает в виде номера. Значением по умолчанию является 23 . Поскольку fplot использует адаптивную оценку, фактическое количество точек оценки больше.

Color ‘LineColor’
[0 0.4470 0.7410] (значение по умолчанию) | триплет RGB | шестнадцатеричный цветовой код | ‘r’ | ‘g’ | ‘b’ | .

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

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

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

Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша ( # ) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F . Значения не являются чувствительными к регистру. Таким образом, цветовые коды ‘#FF8800’ , ‘#ff8800’ , ‘#F80’ , и ‘#f80’ эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Sample of the color red

Sample of the color green

Sample of the color blue

Sample of the color cyan

Sample of the color magenta

Sample of the color yellow

Sample of the color black

Sample of the color white

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB ® использование во многих типах графиков.

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

Пример: ‘blue’

Пример: [0 0 1]

Пример: ‘#0000FF’

LineStyle — Стиль линии
‘-‘ (значение по умолчанию) | ‘—‘ | ‘:’ | ‘-.’ | ‘none’

Стиль линии в виде одной из опций перечислен в этой таблице.

Sample of solid line

Sample of dashed line

Sample of dotted line

Sample of dash-dotted line, with alternating dashes and dots

LineWidth ‘LineWidth’
0.5 (значение по умолчанию) | положительное значение

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

Ширина линии не может быть более тонкой, чем ширина пикселя. Если вы устанавливаете ширину линии на значение, которое меньше ширины пикселя в вашей системе, отображения линии как один пиксель шириной.

Marker — Символ маркера
‘none’ (значение по умолчанию) | ‘o’ | ‘+’ | ‘*’ | ‘.’ | .

Символ маркера в виде одного из значений перечислен в этой таблице. По умолчанию объект не отображает маркеры. Определение символа маркера добавляет маркеры в каждой точке данных или вершине.

Sample of circle marker

Sample of plus sign marker

Sample of asterisk marker

Sample of point marker

Sample of cross marker

Sample of horizontal line marker

Sample of vertical line marker

Sample of square marker

Sample of diamond line marker

Sample of upward-pointing triangle marker

Sample of downward-pointing triangle marker

Sample of right-pointing triangle marker

Sample of left-pointing triangle marker

Sample of pentagram marker

Sample of hexagram marker

MarkerEdgeColor — Цвет контура маркера
‘auto’ (значение по умолчанию) | триплет RGB | шестнадцатеричный цветовой код | ‘r’ | ‘g’ | ‘b’ | .

Цвет контура маркера в виде ‘auto’ , триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию ‘auto’ использует тот же цвет в качестве Color свойство.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

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

Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша ( # ) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F . Значения не являются чувствительными к регистру. Таким образом, цветовые коды ‘#FF8800’ , ‘#ff8800’ , ‘#F80’ , и ‘#f80’ эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Как правильно задать интервал в M-файле

Как задать интервал функции x в Gnuplot
Всем привет! Подскажите пожалуйста как задать интервал функции x в гнуплоте. Не осей, а именно.

Как правильно задать условие
Доброго времени суток форумчане. Каким образом можно задать условие, &quot;первый будний день месяца&quot;.

Как правильно задать передаточную функцию?
Имеется САУ следующего вида: Насколько я понял, передаточная функция разомкнутой системы.

Как правильно задать функцию в Матлаб
Написал следующую функцию: function z = opt(x) %UNTITLED Summary of this funct .

Спасибо за совет.) Но,к сожалению, все ещё не удалось получить решение задачи.

Задание звучит так: "Выполнить решение задачи с помощью m-файла и функции для любого числа процессов".
Задача на картинке, прикрепленной выше.

Теперь такая ошибка. Что-то с интервалом не так,но я не понимаю что именно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *