- Get your boxplot to look the way you want it
- run the above loop do disable the listeners
- use the print command to output your plot
The position of x-label is reset to the original position when printing a 'boxplot' figure
3 views (last 30 days)
Show older comments
Hello,
I want to adjust the position of x-label in a 'boxplot' figure and to save the figure in a 'png' format.
Although I adjusted the position of the x-label as bellow, the position was reset to the original position when printing the figure:
figure;
boxplot(randn(100, 3))
xlabel('Trial number')
h = get(gca, 'xlabel');
oldpos = get(h, 'Position')
set(h, 'Position', oldpos - [0, 20, 0])
print('-dpng', 'boxplot.png')
get(h, 'Position') % The position is reset !
Does anyone know how to fix this problem?
I'm using Matlab R2012b.
Thanks.
0 Comments
Answers (1)
Andrew Davis
on 9 Sep 2013
I had this same problem -- very frustrating! Especially since this workaround indicates that the problem has existed for at least 3 years without a fix. The workaround didn't quite work as written for me, I used:
ax = findobj(gcf,'type','axes')
for j=1:length(ax),
boxparent = getappdata(ax(j),'boxplothandle');
listeners = getappdata(boxparent,'boxlisteners');
for i = 1:length(listeners),
listeners{i}.Enabled = 'off';
end
end
So, the procedure is:
0 Comments
See Also
Categories
Find more on Graphics Object Programming in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!