How do I set the limit for one axis on 3D plot?

Seems like a simple question but I cant get it figured out. I have a data set from experiment which looks vaguely like:
  • two columns of data:
  • first column = 'sets' of data range 200 to 750 with 70 interval steps. Approx 300 consecutive sets.
  • second column = associated reading for value in column one.
  • So basically I would like to plot y-axis with second column, z-axis of set number (i.e from 1 to 300), and x-axis of 400 to 750 instead of 200 to 750.I have tried every xlimit function I can find, and the plot tool has no problem setting the axis, however it plots the outlying data outside the axis!Please help, it is really frustrating as I have spent days trying to fix it already :-/

댓글 수: 10

José-Luis
José-Luis 2013년 1월 11일
Could you show an example of your data. I am sorry, but I have a hard time understanding your description of the data.
Sorry its a bit complicated - I tried to type it in columns but the preview didn't show what I wanted at all. I'll type simple example as a code since it is easier to format it as a table that way.
if true
1 | 200 | 2
1 | 210 | 2.7
1 | 220 | 2.4
1 | 230 | 2.5
1 | ... | ...
1 | 750 | 2.8
2 | 200 | 5.1
2 | 210 | 4.9
2 | ... | ...
2 | 750 | 5.2
3 | 200 | 8.3
3 | 210 | 8.1
3 | ... | ...
3 | 750 | 8.2
etc for about 300 repeats until:
300 | 750 | 10.5
end
Is that easier to visualise? (First column doesn't actually exist, that is simply how I picture the data as sets.) So I want to plot column 2 vs column 3 vs column 1, with a range of 400 to 750 for column 2.
José-Luis
José-Luis 2013년 1월 11일
편집: José-Luis 2013년 1월 11일
lH = plot3(col1,col2,col3,'k.');
aH = ancestor(lH,'axes');
set(aH,'XLim',[400 750])
Frances
Frances 2013년 1월 11일
Thanks for replying so fast! it is having difficulty with the last line. Parse error at 'XLim'[400 750]
José-Luis
José-Luis 2013년 1월 11일
편집: José-Luis 2013년 1월 11일
Missed a colon.
Frances
Frances 2013년 1월 11일
Sorry I just fixed that error. Same problem as before :-/
Frances
Frances 2013년 1월 11일
Tried to put the image on here but not sure how to
Frances
Frances 2013년 1월 11일
Basically it is still plotting outide the axis limits.
Frances
Frances 2013년 1월 11일

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

답변 (1개)

José-Luis
José-Luis 2013년 1월 11일
편집: José-Luis 2013년 1월 15일

0 개 추천

If col1 is your x data:
idx = col1>=400 && col1 <=750;
lH = plot3(col1(idx),col2(idx),col3(idx),'k.');
aH = ancestor(lH,'axes');
set(aH,'XLim',[400 750])

댓글 수: 1

Frances
Frances 2013년 1월 14일
Hi, I tried this too and had to change it about a bit for my data but it still wont work. I'm using the surf plot so maybe that is where the issue lies? I think I will re-write the code and start from the beginning!

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

카테고리

도움말 센터File Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기

제품

질문:

2013년 1월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by