saveing SVG from figures
11 ビュー (過去 30 日間)
古いコメントを表示
hello,
I wanted to have all my graphs in the same aspect ratio, same fonts, etc ,etc,etc
so I created an small function that takes the image and sets everything I want and saves the figure as an svg
function ExportFiguresSized(figure,name)
Axes=get(figure,'CurrentAxes');
set(Axes,'FontSize', 30,'FontName','Calibri','FontWeight','bold');
set(figure,'Position',[0,1.058333333333334,50.800000000000004,25.479375000000005],'Units','centimeters','InnerPosition',[0,1.058333333333334,50.800000000000004,25.479375000000005], 'OuterPosition', [-0.211666666666667,0.846666666666667,51.22333333333334,27.940000000000005],'Clipping','on','Resize','on')
saveas(figure,name,'svg')
end
but I am having trouble with something,
in my script i have two different figures and use this function
test2=figure(1);
plot(signals(:,:))
ExportFiguresSized(test2,'test2')
test=figure(25);
plot(signals(:,:))
ExportFiguresSized(test,'test')
But I am facing an strange behavior, the first image created "test2" is not being saved as an svg but as a bitmap (when i open it with inkscape is not a real svg) but at the same time the second image created "test" it is an svg and i can modify as i want.
I can not understand why this is happening, someone could enlight me? or tell me why this is happening?
0 件のコメント
採用された回答
Jan
2021 年 3 月 23 日
Try to set the renderer of the figure to Painters. The OpenGL renderer creates pixel graphics.
3 件のコメント
Jan
2021 年 3 月 23 日
If the figure renderer mode is set to 'auto', Matlab decides which renderer to use. This can depend on the number of graphic elements and if the data contain 3D values or not. You are on the save side, if you set the renderer explicitly to your needs.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Environment and Settings についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!