MATLAB 程式設計入門篇 三維立體繪圖 (part1)

Slides:



Advertisements
Similar presentations
完美殺人筆記簿 【爸!我受夠了!】 第七組組員: 林正敏 陳筱涵 李蓓宇 許純宜 羅玉芬 謝文軒.
Advertisements

index 目次 ( 請按一下滑鼠,解答就會出現喔 !) 接續下頁解答 3-1 極限的概念.
中医内科 陈良金. 目的要求: 熟悉虚劳的证候特征。 了解虚劳的发病与气血阴阳及五脏的关系。 掌握虚劳和肺痨及一般虚证的区别与联系。 掌握虚劳的治疗要点。 熟悉虚劳各个证型的辨证论治。 了解虚劳的预后及调摄护理。
教育研究课题的实施 北京教育科学研究院 陶文中 第一节 如何制定课题研究计划 (开题论证报告) 一般结构(框架) 1 、课题名称 2 、研究目的和意义 3 、研究的基本内容 ( 1 )理论研究(细分为若干子项目) ( 2 )实践研究( 细分为若干子项目)
揭日本人让人理解不了的20件事 今天先来看看日本人的自我剖析︰日本人的20个“为什么”?这“20个为什么”的内容来源于日本影视名人北野武所主持的一个节目。虽然不是网友来信中提出过的问题,但看看日本人自己对自己的分析,是挺有意思的。而且,仔细看看下面这“日本人的20个为什么”,会发现其实有些东西对于中国人来说并不陌生。毕竟汉字圈里的文化,是有共融之处的。
目录 如何职位分析调查表 职位分析的目的与意义 职位调查表内容与要点说明 职位分析注意事项 职位分析调查工作计划.
个人简历 制作 天津民族中专 刘冬.
“锦带功曹”为何褪色? Part 2 元初凄凉:珍禽入寒林
天津1班面试专项练习1 综合分析现象类 主讲:凌宇 时间:5月21日 19:00—22:00.
■ 市场现状 市场预测 Part B 中国冰箱市场. ■ 市场现状 市场预测 Part B 中国冰箱市场.
事业单位法人年度报告制度改革 业 务 培 训.
轻松应对百变题型——说明文阅读 五年级 语文 赵老师.
性别决定与伴性遗传 性别决定 伴性遗传 巩固练习.
描写家乡的一处景物.
45天备考指南 2013年下半年国考资格证笔试系列讲座(2) 华图教师事业部 石杨平.
二次函数图象特点的应用 结题报告 K-11 班研究性学习小组 李浚滨制作.
明城 微课程研究运用 姓 名:严静华 单 位:佛山市高明区东洲中学 作品名称:《排比的理解与运用》
公文及公文处理 学校办公室 姚利民.
(某同学作文选段) 这就是我 大家好,我的名字叫XX,我家在XX,但是小学的时候我在XX学校读书,我现在读书在永固中学,我现在说学校变化,但是我回校读书坐单车,还有学校很大,初中学习练几课,老师有很多,学校学生有很多,但是现在很重要学习,但是我家有很多工叫做,没有那么多时间学习。
MATLAB程序设计教程(第二版) 刘卫国 主编 中国水利水电出版社.
高等学校会计制度的学习体会 (第二次征求意见稿).
2014政法干警备考平台 2014政法干警考试群⑨ 中公教育政法干警考试 ——微博 中公教育政法干警考试
德育导师制基本经验介绍.
如何开好通表会 荔湾区教育局第二期学生团干培训 2009年9月 1.
目录 Part 1 项目宗旨 Part 3 培训方案 Part 2 目标成效 Part 项目时间表.
邯郸摸底考试网阅分析25题(3) 河北广平县第一中学 于沙.
跳楼价 亏本大甩卖 清仓处理 买一送一 5折酬宾. 跳楼价 亏本大甩卖 清仓处理 买一送一 5折酬宾.
资料分析 如何攻破最后瓶颈 主讲老师:姚 剑 4月6日20:00 YY频道:
第四章:社交礼仪 一、社交礼仪的原则 二、社交礼仪的特点 三、社交礼仪的常识 四、工作面试中的个人礼仪 五、考研复试中的礼仪.
清仓处理 跳楼价 满200返160 5折酬宾.
Introduction to Matlab
研究方向: 多媒体环境下课堂教学模式研究.
关于学生户口迁移的有关说明 保卫处户籍室.
电话联系.
迎宾员礼仪 包头机电工业职业学校管理系 白琳 1.
数学软件 Matlab —— 二维平面作图 —— 三维空间作图.
MATLAB程序设计基础 MATLAB的图形处理.
武汉大学总裁46班 舞动青春 有你精彩 化妆舞会活动策划案.
温泉部操作实务.
勞動基準法第二十一條 區別工資內涵之實益及法律效果: 基本工資之意義 工資定義.
09学前教育班 魏文珍 自我介绍.
第20章 生物的遗传和变异 第四节 性别和性别决定 淮南二十六中 鲍娟娟. 第20章 生物的遗传和变异 第四节 性别和性别决定 淮南二十六中 鲍娟娟.
财 务 会 计 第四篇:供应链会计实务 制作人:谌君、熊瑜.
黃聰明 國立臺灣師範大學數學系 其它的資料型態與繪圖型態 黃聰明 國立臺灣師範大學數學系 T.-M.Huang.
第三章 MATLAB图形系统 3.1 图形绘制 3.2 图形标注 3.3 对数和极坐标系中图形绘制 3.4 复杂图形绘制 3.5 坐标轴控制
MATLAB 程式設計進階篇 一般數學函數的處理與分析
第六章 图 形 基 础 6.1 概述 6.2 基本二维绘图 6.3 格式化绘图 6.4 特殊图形函数 6.5 基本三维绘图
范洪源 臺灣師範大學數學系 MATLAB 基本功能介紹 范洪源 臺灣師範大學數學系.
Application of Matlab Language
第4章 MATLAB绘图 4.1 MATLAB二维曲线绘图 基本绘图指令 1.plot(Y) 功能:画一条或多条折线图.
Matlab基础介绍 Matlab 简介 Matlab 的安装与启动 Matlab 编程基础 Matlab 在数字信号处理课程中的应用.
黃聰明 國立臺灣師範大學數學系 MATLAB 基本功能介紹 黃聰明 國立臺灣師範大學數學系
第三章 MATLAB图形系统 3.1 图形绘制 3.2 图形标注 3.3 对数和极坐标系中图形绘制 3.4 复杂图形绘制 3.5 坐标轴控制
Introduction to MATLAB
数学建模与数学实验 MATLAB作图.
范洪源 臺灣師範大學數學系 分支宣告與程式設計 范洪源 臺灣師範大學數學系.
§ 9.1常用数学软件简介及MATLAB基础知识
給你講一個故事 ﹕ 獻給所有未婚,將要結婚,和已婚的好朋友!!
MATLAB 程式設計入門篇 動畫製作.
MATLAB 入门教程.
MATLAB 程式設計入門篇 二維平面繪圖 改自張智星講義
三維繪圖 Helix t = 0:pi/50:10*pi; % linspace(0,10*pi,500); figure plot3(sin(t),cos(t),t) grid on axis square Remark: zlabel, view, surf.
本章學習目標 學習三維繪圖的基本技巧 學習peaks() 函數的用法 學習二維與三維等高線圖的繪製 學習三維圖形的編修
張智星 (Roger Jang) 台大資工系 多媒體檢索實驗室
山清水秀的林芝 yy 曾元一
第二节 MATLAB 图形处理 内容: §1 二维图形显示 §2 图形可视编辑工具 §3 三维图形显示 §4 视角变换与三视图
毒災聯合防救 無預警測試.
小梅到麵包店為全家買麵包和果汁當早餐,已知麵包一個25元,果汁一瓶18元;
Presentation transcript:

