How to make axis invisible? But not xlabel and ylabel!
45 views (last 30 days)
Show older comments
I would like to make axis invisible but not the xlabel and ylabel text
0 Comments
Answers (2)
Akira Agata
on 24 Jun 2017
How about overwriting a white axis on the original X- and Y-axis, like:
figure
plot(magic(4));
ax1 = gca;
hold on
ax2 = axes('Position',ax1.Position,...
'XColor',[1 1 1],...
'YColor',[1 1 1],...
'Color','none',...
'XTick',[],...
'YTick',[]);
Thorsten
on 7 Aug 2018
Edited: Thorsten
on 7 Aug 2018
The trick is to create handles to the labels and use these handles to re-set the color of the labels after the color of the axes has been set to white.
plot(rand(1,10))
h(1) = xlabel('x');
h(2) = ylabel('y');
axesoffwithlabels(h)
Using
function axesoffwithlabels(h)
%AXESOFFWITHLABELS Make axes invisible but not the xlabel and ylabel.
%
% AXESOFFWITHLABELS(H) makes axes invisible, keeping the x- and ylabel
% with handle H.
%
% Sample Usage
% plot(rand(1,10))
% h(1) = xlabel('x');
% h(2) = ylabel('x');
% axesoffwithlabels(h)
%
% Thorsten.Hansen@psychol.uni-giessen.de 2018-08-08
set(gca, 'Xcolor', 'w', 'Ycolor', 'w')
set(h, 'Color', 'k')
% get rid of the white ticks and tick labels, moving the labels closer to
% the axes
set(gca, 'XTick', []);
set(gca, 'YTick', []);
end
0 Comments
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!