How can I adjust the position of a 'scattergroup' (scatter3) figure?
조회 수: 2 (최근 30일)
이전 댓글 표시
I'm trying set the size/position of my 3d scatter plot, hopefully using something like the following:
figure('Position', [x y a b]) % or
set(fig, 'OuterPosition', [x y a b])
But, working with a scatter3 plot, I get the following error:
The name 'Position' is not an accessible property for an instance of class 'scattergroup'
I looked up the scattergroup class, and I noticed that there are no position properties in it. Does anyone know how can I modify the the size/position of my scatter3 object?
scat=scatter3(x,y,z,size,intensity)
Thank you!
댓글 수: 0
채택된 답변
ChristianW
2013년 2월 6일
scrsz = get(0,'ScreenSize');
set(gcf,'OuterPosition',[scrsz(3)/2 scrsz(2) scrsz(3)/2 scrsz(4)])
n = 20;
scatter3(rand(n,1),rand(n,1),rand(n,1),[],randi(3,n,1),'filled')
Ehehe, well I suspect your only fault was a wrong handle in your set position command. If you want to change figure properties, you've to give him the figure handle, not the plot handle.
추가 답변 (1개)
ChristianW
2013년 2월 5일
n = 20;
scatter3(rand(n,1),rand(n,1),rand(n,1),[],randi(3,n,1),'filled')
axp = get(gca,'Position');
set(gca,'Position',[0 0 axp(3:4)/3])
댓글 수: 3
ChristianW
2013년 2월 5일
Hi John, your trys with:
figure('Position', [x y a b]) % or
set(fig, 'OuterPosition', [x y a b])
should work. Whats your error or code?
For the "right half of the screen"-Position, you can try this:
scrsz = get(0,'ScreenSize');
figure('OuterPosition',[scrsz(3)/2 scrsz(2) scrsz(3)/2 scrsz(4)])
n = 20;
scatter3(rand(n,1),rand(n,1),rand(n,1),[],randi(3,n,1),'filled')
참고 항목
카테고리
Help Center 및 File Exchange에서 Labels and Annotations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


