【Matlab编程】matlab 画图
1. 不用截图工具就可以将图保存成图像格式,并且没有背景颜色:saveas(gcf
,’outputname’,’png/jpg’),第三项省略时默认为fig.m文件
2. 计算形如(-1)^2/3,应该是默认先算(-1)^(1/3),plot的时候命令窗会警告略去了虚部, 为了避免不必要的麻烦((-1)^2)^1/3这样写,例子如下:这个是代码
clear
clc
subplot(1,2,1);
ezplot('x^2+(y-(x^2)^(1/3))^2-1',[-2,2]);
subplot(1,2,2)
ezplot('x^2+(y-x^(2/3))^2-1',[-2,2]);
3. 获取图片纵轴刻度间隔:b=get(gca,'ytick'),y_tick=b(2)-b(1)
4. excel中有三列数据,第一列是横坐标,第二列是纵坐标,第三列是所要画图的点的颜色深浅,第三列的值只有一个,但是如果表示成color,需要三个值,如[0
1 0]表示纯绿色。我在程序中用的是绿色的深浅,你也可以改成别的如红色、蓝色等。Plot(x,y,’*’,’color’,[0 z(i) 0])
5. 画出来的总是实线穿过了这些小正方形,标识符,能不能设置成不穿过小正方形markerfacecolor 改成和你的背景颜色一样。plot(0,0,'-b^','visible','off');
6. 原点在右侧:set(gca,'XDir','rev')
7. 将第一个图和第三个图合并为一个图subplot(2,2,[1
3])
subplot(2,2,2)
subplot(2,2,4)
8. Ezplot应该写成函数式fplot可以写成等式,例如:ezplot('exp(x)-3*x^2'),不要写=0
9. 画图纵坐标全部显示为分数(当然这个可以直接在图像上修改):set(gca,'XTickLabel',{'1/2','1/5','1/10','1/15','1/20'})
10.ezplot()简易绘图函数,每次绘图的时候会自动清空当前坐标系
,因此不支持hold on函数。例如:ezplot('x^2',[-1,0]);
hold on
ezplot('x^2+1',[0,1]);可以修改为:f=@(x)x.^2.*(x>=-1&x<=0)+(x.^2+1).*(x>=0&x<=1);
11.把colorbar的标度变成log型:clear,clc
[x,y] = meshgrid(0:.1:10);
z = 10.^((x-5).^2+(y-5).^2);
contourf(x,y,log10(z))
h = colorbar;
l = get(h,'yticklabel');
set(h,'yticklabel','');
t = arrayfun(@(i)['10^{' l(i,:) '}'],1:size(l,1),'un',false);
text(2.5*ones(size(l,1),1),get(h,'ytick'),t,'parent',h)
12. 画立体心形:ezsurf('5-sqrt(1-x^2-(y-abs(x))^2)*cos(30*(1-x^2-(y-abs(x))^2))',[-1,1,-1,2],100)
13.将横纵坐标改为天数、日期、年份等等,简便的方法就是直接在图形窗口进行可视化修改。如果画的图比较多,可以利用XTickLabel等相关程序语句编写。
14.坐标的标签:set(gca,'XTick',-pi:pi/2:pi)
set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})
15.用imagesc函数画图时,出来的图y轴坐标都是反的,解决办法:axis
xy
16.画五角星:n=1:2:11;x=sin(0.4*n*pi);y=cos(0.4*n*pi);plot(x,y);axis([-1.5,1.5,-1.5,1.5]);axis
square
【Matlab编程】matlab 画图的更多相关文章
- Matlab编程基础
平台:Win7 64 bit,Matlab R2014a(8.3) “Matlab”是“Matrix Laboratory” 的缩写,中文“矩阵实验室”,是强大的数学工具.本文侧重于Matlab的编程 ...
- MATLAB 编程风格指南及注意事项
MATLAB编程风格指南Richard Johnson 著Genial 译MATLAB 编程风格指南Richard JohnsonVersion 1.5,Oct. 2002版权: Datatool 所 ...
- 【Matlab编程】哈夫曼编码的Matlab实现
在前年暑假的时候,用C实现了哈夫曼编译码的功能,见文章<哈夫曼树及编译码>.不过在通信仿真中,经常要使用到Matlab编程,所以为了方便起见,这里用Matlab实现的哈夫曼编码的功能.至于 ...
- matlab和c++混合编程---matlab和vs的环境配置问题及方法和步骤(转载)
matlab和c++混合编程---方法和步骤 matlab和c++混合编程---matlab和vs的环境配置问题 摘要:Matlab具有很强的数值计算和分析等能力,而C/C++是目前最为流行的高级程序 ...
- 一些matlab教程资源收藏,使用matlab编程的人还是挺多的
Matlab教程专题资源免费下载整理合集收藏 <MATLAB从入门到精通>高清文字版[PDF] 103.9MB 简体中文 <矩阵实验室>(Mathworks.Matlab.R2 ...
- MATLAB编程技巧
[摘要] MATLAB是一种科学计算语言,和C.Fortran等高级语言相类似,能方便的实现程序控制.以下介绍一点matlab编程的技巧. 嵌套计算 程序执行的速度取决于调用的子程序的个数和算法实现. ...
- Matlab随笔之画图函数总结
原文:Matlab随笔之画图函数总结 MATLAB函数画图 MATLAB不但擅长於矩阵相关的数值运算,也适合用在各种科学目视表示(Scientific visualization).本节将介绍MATL ...
- PID各环节的意义和功能,自带PID的matlab编程实例
这是PID的标准形式包括比例/积分/微分三部分,e为偏差 下面我们分析三个环节的作用,设:当前系统状态A,目标状态B, e=B-A,初始状态e>0 (以下是个人的理解,欢迎读者评论) 1 比例环 ...
- 58 matlab 编程
0 引言 matlab中有些东西记录一下 1 matlab coder matlab命令行窗口输入: coder 回车即可打开matlab coder 窗口.接着,matlab将引导你把matlab格 ...
- 数学建模python matlab 编程(椭圆声学原理画图证明,解析几何)
证明,在椭圆形的音乐厅内,从一个椭圆的一个焦点发出声音,则另一个焦点听到的声音是最大的. 分析:证明,从椭圆的一个焦点任意发射的直线经过反射后,并经过另一个焦点. 画图,过一个焦 ...
随机推荐
- 微信小程序基础之交互操作控件
好久没有写关于微信小程序的文章了,今天简单的发表一篇,内容比较简单,包括:ActionSheet上拉菜单.AlertAction提示框.SuccessAction完成框.LoadingAction加载 ...
- 关于在页面中针对不同版本的IE浏览器实现不同的JS或者CSS样式
一般会用到<!--[if IE]>这里是正常的html代码<![endif]--> 条件注释只能在windows Internet Explorer(以下简称IE)下使用,因此 ...
- 程序员的自我修养-----Java开发的必须知道的几个注意点
1. 将一些需要变动的配置写在属性文件中 比如,没有把一些需要并发执行时使用的线程数设置成可在属性文件中配置.那么你的程序无论在DEV环境中,还是TEST环境中,都可以顺畅无阻地运行,但是一旦部署在P ...
- Asp.net 在刷新或提交页面后保持滚动条的位置
网页内容在较长时,每次回传刷新页面或提交网页时都会定位到最顶端,非常不利于用户交互. 将Page.MaintainScrollPositionOnPostBack属性值设置为true即可实现刷新后保持 ...
- Android中Socket通信之TCP与UDP传输原理
一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时 ...
- 最简单的基于DirectShow的示例:视频播放器自定义版
===================================================== 最简单的基于DirectShow的示例文章列表: 最简单的基于DirectShow的示例:视 ...
- android开发之this.finish()的使用
在一个Activity用完之后应该将之finish掉,但是,之前在学校里自己摸索着开发时并没有太注意这个问题,因为activity无论是否finish掉对功能的影响貌似都不是那么明显(这是读书时候的观 ...
- UNIX网络编程——客户/服务器程序设计示范(八)
TCP预先创建线程服务器程序,主线程统一accept 最后一个使用线程的服务器程序设计示范是在程序启动阶段创建一个线程池之后只让主线程调用accept并把每个客户连接传递给池中某个可用线程. ...
- 使用FMDB多线程访问数据库,及database is locked的问题
每日更新关注:http://weibo.com/hanjunqiang 新浪微博 今天终于解决了多线程同时访问数据库时,报数据库锁定的问题,错误信息是: Unknown error finalizi ...
- 手动开发动态资源之servlet初步
1.1 静态资源和动态资源的区别 静态资源:当用户多次访问这个资源,资源的源代码永远不会改变的资源. 动态资源:当用户多次访问这个资源,资源的源代码可能会发送改变. 1.2动态资源的开发技术 Serv ...