1. 3D影像自動旋轉
camorbit函式
官方檔案中給出了詳細說明:

示例:
%旋轉功能核心陳述句:
axis vis3d %3維坐標系
surf(peaks)
for i = 1:36
camorbit(10,0,'data',[0 0 1]) %%[0 0 1]表示按z軸旋轉,36*10=360表示旋轉一周
drawnow %%即時顯示旋轉的結果
end
效果展示:

2. 顏色漸變
MATLAB中提供了多種顏色漸變的色域:包括Opencv中常見的hsv等



使用示例:autumn色域
clc,clear,close all
c = autumn(256);
surf(peaks);
colormap(c);
shading interp;
效果:

更多示例可參考官方檔案,百度搜索:MATLAB autumn,jet等.
3. 保留指定顏色線條
核心陳述句:surf(peaks,'EdgeColor','yellow'),即在surf或其他繪圖函式中添加‘EdgeColor’指定內容.
有效名稱包括: ‘red’、‘green’、‘blue’、‘cyan’、‘magenta’、‘yellow’、‘black’、‘white’
和 ‘none’,有 效的十六進制顏色代碼由 ‘#’ 后跟三個或六個十六進制數字組成,
示例:保留黃色線條
axis vis3d %3維坐標系
surf(peaks,'EdgeColor','yellow')
for i = 1:36
camorbit(10,0,'data',[0 0 1]) %%[0 0 1]表示按z軸旋轉,36*10=360表示旋轉一周
drawnow %%即時顯示旋轉的結果
end
效果:

4. 自動生成GIF至桌面
```c
axis vis3d %3維坐標系
surf(peaks,'EdgeColor','yellow')
for i=1:36
camorbit(10,0,'data',[0,0,1])%[0 0 1]表示按z軸旋轉,36*10=360表示旋轉一周
M=getframe(gcf);
nn=frame2im(M);
[nn,cm]=rgb2ind(nn,256);
if i==1
imwrite(nn,cm,'out.gif','gif','LoopCount',inf,'DelayTime',0.1);%說明loopcount只是在i==1的時候才有用
else
imwrite(nn,cm,'out.gif','gif','WriteMode','append','DelayTime',0.1)%當i>=2的時候loopcount不起作用
end
end
為了表示色域漸行程度,可以加上一句colorbar.

總結:
MATLAB figure配色問題實際上還存在著很多很多的技巧,需要多使用多積累,很難一篇文章就總結完所有用法,所以最好的辦法就是查閱MATLAB官方檔案,里面會給出很多簡單易懂的例程,如果擔心英文看不懂,就把頁面設定為中文;
另外,很多頂刊文獻中也不乏很多精彩的配色方案,不妨去從中借鑒汲取靈感,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/262958.html
標籤:其他
