How to make high quality publication-level 3d surfaces?
2 views (last 30 days)
Show older comments
Hi guys,
I'm using matlab to create simple 3d surfaces such as the one below. I would like to produce very high quality, "modern"-looking really cool 3d surfaces that are very pleasing to the eye. I have done my best to do this in below example. Can this be improved at all?
Thank you
EDIT: Bump? Anyone?
set(0,'DefaultFigureColor','White',...
'defaultaxesfontsize',8,...
'DefaultAxesFontname','Calibri',...
'DefaultTextFontName','Calibri')
s1 = surf(peaks);
xlabel('X Label', 'fontweight', 'bold')
ylabel('Y Label', 'fontweight', 'bold')
zlabel('Z Label', 'fontweight', 'bold')
title('PEAKS', 'FontSize', 12, 'fontweight', 'bold')
yh = get(gca,'YLabel'); % Handle of the y label
set(yh, 'Units', 'Normalized')
pos = get(yh, 'Position');
%set(yh, 'Position',pos.*[0.85,0.6,1],'Rotation',-10.9)
set(yh, 'Position',pos.*[0.8,-0.4,0],'Rotation',-13)
xh = get(gca,'XLabel'); % Handle of the x label
set(xh, 'Units', 'Normalized')
pos = get(xh, 'Position');
%set(xh, 'Position',pos.*[1,1,1],'Rotation',11.1)
set(xh, 'Position',pos.*[1,1,0],'Rotation',11.1)
zh = get(gca,'ZLabel'); % Handle of the z label
set(zh, 'Units', 'Normalized')
pos = get(zh, 'Position');
%set(zh, 'Position',pos.*[1.15,1,0],'Rotation',90)
set(zh, 'Position',pos.*[1,1,0],'Rotation',90)
th = get(gca,'title'); % Handle of the z label
set(th, 'Units', 'Normalized')
pos = get(th, 'Position');
set(th, 'Position',pos.*[1,1.005,0],'Rotation',0)
view (135,15);
axis tight
camlight
lighting phong
shading interp
set(s1,'FaceColor',[0.1 0.75 1], 'edgecolor',[0 0 0.4],'meshstyle','both','linewidth',.15);
export_fig Alpha.png -m2 -q101 -nocrop
0 Comments
Answers (0)
See Also
Categories
Find more on Surface and Mesh Plots 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!