필터 지우기
필터 지우기

get axis value of a subplot

조회 수: 48 (최근 30일)
Max Müller
Max Müller 2014년 7월 28일
댓글: Azzi Abdelmalek 2014년 8월 11일
hey Guys
I ve created a program which creates 9 different subplots with 3 different plot lines. My Questions is: how can i get the x andy values of each subplot.
for example: One of the titles of my plot is simply A. Another is B. How can i get the values in an array which has the same name.
Thanks
  댓글 수: 2
Patrik Ek
Patrik Ek 2014년 7월 28일
편집: Patrik Ek 2014년 7월 28일
I think that eval is the way to go then. However, if not absolutely necessary I recommend you to not go there, see alternatives ot eval. One problem is that eval is evaluated in runtime.
Azzi Abdelmalek
Azzi Abdelmalek 2014년 8월 11일
Max , please don't add all these answers, if you want to add a comment , just under my answer or someone else's answer, click on comment on this answer

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

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2014년 7월 28일
편집: Azzi Abdelmalek 2014년 7월 28일
% -----Example----------------------
x=repmat((1:10)',1,9);
y=rand(10,9);
for k=1:9
subplot(3,3,k);
plot(x(:,k),y(:,k));
end
%------The code-----------------------
h=findobj(gcf,'type','axes');
for k=1:9
f=get(h(k),'children');
xi{k}=get(f,'xdata');
yi{k}=get(f,'ydata');
end
outx=fliplr(cell2mat(xi')');
outy=fliplr(cell2mat(yi')');
%-------------test --------------------
isequal(x,outx)
isequal(y,outy)
  댓글 수: 1
Max Müller
Max Müller 2014년 7월 28일
works perfect...thanks

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

추가 답변 (3개)

Max Müller
Max Müller 2014년 8월 11일
Hey Azzi,
hope u can help me one more time. ur code works perfect for every normal plot. But if i use it on my Plot, it shows me that my chosen Plot has 42 handles ??????? my Plot contains 41 points. I guess this has to mean sth. Can u pls tell me why my plot has 42 children-handles ?
  댓글 수: 1
Adam
Adam 2014년 8월 11일
Sounds like you have plotted each point as its own individual line object

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


Max Müller
Max Müller 2014년 8월 11일
Somehow this must be the case but actually i am ploting a few amount of Arrys into one axes. The x value is always the same and th y value keeps changing...maybe this is the reason... gona check it.
  댓글 수: 1
Max Müller
Max Müller 2014년 8월 11일
편집: Max Müller 2014년 8월 11일
this code is the reason
text(theta,y,strcat({' '},names),'Interpreter','none','rotation',90)
theta = x / y = y / names = Name of the point
Is there an alternative for this code ?

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


Max Müller
Max Müller 2014년 8월 11일
When every handle represents one Point. How can I reach its value.

카테고리

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