MATLAB - Plotagem

Para traçar o gráfico de uma função, você precisa seguir os seguintes passos -

  • Definir x, especificando o range of values para a variável x, para o qual a função deve ser traçada

  • Defina a função, y = f(x)

  • Ligar para plot comando, como plot(x, y)

O exemplo a seguir demonstraria o conceito. Vamos plotar a função simplesy = x para o intervalo de valores para x de 0 a 100, com um incremento de 5.

Crie um arquivo de script e digite o seguinte código -

x = [0:5:100];
y = x;
plot(x, y)

Quando você executa o arquivo, o MATLAB exibe o seguinte gráfico -

Tomemos mais um exemplo para plotar a função y = x 2 . Neste exemplo, desenharemos dois gráficos com a mesma função, mas na segunda vez, reduziremos o valor do incremento. Observe que, à medida que diminuímos o incremento, o gráfico se torna mais uniforme.

Crie um arquivo de script e digite o seguinte código -

x = [1 2 3 4 5 6 7 8 9 10];
x = [-100:20:100];
y = x.^2;
plot(x, y)

Quando você executa o arquivo, o MATLAB exibe o seguinte gráfico -

Altere um pouco o arquivo de código, reduza o incremento para 5 -

x = [-100:5:100];
y = x.^2;
plot(x, y)

MATLAB desenha um gráfico mais suave -

Adicionando título, rótulos, linhas de grade e escala no gráfico

O MATLAB permite adicionar títulos, rótulos ao longo dos eixos xey, linhas de grade e também ajustar os eixos para enfeitar o gráfico.

  • o xlabel e ylabel comandos geram rótulos ao longo do eixo xe do eixo y.

  • o title comando permite que você coloque um título no gráfico.

  • o grid on comando permite que você coloque as linhas de grade no gráfico.

  • o axis equal comando permite gerar o gráfico com os mesmos fatores de escala e os espaços em ambos os eixos.

  • o axis square comando gera um gráfico quadrado.

Exemplo

Crie um arquivo de script e digite o seguinte código -

x = [0:0.01:10];
y = sin(x);
plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'),
grid on, axis equal

O MATLAB gera o seguinte gráfico -

Desenho de múltiplas funções no mesmo gráfico

Você pode desenhar vários gráficos no mesmo gráfico. O exemplo a seguir demonstra o conceito -

Exemplo

Crie um arquivo de script e digite o seguinte código -

x = [0 : 0.01: 10];
y = sin(x);
g = cos(x);
plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')

O MATLAB gera o seguinte gráfico -

Definição de cores no gráfico

O MATLAB oferece oito opções básicas de cores para desenhar gráficos. A tabela a seguir mostra as cores e seus códigos -

Código Cor
W Branco
k Preto
b Azul
r Vermelho
c Ciano
g Verde
m Magenta
y Amarelo

Exemplo

Vamos desenhar o gráfico de dois polinômios

  • f (x) = 3x 4 + 2x 3 + 7x 2 + 2x + 9 e

  • g (x) = 5x 3 + 9x + 2

Crie um arquivo de script e digite o seguinte código -

x = [-10 : 0.01: 10];
y = 3*x.^4 + 2 * x.^3 + 7 * x.^2 + 2 * x + 9;
g = 5 * x.^3 + 9 * x + 2;
plot(x, y, 'r', x, g, 'g')

Quando você executa o arquivo, o MATLAB gera o seguinte gráfico -

Definir escalas de eixo

o axiscomando permite que você defina as escalas do eixo. Você pode fornecer valores mínimos e máximos para os eixos xey usando o comando de eixo da seguinte maneira -

axis ( [xmin xmax ymin ymax] )

O exemplo a seguir mostra isso -

Exemplo

Crie um arquivo de script e digite o seguinte código -

x = [0 : 0.01: 10];
y = exp(-x).* sin(2*x + 3);
plot(x, y), axis([0 10 -1 1])

Quando você executa o arquivo, o MATLAB gera o seguinte gráfico -

Gerando subtramas

Quando você cria uma matriz de plotagens na mesma figura, cada uma dessas plotagens é chamada de subtrama. osubplot comando é usado para criar subtramas.

A sintaxe do comando é -

subplot(m, n, p)

onde, m e n são o número de linhas e colunas da matriz do gráfico e p especifica onde colocar um gráfico particular.

Cada plotagem criada com o comando subplot pode ter suas próprias características. O exemplo a seguir demonstra o conceito -

Exemplo

Vamos gerar dois gráficos -

y = e −1,5x sen (10x)

y = e −2x sen (10x)

Crie um arquivo de script e digite o seguinte código -

x = [0:0.01:5];
y = exp(-1.5*x).*sin(10*x);
subplot(1,2,1)
plot(x,y), xlabel('x'),ylabel('exp(–1.5x)*sin(10x)'),axis([0 5 -1 1])
y = exp(-2*x).*sin(10*x);
subplot(1,2,2)
plot(x,y),xlabel('x'),ylabel('exp(–2x)*sin(10x)'),axis([0 5 -1 1])

Quando você executa o arquivo, o MATLAB gera o seguinte gráfico -