MATLAB 图形着色
1.matlab中的颜色查找表函数:
(1)autumn:从红色向橘黄色、黄色平稳过渡;
(2)bone:为含有较高的蓝色组分的gray颜色查找表;
(3)colorcube:包含RGB颜色空间中尽可能多的规则间隔的颜色,它试图提供更多的灰色、纯红、纯绿和纯蓝;
(4)cool:由青色和洋红阴影组成的颜色。在青色和洋红间平滑过渡;
(5)copper:在黑色和亮铜色间平滑过渡;
(6)flag:由红、白、蓝、黑组成。每次索引值增加时,该颜色查找表会完全改变颜色;
(7)gray:线性灰阶颜色查找表;
(8)hot:在黑、红、橘红、黄、白间平滑过渡;
(9)hsv:颜色从红色开始,然后为黄、绿、青、蓝、洋红,最后是红色。特别适合显示周期性函数;
(10)jet:在蓝、青、黄、橘红、红色间过渡;
(11)lines:生成颜色由坐标系对象的colororder属性和灰色阴影确定;
(12)pink:包含品红色的柔和阴影。可以对灰度照片进行棕褐色化;
(13)prism:重复红、橘红、黄、绿、蓝、紫色;
(14)spring:由洋红和黄色阴影组成;
(15)summer:由绿色和黄色阴影组成;
(16)white:白色;
(17)winter:由蓝色和绿色阴影组成。
2.用colormapeditor可以画出抢眼的图。
[x,y]=meshgrid(-2:0.1:2);
z=x.*exp(-x.^2-y.^2);
surf(x,y,z,gradient(z));
shading interp;
colormapeditor;
图1
图2
图3
3.利用函数del2计算矩阵的拉普拉斯算子,实现表面曲率向颜色映射
具有相似曲率的区域用相同的颜色进行描绘。
p=peaks(40);
c=del2(p);
surf(p,c);
colormap hsv;
%对比
figure
surf(p);
colormap hsv;
图4
4.真彩色表面
创建一个随机着色表面图
z=peaks(25);
c(:,:,1)=rand(25);
c(:,:,2)=rand(25);
c(:,:,3)=rand(25);
surf(z,c);
figure;
surf(z,c,'FaceColor','interp','FaceLighting','phong');
camlight right;
图5
图6
5.纹理映射
纹理映射是通过变换颜色数据将二维图像映射到三维表面上。
clear;
clc;
clf;
load earth;
[x,y,z]=sphere(30);
h=surface(x,y,z);
set(h,'CData',X,'FaceColor','texturemap');%texturemap纹理贴图
colormap(map);
axis equal;
set(gca,'CameraViewAngleMode','manual');
view(3);
图7
6.多边形模型的着色
控制面片着色的属性:
CData:用x,y,z数据指定每个小面或每个顶点的颜色;
CDataMapping:指定是否将颜色数据进行比例化或直接用作颜色映射的索引;
FaceVertexCData:用小面和顶点数据指定每个小面或顶点的颜色;
EdgeColor:指定边的显示,包括隐藏、单色、顶点颜色确定的刻面颜色或顶点颜色确定的插值颜色;
FaceColor:指定小面的显示,包括隐藏、单色、顶点颜色确定的刻面颜色或顶点颜色确定的插值颜色;
MarkerEdgeColor:指定闭合图形的边缘色;
MarkerFaceColor:指定闭合图形的填充色。
%画白色正方体
vert=[1 1 1;1 2 1;2 2 1;2 1 1;1 1 2;1 2 2;2 2 2;2 1 2];
fac=[1 2 3 4;2 6 7 3;4 3 7 8;1 5 8 4;1 2 6 5;5 6 7 8];
patch('Faces',fac,'Vertices',vert,'FaceColor','w');
view(3);
axis square;
axis equal;
%刻面着色
patch('Faces',fac,'Vertices',vert,'FaceVertexCData',hsv(6),'FaceColor','flat');
%插值着色
patch('Faces',fac,'Vertices',vert,'FaceVertexCData',hsv(6),'FaceColor','interp');
图7
7.片面边着色
v=[0 0 0;1 0 0;1 1 0;0 1 0];
f=[1 2 3 4];
fvc=[1 1 0;1 0 0;0 1 0;1 0 1];
patch('Vertices',v,'Faces',f,'FaceVertexCData',fvc,'FaceColor','flat','EdgeColor','flat','Marker','o','MarkerFaceColor','flat');
set(gcf,'color','w');
view(-16,76);
axis off;
text(0,0,0.5,'1');
text(1,0,0.5,'2');
text(1,1,0.5,'3');
text(0,1,0.5,'4');
图8
修改:f=[4 3 2 1];
图9
f的次序改变不仅仅改变边的颜色,还改变了面的颜色,面的颜色是指定的第一个顶点的颜色。
MATLAB 图形着色的更多相关文章
- MATLAB学习笔记(十)——MATLAB图形句柄
(一)图形对象及其句柄 一.图形对象 MATLAB图形对象包括: 1.MATLAB每一个具体图形一定包括计算机屏幕和图形窗口两个对象 二.图形对象句柄 1.定义 MATLAB在创建每一个图形对象时,都 ...
- 【转】MATLAB图形句柄(二)
MATLAB图形句柄 1.1 图形对象及其句柄 1.2 图形对象属性 1.3 图形对象的创建 1.1 图形对象及其句柄 1.图形对象 MATLAB的图形对象包括计算机屏幕.图形窗口.坐标轴 ...
- Matlab图形调色
Matlab图形调色 Simple example var colormap = require('colormap') options = { colormap: 'jet', // pic ...
- MATLAB 图形图像处理
theme: MATLAB author: pprp date: 2018/2/2 --- MATLAB 图形图像处理 二维绘图命令 plot 线性空间 plot(t,[x1,x2,x3]) : 在同 ...
- windows 下 putty 登陆服务器 显示matlab图形界面
本文需要下载 putty.exe 和 pscp.exe :http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Xming 主 ...
- MATLAB学习笔记(十一)——MATLAB图形用户界面设计
(一)菜单设计 一.建立用户菜单 1.概况: 用户菜单一般含有一级菜单和二级菜单,乃至多级菜单.每一级菜单又包含多个菜单项.建立菜单可以使用uimenu函数. 2.uimenu函数调用: %建立一级菜 ...
- matlab图形句柄属性总结
原文在于雪漫的bloghttp://blog.sina.com.cn/s/blog_4b9b714a0100cce2.html这两天在看句柄式图形方面的东西,以下是我在看书过程中整理的学习笔记,比较详 ...
- matlab图形矢量化解决方案
大致思路:matlab中生成矢量格式文件-导入Visio中-编辑-导出合适格式-在其他软件中使用 准备工具 Matlab 2014b或更高版本 Visio 2007或更高版本 我查看过,Matlab能 ...
- 【转】matlab图形句柄详解(一)
在matlab中,每一个对象都有一个数字来标识,叫做句柄.当每次创建一个对象时,matlab就为它建立一个唯一的句柄,句柄中包含有该对象的相关信息参数,可以在后续程序中进行操作,改变其中的参数,以便达 ...
随机推荐
- CentOS6.5安装mysql以及常见问题的解决
前言 最近在学习Linux系统,今天在安装MySQL数据库时出现很多问题,花费了两个小时终于解决,故记录下来以供大家参考.(本人目前还在学习阶段,下面写到的是自己结合网上查到的资料以及各位前辈给出的解 ...
- 【Mybatis】1、Mybatis拦截器学习资料汇总
MyBatis拦截器原理探究 http://www.cnblogs.com/fangjian0423/p/mybatis-interceptor.html [myBatis]Mybatis中的拦截器 ...
- 写出java8实现对List<User>中的username字段过滤出不等于张三的数据
写出java8实现对List<User>中的username字段过滤出不等于张三的数据... 对...这个是一道面试题.当时没有看过java8的新特性...所以有点懵. 看完之后感觉 真. ...
- 了解java虚拟机—G1回收器(9)
G1(Garbage-First)回收器是在JDK1.7中正式使用的全新垃圾回收器,G1拥有独特的垃圾回收策略,从分代上看,G1依然属于分代垃圾回收器,它会区分年代和老年代,依然有eden和survi ...
- 大数据之 Spark
1 渊源 于2009由Matei Zaharia创立了spark大数据处理和计算框架,基于内存,用scala编写. 2 部署 2.1 需要软件包 下载路径见已有博文 Jdk ——因为运行环境为jvm ...
- FormData对象的使用
一.概述 FormData类型是XMLHttpRequest 2级定义的,它是为序列化表以及创建与表单格式相同的数据提供便利. 作用:1.利用一些键值对来模拟一系列表单控件:即将form中的所有表单元 ...
- 2017-07-29 中文代码示例教程之Java编程一天入门
Java编程一天入门 v0.0.1 alpha 共享协议 本作使用署名-非商业使用-禁止演绎协议共享. 前言 Java入门代码用中文写(举例如下)更能被新手理解. 由于至今没有看到类似教程, 在此抛砖 ...
- 【读书笔记】iOS-xib,点击事件的连接(三)
紧接着上一节来写 一,选中On按钮,同时按住Control键,连接到FirstViewController.h文件中. 会弹出如下对话框. 二,将Connection处选择为Action,同时将Nam ...
- 教你如何使用云服务器去搭建SS
注册云服务器 (首先推荐Vultr,注册链接:https://www.vultr.com/?ref=6962741,其他云服务商如阿里云HK,Linode等亦可使用,按需选择) 这里拿Vultr举例: ...
- Android 云之声离线语音合成
离线语音解析 public class SpeechUtilOffline implements TTSPlayerListener { public static final String appK ...