MATLAB绘图随记(1)--如何画一个透明平面

http://blog.sina.com.cn/s/blog_5cd4cccf0100q90p.html

小老板让我绘个图

找了些资料 最后发现matlab绘图功能还是很强大的
列举点小小小皮毛
set(gca,'XLim',[-2 2],'YLim',[-2 2],'ZLim',[-2 2])
这个是改变坐标长度的
但是只能成比例修改才显示的出来
例如我画了个单位球
如果只修改XLim 他显示的仍是原图
 
首先,来说一下如何画一个透明的平面
x=-100:50:100;
y=x;
[x,y]=meshgrid(x,y)
z=x*0;
surf(x,y,z)
alpha(.5)
效果如下
如果把坐标的间隔设置的太小 则会造成是面太小 ,线太多。
而alpha设置的透明度是设设置面的透明度,线不可避免
第二步,就是如何去除掉线了
加一句shading interp
就OK啦
  
 
整个代码如下
 
x=-100:50:100;
y=x;
[x,y]=meshgrid(x,y)
z=x*0;
%[x,y,z]=sphere(20)
surf(x,y,z);
shading interp
set(gca,'ZLim',[-100 100])
axis equal
alpha(0.6)
 
效果图
 
 

MATLAB画矩形的简单手工打造方法

http://zhongcheng0519.blog.163.com/blog/static/16169068820130129515760/

在MATLAB中画矩形,当然有很简单的办法,一个rectangle函数就可以简单搞定。然而,如果想自己弄一个呢,就比较麻烦了。例如,若想在平面上画一个的矩形,其中分别为横纵坐标。最简单的办法当然就是一根线一根线的画。这样来弄毕竟比较复杂,也很容易出错。但如果利用下面的公式来画矩形,我想就比较简单了:

用MATLAB来实现则为

x1 = -2:0.1:2;

x2 = 2:-0.1:-2;

[X1,X2] = meshgrid(x1,x2);

Z = (max(abs(X1),abs(X2)) == 1);

figure,imshow(Z);

接下来,如果需要对矩形进行平移、拉伸等操作,就只需要在第四条语句上稍作修改即可。即,假设起始于a,结束于b;起始于c,结束于d。则第四条语句可更改为

Z = (max(abs(X1-(a+b)/2)/(b-a),abs(X2+(c+d)/2)/(b-a)) == 1);

这样,就可以用较为简单的方法画出矩形。

Matlab 三维作图 3-D Graph

http://hi.baidu.com/nature_and_man/item/93a2f5183024310ce65c36c7

.............

画一个可透视的椭球

figure

a = 15;
b = 10;
c = 5;

k = 5;
n = 2^k-1;
theta = pi*(-n:2:n)/n;
phi = (pi/2)*(-n:2:n)'/n;
X = a*cos(phi)*cos(theta);
Y = b*cos(phi)*sin(theta);
Z = c*sin(phi)*ones(size(theta));
surf(X,Y,Z,'FaceColor','interp',...
    'EdgeColor','none',...
    'FaceLighting','phong')

axis tight
camlight left
alpha(.33)   % 产生透视效果

这是在7.1.上画的图:

