4-3 �����C�⪺����

§Q¥Î colorbar «ü¥O¡A¥iÅã¥Ü MATLAB ¦p¦ó¥H¤£¦PÃC¦â¨Ó¥Nªí¦±­±ªº°ª«×¡A¨Ò¦p­Y¥ý¿é¤J¡upeaks¡v¡A¦A¿é¤J¡ucolorbar¡v¡A´N¥i¥H±o¨ì¤U¦C¹Ï§Î¡G

Example 1: 04-¤Tºû¥ßÅéø¹Ï/colorbar01.mpeaks; colorbar; z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2)

¦p¤W¹Ï©Ò¥Ü¡Acolorbar ¥i¥HÅã¥Ü°ª«×»PÃC¦âªº¹ï·Óªø±ø¹Ï¡A¦Ó¦±­±¤W¨C¤@­Ó¤p¤è¶ôªºÃC¦â§Y®Ú¾Ú¦¹¹ï·Ó¹Ï¦Ó±o¥X¡C¨Æ¹ê¤W¡AÃC¦â»P°ª«×ªº¹ïÀ³Ãö«Y¬O¥Ñ¤@­Ó¡uÃC¦â¹ïÀ³ªí¡v¡]Colormap¡A©Î²ºÙ¡u¦âªí¡v©Î¡u¦â½L¡v¡^¨Ó±±¨î¡A¦¹ªí¬O¤@­Ó m¡Ñ3 ªº¯x°}¡Am ªº­È³q±`¬O 64¡A¥Nªí¯u¥¿¥Î¨ìªºÃC¦â­Ó¼Æ¡A¦Ó¨C¤@¦C¥Nªí¤@­ÓÃC¦âªº RGB ­È¡A¤@¨Ç±`¥Îªº­È¥i¦Cªí¦p¤U¡G

ÃC¦âRed¡]¬õ¦â¡^Green¡]ºñ¦â¡^Blue¡]ÂŦâ¡^
black¡]¶Â¡^ 0 0 0
white¡]¥Õ¡^ 1 1 1
red¡]¬õ¡^ 1 0 0
green¡]ºñ¡^ 0 1 0
blue¡]ÂÅ¡^ 0 0 1
yellow¡]¶À¡^ 1 1 0
magenta¡]¿øµµ¡^ 1 0 1
cyan¡]«CÂÅ¡^ 0 1 1
gray¡]¦Ç¡^ 0.5 0.5 0.5
dark red¡]·t¬õ¡^ 0.5 0 0
copper¡]»É¦â¡^ 1 0.62 0.4
aquamarine¡]ºÑºñ¡^ 0.49 1 0.83

MATLAB ¹w³]ªºÃC¦â¹ïÀ³ªí¥i¥Ñ colormap ±oª¾¡A¦p¤U¡G

Example 2: 04-¤Tºû¥ßÅéø¹Ï/colormap01.mcm=colormap; size(cm) ans = 64 3

¥Ñ¤W¥iª¾ cm ¬O¤@­Ó 64¡Ñ3 ªº¯x°}¡A¦]¦¹ MATLAB ¦bµe¹Ï®É¡A·|§â cm ²Ä¤@¦CªºÃC¦â³]©wµ¹¦±­±ªº³Ì°ªÂI¡A§â cm ªº³Ì«á¤@¦CªºÃC¦â³]©wµ¹¦±­±ªº³Ì§CÂI¡A¨ä¾l°ª«×ªºÃC¦â«h¨Ì½u©Ê¤º´¡ªk¨Ó¨M©w¡C¦]¦¹¡A§Ú­Ì¥u­n§ïÅÜÃC¦â¹ïÀ³ªí¡A§Y¥i±o¨ì¤£¦PÃC¦âªº¦±­±¡C±ý§ïÅÜÃC¦â¹ïÀ³ªí¡A¤]¬O¥Î colormap «ü¥O¡A¦p¤U¡G

Example 3: 04-¤Tºû¥ßÅéø¹Ï/plotxyz13.mpeaks; colormap(rand(64,3)); colorbar; z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2)