MATLAB 程式設計入門篇 三維立體繪圖 (part1) 改自張智星講義 jang@cs.nthu.edu.tw http://www.cs.nthu.edu.tw/~jang 清大資工系 多媒體檢索實驗室 2009/12/29

4-1 基本立體繪圖指令 mesh 和 surf: mesh:可畫出立體的「網狀圖」(Mesh Plots) surf:可畫出立體的「曲面圖」(Surface Plots) 範例4-1: plotxyz001.m z = [0 2 1; 3 2 4; 4 4 4; 7 6 8]; mesh(z); grid on; xlabel('X 軸 = column index'); % X 軸的說明文字 ylabel('Y 軸 = row index'); % Y 軸的說明文字 2009/12/29

4-1 基本立體繪圖指令 範例4-1 :plotxyz001.m 2009/12/29

4-1 基本立體繪圖指令 範例4-2 :plotxyz002.m 若要將與曲面對應的 x 座標和 y 座標都一併畫出來,還是可以使用 mesh 指令 z = [0 2 1; 3 2 4; 4 4 4; 7 6 8]; mesh(z); xlabel('X 軸 = column index'); % X 軸的說明文字 ylabel('Y 軸 = row index'); % Y 軸的說明文字 for i=1:size(z,1) for j=1:size(z,2) h=text(j, i, z(i,j), num2str(z(i, j))); % 標示曲面高度 end 2009/12/29

