【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

时间: 2024-12-17 10:12:55

【Matlab编程】matlab 画图的相关文章

【Matlab编程】哈夫曼编码的Matlab实现

       在前年暑假的时候,用C实现了哈夫曼编译码的功能,见文章<哈夫曼树及编译码>.不过在通信仿真中,经常要使用到Matlab编程,所以为了方便起见,这里用Matlab实现的哈夫曼编码的功能.至于哈夫曼编译码的基本原理,我们可以参考之前的文章<哈夫曼树及编译码>,里面有详细的说明及图解过程.下面直接给出具体的Matlab实现的哈夫曼编码函数,由于程序中注释还算比较详细,在此就不予与说明: function [ h,e ] = Huffman_code( p ) %p为概率分布

《MATLAB/Simulink系统仿真超级学习手册》——2.7 MATLAB编程实例

2.7 MATLAB编程实例 MATLAB/Simulink系统仿真超级学习手册 MATLAB强大的运算功能和图形功能,是实现各领域的编程仿真的有力工具.本节将综合本章所讲的内容介绍MATLAB的一些编程实例,使读者对MATLAB语言的应用有一些基本的了解. 2.7.1 汉诺塔问题 Hanoi(汉诺)塔问题,是一个古典的数学问题,是一个用递归方法解题的典型例子.问题是这样的:古代有一个梵塔,塔内有3个座A.B.C,开始时A座上有n个盘子,盘子大小不等,大的在上,小的在下如图2-35所示. 现在,

全相位FFT matlab编程实现

问题描述 全相位FFT matlab编程实现 求大神指教!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>&

《MATLAB/Simulink系统仿真超级学习手册》——第2章 MATLAB编程基础 2.1 MATLAB工作环境

第2章 MATLAB编程基础 本书使用的MATLAB版本为MATLAB R.本章将较全面地介绍MATLAB正常运行的基本流程以及编程基础与技巧,帮助读者在领略MATLAB非凡能力的同时比较轻松地跨过MATLAB门槛,为后面学习MATLAB工具箱Simulink打下坚实的基础. 2.1 MATLAB工作环境 MATLAB/Simulink系统仿真超级学习手册 MATLAB提供了全新的工作环境,了解并熟悉该环境是使用MATLAB的基础.下面将介绍MATLAB主界面(包括工具栏.命令窗口等).文本编辑

运筹学最小费用最大流,MATLAB编程

问题描述 运筹学最小费用最大流,MATLAB编程 汽车生产 Fordco公司在底特律和达拉斯生产汽车.底特律的工厂最多可以生产6500辆汽车,达拉斯的工厂最多可以生产6000辆汽车.生产一辆汽车的成本在底特律是2000美元,在达拉斯是1800美元.汽车必须运输到3个城市.城市1必须收到5000辆汽车,城市2必须收到4000辆汽车,城市3必须收到3000辆汽车.下表给出了把一辆汽车从每家工厂运输到每个城市的运输成本.从给定的工厂到给定的城市最多只能运送3000辆汽车.表述一个可以使满足需求的成本最

Matlab编程基础

原文:Matlab编程基础   平台:Win7 64 bit,Matlab R2014a(8.3)   "Matlab"是"Matrix Laboratory" 的缩写,中文"矩阵实验室",是强大的数学工具.本文侧重于Matlab的编程语言侧面,讲述Matlab的基本语法,以及用Matlab语言进行程序设计.值得一提的是,Matlab从R2014a版本开始支持中文语言了!   1.基本概念 Matlab默认启动后界面: Matlab有关的文件后缀

贝叶斯回归的matlab编程问题

问题描述 贝叶斯回归的matlab编程问题 请问各位大神,贝叶斯回归的matlab程序怎么编写啊?中间的MH算法如何实现 解决方案 贝叶斯回归的程序google下有千千万万.你不会可以找一些参考下. 解决方案二: 顶一个,我也不会....

matlab 矩阵-Matlab中的一段编程?

问题描述 Matlab中的一段编程? matlab中假如知道了数组数据的起始.最后元素的位置和值,如何把这两个元素之间的所有元素表示在新的数组矩阵中? 解决方案 matlab C++ 编程 解决方案二: 相当于提取数组的一部分,循环复制就可以了. 解决方案三: 感觉你在用C语言的知识来描述matlab. 在matlab中,对数组(应该说是矩阵或者向量)的赋值和复制真的超容易. 给一小段代码好了: A = [1 2 3 4 5 6]; %Given a 1*6 matrix(can be seen

【Matlab编程】Matlab高效编程技巧

1.默认状态下,matlab显示精度是short型,而默认的计算精度是double型,并且显示精度与计算精度没有关系.2. 一只失明的猫的问题:注意方法! 3.给数组预分配空间是基本的高效编程准则之一.如果不预先分配内存具体的动态扩充数组内存的实现方式如下: 如果预分配空间,则只将新添加的值放入连续的内存中,而不会将整个数组重新分配空间. 4.matlab也可以使用window命令,只需要在系统命令前加!或者dos:例如!shutdown -s 会关闭电脑,这样可以想到,我们可以用matlab做