Plotting for loop with two outputs

3 ビュー (過去 30 日間)
Petch Anuwutthinawin
Petch Anuwutthinawin 2021 年 6 月 13 日
コメント済み: KSSV 2021 年 6 月 14 日
I need to plot a function with a two variable output using any method. The graph should plot an x range of 2-1000000. I have used a for loop which should plot the prewritten function L, which outputs two different variables. Both are below.
%%This is the function that works. It is for the collatz conjecture.
function [N, mx] = prob3_6(x)
X=x;%to initialise an X value that is not the input
N=0; %to initialise an N value that starts with 0 iterations.
mx=x; %create a definition for max in terms of x.
while X~=1; %while x is not 1, ends when x=1 if ever
if mod(X,2); % if x is odd
X=1+3*X; % do calculation for odd input
else
X=X./2; %even numbers divided by 2
end
N=N+1 %for each loop, N will add 1 iteration from zero
if X>mx; % if an X value happens to be greater than the set max, which is the input,
mx=X %it will override that value with the new max.
end
end
%% This is the code that does not work for plotting the function
for X= 2:1000000;
L=HW32P12Function(X);
end
figure(1)
loglog(X,L)
grid on
How do I use a this loop to plot the function that I have made?
  1 件のコメント
LO
LO 2021 年 6 月 13 日
isn't there a typo there ? HW32P12 ?
also as you plot you want either to use "cla" after "figure(1)" to refresh the plotting or use hold on to keep all plots. Or what would you like to do ?

サインインしてコメントする。

採用された回答

KSSV
KSSV 2021 年 6 月 14 日
編集済み: KSSV 2021 年 6 月 14 日
X= 2:1000000;
n = length(X) ;
L = zeros(1,n) ;
for i = 1:n
L(i) =HW32P12Function(X(i));
end
figure(1)
loglog(X,L)
grid on
  2 件のコメント
Petch Anuwutthinawin
Petch Anuwutthinawin 2021 年 6 月 14 日
I have tried this but L is not indexed at the end, is there a way to do that so it can plot?
KSSV
KSSV 2021 年 6 月 14 日
Edited the answer.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange2-D and 3-D Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by