¦b¤W­z½d¨Ò¤¤¡A§Ú­Ì¨Ï¥Î¶Ã¼Æ¨Ó²£¥Í¤@­Ó 64¡Ñ3 ÃC¦â¹ïÀ³ªí¡A¦]¦¹¦±­±¬Ý°_¨Ó¨Ã¤£¬O«Ü½à¤ß®®¥Ø¡C¨Æ¹ê¤W¡A­n²£¥Í¤@­Ó¦n¬ÝªºÃC¦â¹ïÀ³ªí¨Ã¤£¬O¥ó®e©öªº¨Æ¡A¦]¦¹ MATLAB ¦³¤@¨Ç²{¦¨ªºÃC¦â¹ïÀ³ªí¡A¾ã²z¦p¤U¡G

«ü¥O»¡©ú
colormap hsv HSV ªºÃC¦â¹ïÀ³ªí¡]¹w³]­È¡^
colormap hot ¥Nªí¡§¼ö¡¨ªºÃC¦â¹ïÀ³ªí
colormap cool ¥Nªí¡§§N¡¨ªºÃC¦â¹ïÀ³ªí
colormap summer ¥Nªí¡§®L¤Ñ¡¨ªºÃC¦â¹ïÀ³ªí
colormap gray ¥Nªí¡§¦Ç¶¥¡¨ªºÃC¦â¹ïÀ³ªí
colormap copper ¥Nªí¡§»É¦â¡¨ªºÃC¦â¹ïÀ³ªí
colormap autumn ¥Nªí¡§¬î¤Ñ¡¨ªºÃC¦â¹ïÀ³ªí
colormap winter ¥Nªí¡§¥V¤Ñ¡¨ªºÃC¦â¹ïÀ³ªí
colormap spring ¥Nªí¡§¬K¤Ñ¡¨ªºÃC¦â¹ïÀ³ªí
colormap bone ¥Nªí¡§X¥ú¤ù¡¨ªºÃC¦â¹ïÀ³ªí
colormap pink ¥Nªí¡§¯»¬õ¡¨ªºÃC¦â¹ïÀ³ªí
colormap flag ¥Nªí¡§ºX¼m¡¨ªºÃC¦â¹ïÀ³ªí

¨Ò¦p¡A­n¨Ï±zªº¦±­±¨Ï¥Î·Pı¸û§NªºÃC¦â¡A¥i¿é¤J¦p¤U¡G

Example 4: 04-¤Tºû¥ßÅéø¹Ï/plotxyz14.mpeaks; colormap cool; colorbar z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2)

°£¤F¥H°ª«×¨Ó³]©wÃC¦â¤§¥~¡Asurf ¤Î mesh «ü¥O³£¥i¥H±µ¨ü²Ä 4 ­Ó¿é¤J¤Þ¼Æ¨Ó§@¬°³]©wÃC¦âªº¨Ì¾Ú¡C¨Ò¦p¡A­Y­n¥H¦±­±ªº±×²v¡]§Y¡u±è«×¡v©Î¡uGradient¡v¡^¨Ó³]©wÃC¦â¡A¥i¶i¦æ¦p¤U¡G

Example 5: 04-¤Tºû¥ßÅéø¹Ï/plotxyz15.m[X, Y, Z] = peaks; surf(X, Y, Z, gradient(Z)); axis tight; colormap hot

¦b¤W¨Ò¤¤¡Agradient (Z) ·|®Ú¾Ú¼Æ­È·L¤À¡]Numerical Differentiation¡^¨Ó²£¥Í¯x°} Z ªº±è«×¡Asurf §Y§Q¥Î¦¹±è«×¨Ó²£¥Í¦±­±ªºÃC¦â¡C±ýª¾ gradient ªº¸Ô²Ó¸ê°T¡A¥i¦b MATLAB «ü¥Oµøµ¡¤U¿é¤J help gradient¡C

­Y­n¥H¦±­±ªº¦±²v¨Ó³]©wÃC¦â¡A¥i¶i¦æ¦p¤U¡G

Example 6: 04-¤Tºû¥ßÅéø¹Ï/plotxyz16.m[X, Y, Z] = peaks; surf(X, Y, Z, del2(Z)); axis tight; colormap hot

¦b¤W¨Ò¤¤¡Adel2 (Z) ®Ú¾Ú¼Æ­È·L¤À¨Ó²£¥Í¯x°} Z ªº discrete Laplacian¡A¸Ô±¡¥i°Ñ¨£ help del2 ¶Ç¦^ªº½u¤W¤ä´©¡C

§Ú­Ì¥i¥Î brighten «ü¥O¨Ó¨ÏÃC¦â¹ï·ÓªíÅÜ«G©ÎÅÜ·t¡A¦p¤U¡G

Example 7: 04-¤Tºû¥ßÅéø¹Ï/plotxyz17.mcolormap copper subplot(3, 1, 1); rgbplot(colormap); brighten(colormap, 0.5) subplot(3, 1, 2); rgbplot(colormap); brighten(colormap, -0.8) subplot(3, 1, 3); rgbplot(colormap);

¨ä¤¤ rgbplot ¥iµe¥X R¡BG¡BB ¤T¦âªº¤ñ­«¹ï¦C¼ÆªºÅܤơC

