필터 지우기
필터 지우기

plot in predesigned figure

조회 수: 180 (최근 30일)
Josefina Ottitsch
Josefina Ottitsch 2019년 2월 19일
댓글: Josefina Ottitsch 2019년 2월 21일
Hello
I have a script, where I tell my programm to create a figure, called h ,looking like the second picture.
then in a function within the scirpt (1. picture) i want matlab to draw my desired plot into the predesigned figure h. (See function in 4. picture)
but instead, matlab doesnt draw my plot into h, matlab draws it as in the 3. picture.
How do i plot into my predesigned figure h?
Thanks for the help!
  댓글 수: 1
dpb
dpb 2019년 2월 19일
Give us the actual text to read instead of trying to look at pictures of it...
In general, to plot to a given figure/axes, you call plot() with the specific axes handle you wish to plot into...otherwise, by default it will use gca or create a new one if none are extant.

댓글을 달려면 로그인하십시오.

채택된 답변

Kevin Phung
Kevin Phung 2019년 2월 19일
You can assign a handle to the axes of the figure, and reference them in your plot function.
for example:
fig1 = figure;
a = axes;
fig2 = figure;
a2 = axes;
%plot in axes in fig1:
plot(a,1:5,1:5)
%plot in axes in fig 2
plot(a2,1:5,1:5)
  댓글 수: 4
Walter Roberson
Walter Roberson 2019년 2월 19일
ax = findobj(h, 'type', 'axes');
if isempty(ax)
error('Your figure does not have any existing axes')
end
if length(ax) > 1
error('Your figure has more than one axes')
end
plot(ax, [line1.x], [line1.y]
An alternative for that last line would be
plot([line1.x], [line1.y], 'Parent', ax)
Josefina Ottitsch
Josefina Ottitsch 2019년 2월 21일
Thank you! It works better now!!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 2-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