4-1 基本立體繪圖指令 範例4-2 :plotxyz002.m 2009/12/29

4-1 基本立體繪圖指令 範例4-3 :plotxyz011.m meshgrid 的作用是產生 x 及 y (均為向量) 為基準的格子點 (Grid Points),其輸出為 xx 及 yy(均為矩陣),分別代表格子點的 x 座標及 y 座標。 x = 3:6; y = 5:9; [xx, yy] = meshgrid(x, y); % xx 和 yy 都是矩陣 (3,5) (4,5) (5,5) (6,5) (3,6) (4,6) (5,6) (6,6) (3,7) (4,7) (5,7) (6,7) (3,8) (4,8) (5,8) (6,8) (3,9) (4,9) (5,9) (6,9) 2009/12/29 xx(:,1) xx(:,2) xx(:,3) xx(:,4)

4-1 基本立體繪圖指令 範例4-3 :plotxyz011.m x = 3:6; y = 5:9; [xx, yy] = meshgrid(x, y); % xx 和 yy 都是矩陣 zz = xx.*yy; % 計算函數值 zz,也是矩陣 subplot(2,2,1); mesh(xx); title('xx'); axis tight subplot(2,2,2); mesh(yy); title('yy'); axis tight subplot(2,2,3); mesh(xx, yy, zz); title('zz 對 xx 及 yy 作圖'); axis tight colormap(zeros(1,3)); % 以黑色呈現 2009/12/29

4-1 基本立體繪圖指令 範例4-3 :plotxyz011.m 2009/12/29

4-1 基本立體繪圖指令 範例4-4 :plotxyz01.m 使用 linspace 來產生較密集的資料,以便畫出由函數形成的立體網狀圖 x = linspace(-2, 2, 25); % 在 x 軸 [-2,2] 之間取 25 點 y = linspace(-2, 2, 25); % 在 y 軸 [-2,2] 之間取 25 點 [xx, yy] = meshgrid(x, y); % xx 和 yy 都是 25×25 的矩陣 zz = xx.*exp(-xx.^2-yy.^2); % 計算函數值,zz 也是 25×25 的矩陣 mesh(xx, yy, zz); % 畫出立體網狀圖 2009/12/29

4-1 基本立體繪圖指令 範例4-4 :plotxyz01.m 2009/12/29

4-1 基本立體繪圖指令 範例4-5 :plotxyz01.m surf 和 mesh 指令的用法類似 x = linspace(-2, 2, 25); % 在 x 軸 [-2,2] 之間取 25 點 y = linspace(-2, 2, 25); % 在 y 軸 [-2,2] 之間取 25 點 [xx,yy] = meshgrid(x, y); % xx 和 yy 都是 25×25 的矩陣 zz = xx.*exp(-xx.^2-yy.^2); % zz 也是 25×2 的矩陣 surf(xx, yy, zz); % 畫出立體曲面圖 2009/12/29

4-1 基本立體繪圖指令 範例4-5 :plotxyz01.m 2009/12/29

4-1 基本立體繪圖指令 peaks: 為了方便測試立體繪圖,MATLAB 提供了一個 peaks 函數,可產生一個凹凸有致的曲面,包含了三個局部極大點(Local Maxima)及三個局部極小點(Local Minima) 其方程式為: 2009/12/29

