Save just part of the figure
24 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
BN
el 12 de Sept. de 2020
Comentada: Ameer Hamza
el 13 de Sept. de 2020
Dear all, I generate my color bar using this code
ax = axes;
colormap (flipud(cool(10)))
caxis([0 1])
c = colorbar(ax,'southoutside');
ax.Visible = 'off';
here is the result of the above code which I wnat to save it:
and try to save it via ".SVG" format using:
cd 'F:\university'
set(gcf,'PaperOrientation','landscape');
set(gcf,'PaperUnits','normalized')
set(gcf,'PaperPosition',[0 0 .36 .36]);
print(gcf,'COLORBAR.svg','-dsvg');
But after that, there is a huge white space in the top of the color bar appears. Is there any way to save just a color bar? I read about exportfig and exportgraphic but unfortunately they unable to save figures as SVG format. so I thought it can be done using ax properties so I tried this
set(gca, 'units', 'normalized'); %Just making sure it's normalized
Tight = get(gca, 'TightInset'); %Gives you the bording spacing between plot box and any axis labels
%[Left Bottom Right Top] spacing
NewPos = [Tight(1)+.02 Tight(2)+.02 1-Tight(1)-Tight(3)-0.06 1-Tight(2)-Tight(4)-0.06]; %New plot position [X Y W H]
set(gca, 'Position', NewPos);
But it not accomplished well.
Are you know how I can save just the color bar as SVG format?
Thank you so much
0 comentarios
Respuesta aceptada
Ameer Hamza
el 12 de Sept. de 2020
I think the easiest solution might be to export to eps format (which is also vector format) and then some other tool to generate svg. The following command will directly create eps file without any extra space.
f = figure;
ax = axes;
colormap(flipud(cool(10)))
caxis([0 1])
c = colorbar(ax,'southoutside');
ax.Visible = 'off';
exportgraphics(gcf, 'test.eps', ...
'ContentType', 'vector')
2 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Orange en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!