How to remove axis from a figure?

1.589 visualizzazioni (ultimi 30 giorni)
Davide Magnelli
Davide Magnelli il 8 Nov 2017
I have a script as follow:
if true
% Set up MOVIE object
vidObj = VideoWriter('Field_adv_diff_2D.avi');
vidObj.Quality = 100;
vidObj.FrameRate = 1;
open(vidObj);
set(gca,'nextplot','replacechildren');
% %%CONTOUR PLOT
% ZLevels = 288:1:300;
Naux = 200;
Minimum = min(min(node_state));
Maximum = max(max(node_state));
levels = Minimum:(max(max(node_state))-min(min(node_state)))/200:Maximum;
% k = 6000;
% Mesh = Mesh_simulator;
Xg = min(Mesh.xy(1,:)):(max(Mesh.xy(1,:))-min(Mesh.xy(1,:)))/Naux:max(Mesh.xy(1,:));
Yg = min(Mesh.xy(2,:)):(max(Mesh.xy(2,:))-min(Mesh.xy(2,:)))/Naux:max(Mesh.xy(2,:));
[XI,YI]=meshgrid(Xg,Yg);
ZI = zeros(length(XI),length(YI));
% for k = (time_sim/4):(time_sim/4):time_sim
for k = [source(4)+1 100:100:source(5)]
for ii=1:size(Mesh.ele,2)
xx = [Mesh.xy(1, Mesh.ele(1,ii)) Mesh.xy(1, Mesh.ele(2,ii)) Mesh.xy(1, Mesh.ele(3,ii))];
yy = [Mesh.xy(2, Mesh.ele(1,ii)) Mesh.xy(2, Mesh.ele(2,ii)) Mesh.xy(2, Mesh.ele(3,ii))];
IN = inpolygon(XI, YI, xx, yy);
% ZI(IN) = (node_state(Mesh.ele(2,ii),k) + node_state(Mesh.ele(3,ii),k) + node_state(Mesh.ele(4,ii),k)) / 3;
% oppure:
points = find(IN);
for i = 1:length(points)
N(i,:) = Get_shapeN_2D_DIFFUSION (Mesh,ii,[XI(points(i)) YI(points(i))]);
ZI(points(i)) = N(i,:)*[node_state(Mesh.ele(1,ii),k); node_state(Mesh.ele(2,ii),k); node_state(Mesh.ele(3,ii),k)];
end
end
figure;
contourf(XI,YI,ZI,levels,'LineStyle','none','LineColor',[0 0 0]);
% colorbar();
caxis([Minimum Maximum])
% colormap(jet)
colormap(gray)
map = colormap;
cmap = flipud(map);
colormap(cmap);
% hold on
% plot(sensor(1,:),sensor(2,:),'ow');
% hold off
title(sprintf('Field map at step %d %f sec)',k));
drawnow('expose');
axis equal;
currFrame = getframe(gcf);
writeVideo(vidObj,currFrame);
end
close(vidObj);
end
The figures are created with cartesian axis, I need to remove it because I should create a video with them.
Someone could help me?
Many thanks
  2 Commenti
Davide Magnelli
Davide Magnelli il 8 Nov 2017
The figures are created with cartesian axis, I need to remove it because I should create a video with them. Someone could help me?
Jagadeesh Korukonda
Jagadeesh Korukonda il 22 Ago 2022
set(gca,'XColor', 'none','YColor','none')
set(gca, 'color', 'none');

Accedi per commentare.

Risposte (3)

Sascha Power
Sascha Power il 28 Set 2021
Just use the following command:
axis off
  2 Commenti
Petr Dohnalik
Petr Dohnalik il 15 Feb 2022
Similar problem. This works for me perfectly!
Larry Gulliver
Larry Gulliver il 18 Mar 2022
this answer made me laugh and worked perfect. Thank you.

Accedi per commentare.


M
M il 8 Nov 2017
set(gca,'visible','off')
  2 Commenti
Tijs Maas
Tijs Maas il 9 Mag 2019
Thanks! This removes the axis, but I still see ticks on the edges in 2019a! Acquisition_5.mat.png
M
M il 10 Mag 2019
Try this command:
set(gca,'xtick',[])

Accedi per commentare.


Mariana Saenz
Mariana Saenz il 30 Lug 2019
Modificato: Mariana Saenz il 30 Lug 2019
set(gca,'XColor', 'none','YColor','none')
  1 Commento
Majid
Majid il 13 Nov 2021
I like it! It removes the axis but not the blank white background!

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by