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 -