天天看點

Surf函數調節圖像方法

Surf函數調節圖像方法

各位小夥伴在用surf函數繪三維圖時很多時候需要改變圖像的屬性,使其更加美觀生動,已達到所需目的。接下來就分享一下調節surf圖像屬性的方法,希望能夠幫到大家。

例如所繪制的三維圖像如下:

[x,y] = meshgrid(-pi:0.1:pi);

z = sin(x).*cos(y);

surf(x,y,z)

則所得圖像為:

Surf函數調節圖像方法

對圖像屬性的調節方式如下:

S = surf(x,y,z)

S =

Surface - 屬性:

EdgeColor: [0 0 0]
   LineStyle: '-'
   FaceColor: 'flat'
FaceLighting: 'flat'
   FaceAlpha: 1
       XData: [63×63 double]
       YData: [63×63 double]
       ZData: [63×63 double]
       CData: [63×63 double]
           

顯示 所有屬性

可以看到屬性欄裡有“EdgeColor”、“LineStyle”、“FaceColor”、“FaceLighting”、“FaceAlpha”。

例如像把圖像中的黑色網格線去掉,即可采用如下方法:

S.LineStyle = ‘none’;

此時原圖像變為:

Surf函數調節圖像方法

同理也可以改變圖像的透明度:

S.FaceAlpha = 0.7;

效果如下:

Surf函數調節圖像方法

以此類推即可。下面詳細列舉各種屬性的參數。

‘EdgeColor’ — Edge line color

[0 0 0] (default) | ‘none’ | ‘flat’ | ‘interp’ | RGB triplet | character vector of color name.

‘LineStyle’ — Line style

‘-’ (default) | ‘–’ | ‘:’ | ‘-.’ | ‘none’.

‘FaceColor’ — Face color

‘flat’ (default) | ‘interp’ | ‘none’ | ‘texturemap’ | RGB triplet | character vector of color name.

‘FaceAlpha’ — Face transparency

1 (default) | scalar in range [0,1] | ‘flat’ | ‘interp’ | ‘texturemap’.

具體詳情可以在Matlab中輸入help surf檢視。

本人也是Matlab小白,才疏學淺,不過還是希望能給大家帶來幫助。彼此互助,感謝大家!

繼續閱讀