how do I create a handle to a plot without plotting?
38 次查看(过去 30 天)
显示 更早的评论
Hello, here is my code
function handle = DrawLink(z,w,h,handle)
pts = [z-w/2, z+w/2, z+w/2, z-w/2; 0, 0, h, h];
X = pts(1,:);
Y = pts(2,:);
if isempty(handle)
handle = fill(X,Y,'b');
end
end
I am trying to create a handle to the plot without plotting it while I make it. How do I do this? Thanks.
0 个评论
回答(2 个)
Star Strider
2018-1-9
Try this:
fh = figure(1);
set(fh, 'Visible','off')
plot(rand(1,10), rand(1,10), 'p')
Then later, when you want to see it:
set(fh, 'Visible','on')
and it magickally appears!
4 个评论
Pablo Saavedra G.
2019-2-18
You can always create an empty handle at the current axes and pass it to your function, for example:
handle = plot([],[],'-');
then in your function, the line with the if will get a TRUE
if isempty(handle)
handle = fill(X,Y,'b'); % note that previous handle (from plot) is repalced to fill
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Performance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!