MATLAB绘 透视图的更多相关文章

  1. MATLAB 绘透视图

    MATLAB绘图随记(1)--如何画一个透明平面 http://blog.sina.com.cn/s/blog_5cd4cccf0100q90p.html 小老板让我绘个图 找了些资料 最后发现mat ...

  2. Kalman滤波器从原理到实现

    Kalman滤波器的历史渊源 We are like dwarfs on the shoulders of giants, by whose grace we see farther than the ...

  3. 【Matlab】绘制饼状统计图

    a=tabulate(b); % b为需要绘制饼图的原始数据列,生成新的一个矩阵a label={'1','2','3'} % 设定饼图每块扇形代表的内容 percent=num2str(a(:,3) ...

  4. MATLAB绘图,绘双坐标轴,绘一图二轴等

    clc; clear all; close all; % %% 画极坐标系 % x = 0:.01 * pi:0.5 * pi; % y = cos(x) + sqrt(-1) * sin(x); % ...

  5. MATLAB中绘制质点轨迹动图并保存成GIF

    工作需要在MATLAB中绘制质点轨迹并保存成GIF以便展示. 绘制质点轨迹动图可用comet和comet3命令,使用例子如下: t = 0:.01:2*pi;x = cos(2*t).*(cos(t) ...

  6. Matlab的68个小常识

    1.det(A)可以计算矩阵A的行列式值.inv(A)可以计算矩阵A的逆 2.rref(A)可以将矩阵A化为行简化阶梯梯形矩阵 3.eps是系统定义的容许误差,eps=2.2204*10-16 4.p ...

  7. MATLAB中FFT的使用方法

    MATLAB中FFT的使用方法 说明:以下资源来源于<数字信号处理的MATLAB实现>万永革主编 一.调用方法X=FFT(x):X=FFT(x,N):x=IFFT(X);x=IFFT(X, ...

  8. K均值聚类算法的MATLAB实现

    1.K-均值聚类法的概述    之前在参加数学建模的过程中用到过这种聚类方法,但是当时只是简单知道了在matlab中如何调用工具箱进行聚类,并不是特别清楚它的原理.最近因为在学模式识别,又重新接触了这 ...

  9. MATLAB处理信号得到频谱、相谱、功率谱

    (此帖引至网络资源,仅供参考学习)第一:频谱 一.调用方法 X=FFT(x):X=FFT(x,N):x=IFFT(X);x=IFFT(X,N) 用MATLAB进行谱分析时注意: (1)函数FFT返回值 ...

随机推荐

  1. ci(转)

    1  从代码管理器签出源文件 2  修改代码 3  编译代码 4  遇到错误,转到2继续修改直到达到预期 5  运行单元测试,期望所有的测试绿色(通过) 6  单元测试出错,转入2 7  重构代码,按 ...

  2. CentOS6 Squid代理服务器的安装与配置

    代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息.Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据.当一个用户想要下载一 ...

  3. Android SDK Manager Google Apis 下载

    本意是想利用google的gcm来实装android推送功能的,很遗憾, google貌似已经停止提供啥服务给国内了,或者说国内想继续使用google 服务暂时变得几乎不可能了.找了个代理来进行goo ...

  4. 正确答案 全国信息学奥林匹克联赛( ( NOIP2014) 复 赛 模拟题 Day1 长乐一中

    [题目描述]小 H 与小 Y 刚刚参加完 UOIP 外卡组的初赛,就迫不及待的跑出考场对答案."吔,我的答案和你都不一样!",小 Y 说道,"我们去找神犇们问答案吧&qu ...

  5. Codeforces Round #108 (Div. 2)

    Codeforces Round #108 (Div. 2) C. Pocket Book 题意 给定\(N(N \le 100)\)个字符串,每个字符串长为\(M(M \le 100)\). 每次选 ...

  6. P235 实战练习(集合类)

    将1~100之间的所有正整数存放在一个List集合中,并将集合中索引位置是10的对象从集合中移除. package org.hanqi.practise; import java.util.*; pu ...

  7. URL 正则表达式

    (http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])? From h ...

  8. ExtJS布局方式(layout)图文详解

    Auto默认布局 不给下级组件指定大小和位置 Absolute绝对布局 可使用坐标(x.y)进行布局 Accordion手风琴布局 实现Accordion效果的布局,也可叫可折叠布局.也就是说使用该布 ...

  9. Java——多线程安全问题

     静态代码块中没有this /* * 线程安全问题产生的原因: * 1.多个线程操作共享的数据 * 2.操作共享数据的线程代码有多条 * * 当一个线程在执行操作共享数据的多条代码过程中,其他线程 ...

  10. 配置duilib

    前两天项目要用duilib重构.苦于网上几乎没有duilib的文档和教程,郁闷之极.那份简单文档上的代码都基本看懂了,就是不知道怎么配置,代码跑不起来! 网络上也几乎没有告诉第一次配置duilib的文 ...