4-1 基本立體繪圖指令 畫出此函數的最快方法,即是在 MATLAB 命令視窗直接鍵入 peaks,可得到下列方程式 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) 2009/12/29

4-1 基本立體繪圖指令 peaks的圖形 2009/12/29

4-1 基本立體繪圖指令 meshz: meshz 指令有將曲面加上「圍裙」或「舞台」的效果 範例4-6:plotxyz03.m [x, y, z] = peaks; meshz(x,y,z); axis tight; 2009/12/29

4-1 基本立體繪圖指令 範例4-6:plotxyz03.m 2009/12/29

4-1 基本立體繪圖指令 waterfall: waterfall 指令可在 x 方向或 y 方向產生水流效果 範例4-7:plotxyz04.m [x, y, z] = peaks; waterfall(x,y,z); axis tight; 2009/12/29

4-1 基本立體繪圖指令 範例4-7:plotxyz04.m 2009/12/29

4-1 基本立體繪圖指令 meshc: meshc 可同時畫出網狀圖與「等高線」(Contours) 範例4-8:plotxyz05.m [x, y, z] = peaks; meshc(x, y, z); axis tight; 2009/12/29

4-1 基本立體繪圖指令 範例4-8:plotxyz05.m 2009/12/29

4-1 基本立體繪圖指令 plot3: plot3 指令可畫出三度空間中的曲線 範例4-9:plotxyz06.m t = linspace(0,20*pi, 501); % 在 0 及 20*pi 中間取 501 點 plot3(t.*sin(t), t.*cos(t), t); % 畫出 tsin(t),tcos(t),t 的曲線 2009/12/29

4-1 基本立體繪圖指令 範例4-9:plotxyz06.m 2009/12/29

4-1 基本立體繪圖指令 plot3: 亦可同時畫出兩條三度空間中的曲線 範例4-10:plotxyz07.m t = linspace(0, 10*pi, 501); plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos(t), -t); % 同時畫兩條曲線 2009/12/29

4-1 基本立體繪圖指令 範例4-10:plotxyz07.m 2009/12/29

4-1 基本立體繪圖指令 plot3: 如果輸入引數是三個大小相同的矩陣 x、y、z,那麼 plot3 會依序畫出每個行向量在三度空間所對應的曲線 範例4-11:plotxyz08.m [x, y] = meshgrid(-2:0.1:2); z = y.*exp(-x.^2-y.^2); plot3(x, y, z); 第 i 行 第 i 行 第 i 行 X= ,Y= ,Z= 第i條curve相當於plot3( , , ) 2009/12/29

4-1 基本立體繪圖指令 範例4-11:plotxyz08.m 2009/12/29

4-1 基本立體繪圖指令 整理:基本三維立體繪圖指令的列表 類別 指令 說明 網狀圖 mesh, ezmesh 立體網狀圖 meshc, ezmeshc 網狀圖加上等高線 meshz 網狀圖加上“圍裙”(或“舞臺”) 曲面圖 surf, ezsurf 立體曲面圖 surfc, ezsurfc 曲面圖加上等高線 surfl 曲面圖加上光源 2009/12/29

4-1 基本立體繪圖指令 整理:基本三維立體繪圖指令的列表 類別 指令 說明 曲線圖 plot3, ezplot3 立體曲線圖 低階函數 surface Surf 用到的低階指令 line3 Plot3 用到的低階指令 等高線 contour, ezcontour 平面上的等高線 contour3 空間中的等高線 影像表示 pcolor 在二維平面中以顏色表示曲面的高度 2009/12/29

4-1 基本立體繪圖指令 ezmesh, ezsurf : 範例4-13:plotxyz091.m subplot(2,2,1); ezmesh('sin(x)/x*sin(y)/y'); subplot(2,2,2); ezsurf('sin(x*y)/(x*y)'); subplot(2,2,3); ezmeshc('sin(x)/x*sin(y)/y'); subplot(2,2,4); ezsurfc('sin(x*y)/(x*y)'); 2009/12/29

4-1 基本立體繪圖指令 範例4-13:plotxyz091.m 2009/12/29