"hold on" on plot does not work over 2 functions

1 次查看(过去 30 天)
I have two problem on my code regarding plotting points on a x-y plane.
My code is briefly summarized as follows in main.m and sketch.m;
main.m
plot(x,y,linespec); hold on;
sketch(n);
end
sketch.m
[hx,hy] = ginput(n);
for i = 1:n
plot(hx(i), hy(i), linespec); hold on;
end
What I want to achieve is that:
  1. Create a base x-y plane
  2. Get clicked x-y coordinates on the created x-y plane at the step 1.
  3. Plot all points onto the created x-y plane at the step 1.
And here is my problems;
My first problem is that:
ginput does not follow the x-y coordinate which is created in main file. I think the clicked data is on 1 by 1 x-y plane.
My second problem is that: plot in sketch.m does not work and the program itself freezes and MATLAB also crashes in the end.
If you know how to fix this problem, please let me know and help me out. Thank you so much in advance.

采纳的回答

dbmn
dbmn 2016-7-29
Hi Hyom,
I tried to create a minimal working example from your code but I do not get any errors. Could you describe the errors you get?
Best,
Michael
main.m
function [] = main ()
x = 1:1:10;
y = rand(10,1);
linespec = 'ro-';
plot(x,y,linespec); hold on;
sketch(2);
end
sketch.m
function [] = sketch (n)
[hx,hy] = ginput(n);
for i = 1:n
plot(hx(i), hy(i), 'bo'); hold on;
end
end
  1 个评论
Hyon Kim
Hyon Kim 2016-8-16
Hi Michael
Thanks a lot for your advice. Yes, your code could run. Apparently too big matrix calculation caused the issues. Thanks. Hyon

请先登录,再进行评论。

更多回答(1 个)

Selva Karna
Selva Karna 2016-7-29
you can use
figure

类别

Help CenterFile Exchange 中查找有关 Line Plots 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by