Why does my plot not display?

I have this function:
function savings
salary=input('Positive number')
while salary<0
soldata=input('Positive number, please')
end
daily_spending=input('Negative number')
while daily_spending>0
daily_spending=input('Negative number, please')
end
savings=salary;
days=1;|
day_counter=1;
months=1;
while months<=12
savings=savings+daily_spending;
if days==30;
months=months+1;
savings=savings+salary;
days=0;
end
day_counter=day_counter+1;
days=days+1;
plot(day_counter, savings);
pause(0.05)
end
The problem I have is that when matlab starts plotting, it shows up the figure but not the line. Why is that? I can't figure it out. Could someone help me? This is what it looks like:
PD: Axes refresh well

1 个评论

GMW
GMW 2017-5-8
编辑:GMW 2017-5-8
You are missing a 'hold'
Try: hold on, plot(day_counter, savings, '.')

请先登录,再进行评论。

回答(2 个)

David Young
David Young 2015-1-15

0 个投票

The problem is that both day_counter and savings are scalars, so there is nothing to plot. I suspect that what you need is to store successive values in an array, and plot the array.
Adam
Adam 2015-1-15

0 个投票

Both day_counter and savings are scalars so it just plots a single point.

类别

在 帮助中心 和 File Exchange 中查找有关 Creating, Deleting, and Querying Graphics Objects 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by