Effacer les filtres
Effacer les filtres

How to make all but one axis visible on plot

47 vues (au cours des 30 derniers jours)
Eileen Lukens
Eileen Lukens le 9 Juin 2021
Modifié(e) : Adam Danz le 14 Juil 2023
I want to make my plot with both Y axes visible, the bottom X axes visibile, but have the top X-axis invisible. I know you can set the 'XColor' to 'none' and both the top and bottom axes will become invisible. How do I make it so everything but the top axes is visible? Included below is what I would like to achieve. I'm doing this in a subplotting routine so I'm hoping to avoid anything that is hardcoded such as a white rectangle positioned to hide the top axis. Thanks!

Réponse acceptée

Adam Danz
Adam Danz le 10 Juin 2021
Modifié(e) : Adam Danz le 14 Juil 2023
Another simple way is to use yyaxis to create two y axes but you'll ignore the right-side axes.
Also see this answer to turn off the right axis while keeping visible the other 3 axes.
clf
ax = axes;
yyaxis(ax,'right')
ax.YTickLabels = '';
yyaxis(ax,'left') % * see footnote [1]
linkprop([ax.XAxis; ax.YAxis],'color'); % set axes colors to match
linkprop([ax.YAxis(1), ax.YAxis(2)],{'Limits','TickValues'}); % * see footnote [2]
box(ax,'off') % see footnote [3]
[1] It's important the you run yyaxis(ax,'left') after making changes to the right-side so that your plotting is all assigned to the left axes.
[2] This line links the y limits and ticks for the 2 y axes; otherwise you could remove the tick on the right using ax.YTick = [];
[3] You may need to call this line again after plotting or hold your axes using hold(ax,'on')
  1 commentaire
Eileen Lukens
Eileen Lukens le 10 Juin 2021
Thank you! That did the trick!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by