¤W­z MATLAB ¨M©wÃC¦âªº¤èªkºÙ¬°¡u¯Á¤ÞÃC¦â¡v¡]Indexed Color¡^ªk¡A¦]¬°¦±­±¤W¨C­Ó¤è¶ô¥ý¹ïÀ³¦ÜÃC¦â¹ïÀ³ªíªº¯Á¤Þ¡]§Y¬Y¤@¯S©w¦C¡^¡A¦A¥Ñ¦¹¦C¨M©w¯u¥¿­n¥ÎªºÃC¦â¡C¦pªG±zªºÅã¥Ü¾¹¯à¤ä´© 24 ¦ì¤¸¥þ±m¡A«h§Ú­Ì¥i¥Hª½±µ©w¸q¤@¤d¤»¦Ê¸U¡]224¡^ºØÃC¦â¡A¦Ó¤£»Ý­n¦A©w¸qÃC¦â¹ïÀ³ªí¡C¦¹ºØ¤èªkºÙ¬°¡u¯u¹êÃC¦â¡v¡]True Color¡^ªk¡A¦p¤U¡G

Example 8: 04-¤Tºû¥ßÅéø¹Ï/plotxyz18.mZ = peaks(50); C(:, :, 1) = rand(50); % C(:,:,1) ¥Nªí R¡]Red¡A¬õ¦â¡^ªº¥÷¶q C(:, :, 2) = rand(50); % C(:,:,2) ¥Nªí G¡]Green¡Aºñ¦â¡^ªº¥÷¶q C(:, :, 3) = rand(50); % C(:,:,3) ¥Nªí B¡]Blue¡AÂŦâ¡^ªº¥÷¶q surf(Z, C); axis tight

¦b¤W¹Ï¤¤¡A¦±­±¤W¨C¤@­Ó¤p¤è¶ôªºÃC¦â³£¬O¥Ñ¯x°} C ªº R¡BG¡BB ¥÷¶q¨Ó¨M©w¡A³o´N¬O¡u¯u¹êÃC¦â¡v¡A¦Ó©M«e­zªº¡u¯Á¤ÞÃC¦â¡v¦³©Ò¤£¦P¡C

¦b«e­zªº¨Ò¤l¤¤¡A¨C¤@­Ó¦±­±³£¥i¥Hµø¬°¥Ñ¤@¶ô¶ôªº¥|¨¤¤p¡u²¡¿j¡v©Ò«÷¦¨¡A¦Ó¥B¨C¤@¶ô¡u²¡¿j¡vªí­±ªºÃC¦â¬O§¡¤Ã¤@­Pªº¡A¨äÃC¦â­È¥Ñ¡u²¡¿j¡v©Ò¦bªº¦±­±°ª«×©Ò¨M©w¡C­Y­n¨Ï¡u²¡¿j¡vªí­±ªºÃC¦â²£¥Í³sÄò©ÊªºÅܤơA¥i¨Ï¥Î shading «ü¥O¡A¨Ò¦p§Ú­Ì¥i¥H¥ý¿é¤J¡upeaks¡v¡A¦A¿é¤J¡ushading interp¡v¡A´N¥i¥H±o¨ì¤U¦CÃC¦âº¥¶iÅܤƪº¹Ï§Î¡G

Example 9: 04-¤Tºû¥ßÅéø¹Ï/shadingInterp01.mpeaks; colormap jet; colorbar; shading interp; z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2)

¥Ñ¤W¹Ï¥i¬Ý¥X¡A¸g¥Ñ shading interp ªº§@¥Î¡A¦±­±ªºÃC¦â§ó¥[¬X¶¶¥­·Æ¡C¦³Ãö shading «ü¥Oªº¥Îªk¡A¥i¦Cªí¦p¤U¡G

«ü¥O»¡©ú
shading interp ¨Ï¥Î Bilinear Interpolation ¨Ó¨Ï¡u²¡¿j¡v®Ú¾Ú¥|³»ÂIªºÃC¦â²£¥Í³sÄòªºÅܤÆ
shading flat ¡u²¡¿j¡vªºÃC¦â¬O§¡¤Ã¤@­Pªº¡C
shading faceted ¡u²¡¿j¡vªºÃC¦â¬O§¡¤Ã¤@­Pªº¡A¦Ó¥B¦P®ÉÅã¥Ü¡u²¡¿j¡v¥æ±µªº¡uÃä¡v¡C¡]¦¹¬°¹w³]­È¡^

¨Ï¥Î colormap ¤Î shading¡A¥i²£¥Í·N·Q¤£¨ìªºµ²ªG¡A¨Ò¦p¡G

Example 10: 04-¤Tºû¥ßÅéø¹Ï/plotxyz19.msurfl(peaks); % ¦±­±¹Ï¥[¤W¥ú·½ axis tight colormap(pink); shading interp

¤W¹Ïªº¦±­±¡A¬O§_«Ü¹³¤@¥ó¥ú·ÆµL·åªºÀJ¶ì«~©O¡H¡I


MATLABµ{¦¡³]­p¡G¤Jªù½g