我的matlab情节在做什么?

时间:2014-02-20 04:30:09

标签: matlab graph

Matlab plot

我试图绘制几个基本图形,时间与速度,时间与加速度,速度与加速度的关系图,但我不明白为什么这些数字出现在每个图形上。我试过通过几种方法改变标签,但似乎并没有让它们消失。

clc
clear

disp('Jack Abdo');
disp('Engr Course 297 12441');
disp('Matlab Homework 8 problem #4');
disp('This script graphs output data from a UDP');

ourinput = [0 0];
ourinput(1) = input('Please enter the beginning time.');
ourinput(2) = input('Please enter the ending time.');

time = [ourinput(1):5:ourinput(2)]
velocity = 0.00001*time.^3 - 0.00488*time.^2 + 0.75795*time + 181.3566
acceleration = 3 - 0.000062*velocity.^2

subplot(5,1,1);
plot(time,velocity);
xlabel(time);
ylabel(velocity);
grid;
title('Velocity vs Time');
set(gca,'XTick',0:30:120)
set(gca,'YTick',180:10:220)

subplot(5,1,2);
plot(time,acceleration);
xlabel(time);
ylabel(acceleration);
grid;
title('Acceleration vs Time');
set(gca,'XTick',0:30:120)
set(gca,'YTick',0:5:1)

subplot(5,1,1);
plot(velocity, acceleration);
xlabel(velocity);
ylabel(acceleration);
grid;
title('Acceleration vs Velocity');
axis auto; 

1 个答案:

答案 0 :(得分:1)

仔细编写代码非常重要。

我会指出一些东西 -

velocity = 0.00001*time.^3 - 0.00488*time.^2 + 0.75795*time + 181.3566

如果要将数组与标量相乘,请使用.*符号,0.75795.*time

因为标签应该是字符串,所以它应该是xlabel('Velocity');我相信否则会将整个数组的速度设为xlabel而这会导致你的问题

即使你有3个子图,你将你的数字划分为5个子图,所以你的大多数窗口都是空的。把它subplot(3,1,1)

现在作为绘制了大量时间序列的人,我建议不要预先定义时间轴。尝试使用set(gca,'XTick',[min(time):5:max(time)]);

除非你想明确输出,否则

在每个语句后面加分号。 无论如何这是你可能一直在寻找的。请仔细阅读您的密码

disp('Jack Abdo');
disp('Engr Course 297 12441');
disp('Matlab Homework 8 problem #4');
disp('This script graphs output data from a UDP');

ourinput = [0 0];
ourinput(1) = input('Please enter the beginning time.');
ourinput(2) = input('Please enter the ending time.');

time = [ourinput(1):5:ourinput(2)];
velocity = 0.00001.*time.^3 - 0.00488.*time.^2 + 0.75795.*time + 181.3566;
acceleration = 3 - 0.000062.*velocity.^2;

subplot(3,1,1);
plot(time,velocity);
xlabel('time');
ylabel('velocity');
grid;
title('Velocity vs Time');
set(gca,'XTick',0:30:120);
set(gca,'YTick',180:10:220);

subplot(3,1,2);
plot(time,acceleration);
xlabel('time');
ylabel('acceleration');
grid;
title('Acceleration vs Time');
set(gca,'XTick',0:30:120);
set(gca,'YTick',0:5:1);

subplot(3,1,3);
plot(velocity, acceleration);
xlabel('velocity');
ylabel('acceleration');
grid;
title('Acceleration vs Velocity');
axis auto;