Dear community,
I want to plot an array by array but I don't know how to do this. x and y are 1 * 300 arrays.
for i = 7e-5:1e-5:3e-4
x(1,:) = 1 + 2*i;
y(1,:) = 3 + i;
end
plot(x,y)
how can I plot this easy problem?

1 Kommentar

Can you explain better what you're trying to do?
Note that if x and y are 1*300 arrays, your loop is equivalent to:
i = 7e-5:1e-5:3e-4 %24 elements
x(1:24) = 1 + 2*i
y(1:24) = 3 + i
That is, you're replacing the first 24 elements of x and y.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Thorsten
Thorsten am 12 Dez. 2014

0 Stimmen

val = 7e-5:1e-5:3e-4;
for i=1:length(val), x(i) = 1 + 2*val(i); y(i) = 3 + val(i);end
plot(x,y)

1 Kommentar

Guillaume
Guillaume am 12 Dez. 2014
So Moj, if that's what you were looking for, what does the x and y are 1 * 300 arrays has to do with it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 12 Dez. 2014

0 Stimmen

Assuming you want to do 300 values, I think the most MATLAB-ish way is this vectorized way:
% Define values
values = linspace(7e-5, 3e-4, 300) % 300 elements
% Create x and y vectors from those values.
x = 1 + 2 * values
y = 3 + values
% Plot y vs. x.
plot(x, y, 'b-', 'LineWidth', 2);
% Make the plot fancy.
grid on;
fontSize = 30;
title('y vs. x', 'FontSize', fontSize);
xlabel('x', 'FontSize', fontSize);
ylabel('y', 'FontSize', fontSize);
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
% Give a name to the title bar.
set(gcf, 'Name', 'Demo by ImageAnalyst', 'NumberTitle', 'Off')

Gefragt:

Moj
am 12 Dez. 2014

Beantwortet:

am 12 Dez. 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by