plot函数

plot最简单的是plot(x,y),其中,x,y是一组数据

如果要画出\(y=x^2\)的图像

在Command Window中输入

x =[1 2 3];
y =[4 5 6];
plot(x, y)

回车后弹出一个窗口Figure1,显示着一条直线。这条线实际画时,是先确定(1,4)(2,4)(3,6)这三个关键点,再用直线段把相邻两点连接起来。

但这个图像很粗糙,显然需要点跟多

x=1:0.1:3; % 1 1.1 1.2 ......... 3
y=x.*x;% ......
plot(x,y)

例题 在区间0<=x<=2*pi内,绘制正弦曲线y=sin(x)

其程序为:

x=0:pi/100:2*pi;
y=sin(x);
plot(x,y)

plot函数还可以为plot(x,y1,x,y2,x,y3,…)形式,其功能是以公共向量x为X轴,分别以y1,y2,y3,…为Y轴,在同一幅图内绘制出多条曲线。

图形标记

在绘制图形的同时,可以对图形加上一些说明,如图形名称、图形某一部分的含义、坐标说明等,将这些操作称为添加图形标记。

title('加图形标题');
xlabel('加X轴标记');
ylabel('加Y轴标记');

给图形加图例命令为legend。该命令把图例放置在图形空白处,用户还可以通过鼠标移动图例,将其放到希望的位置。

格式:legend('图例说明‘,'图例说明')

例题 为正弦、余弦曲线增加图例,其程序为:

x=0:pi/100:2*pi;
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2, '--');
legend('sin(x)','cos(x)');

设定坐标轴

用户若对坐标系统不满意,可利用axis命令对其重新设定。

axis([xmin xmax ymin ymax]) %设定最大和最小值
axis (’auto’) %将坐标系统返回到自动缺省状态
axis (’square’) %将当前图形设置为方形
axis (’equal’) %两个坐标因子设成相等
axis (’off’) %关闭坐标系统
axis (’on’) %显示坐标系统

subplot 函数

定义:subplot(m,n,p)

该命令将当前图形窗口分成m×n个绘图区,即每行n个,共m行,区号按行优先编号,且选定第p个区为当前活动区

在一个图形窗口中同时绘制正弦、余弦、正切、余切曲线。

x=linspace(0,2*pi,60);
y=sin(x);
z=cos(x);
t=sin(x)./(cos(x)+eps); %eps为系统内部常数
ct=cos(x)./(sin(x)+eps);
subplot(2,2,1); %分成2×2区域且指定1号为活动区
plot(x,y);
title('sin(x)');
axis ([0 2*pi -1 1]);
subplot(2,2,2);
plot(x,z);
title('cos(x)');
axis ([0 2*pi -1 1]);
subplot(2,2,3);
plot(x,t);
title('tangent(x)');
axis ([0 2*pi -40 40]);
subplot(2,2,4);
plot(x,ct);
title('cotangent(x)');
axis ([0 2*pi -40 40]);

subplot(2,2,[3,4])

可以把图形显示到第三和第四个区域中

figure 命令

需要建立多个图形窗口,绘制并保持每一个窗口的图形,可以使用figure命令。

每执行一次figure命令,就创建一个新的图形窗口,该窗口自动为活动窗口,若需要还可以返回该窗口的识别号码,称该号码为句柄。句柄显示在图形窗口的标题栏中,即图形窗口标题。用户可通过句柄激活或关闭某图形窗口,而axis、xlabel、title等许多命令也只对活动窗口有效。

重新绘制上例4个图形,程序变变为:

x=linspace(0,2*pi,60);
y=sin(x);
z=cos(x);
t=sin(x)./(cos(x)+eps);
ct=cos(x)./(sin(x)+eps);
H1=figure; %创建新窗口并返回句柄到变量H1
plot(x,y); %绘制图形并设置有关属性
title('sin(x)');
axis ([0 2*pi -1 1]);
H2=figure; %创建第二个窗口并返回句柄到变量H2
plot(x,z); %绘制图形并设置有关属性
title('cos(x)');
axis ([0 2*pi -1 1]);
H3=figure; %同上
plot(x,t);
title('tangent(x)');
axis ([0 2*pi -40 40]);
H4=figure; %同上
plot(x,ct);
title('cotangent(x)');
axis ([0 2*pi -40 40]);

hold命令

若在已存在图形窗口中用plot命令继续添加新的图形内容,可使用图形保持命令hold。发出命令hold on后,再执行plot命令,在保持原有图形或曲线的基础上,添加新绘制的图形。

阅读如下程序:
x=linspace(0,2*pi,60);
y=sin(x);
z=cos(x);
plot(x,y,'b'); %绘制正弦曲线
hold on; %设置图形保持状态
plot(x,z,'g'); %保持正弦曲线同时绘制余弦曲线
axis ([0 2*pi -1 1]);
legend('cos','sin');
hold off %关闭图形保持

Matlab 画图1的更多相关文章

  1. Matlab画图,坐标轴范围设置和间隔设置

    在Matlab画图的时候,系统默认的坐标轴范围以及间隔有时候并不是很合适,如何根据自己的要求来显示呢,Set语句就可以帮忙咯!! 1. set(gca,'xtick',0:100:2500)      ...

  2. Matlab画图-非常具体,非常全面

    Matlab画图 强大的画图功能是Matlab的特点之中的一个,Matlab提供了一系列的画图函数,用户不须要过多的考虑画图的细节,仅仅须要给出一些基本參数就能得到所需图形,这类函数称为高层画图函数. ...

  3. 设置 matlab 画图格式

    1:设置 matlab 画图格式 clear;clc; % load("array.mat"); % Bestallarray=array; % rllofcircle(Besta ...

  4. 如何解决 Matlab 画图时中文显示乱码的问题?

    使用的是win10系统,从前几个月某一天,我的matlab的figure里的中文都变成了口口.很是郁闷,还以为是动到了什么配置引起的. 前几天更新了matlab 2018b,发现还有这个问题.就觉得不 ...

  5. matlab 画图进阶

    matlab 画图进阶 applications of matlab in engineering 图表类型的选择 first:advanced 2d plots special plots logl ...

  6. matlab 画图技巧

    基本画图工具:matlab 画图中线型及颜色设置 matlab中坐标轴设置技巧 **Matlab中的坐标轴设置技巧**    axisoff;      %去掉坐标轴  axistight;      ...

  7. 20140513 matlab画图

    1.matlab画图 x1=[1.00E-06,2.00E-06,4.00E-06,9.00E-06,2.00E-05,4.00E-05,8.00E-05,2.00E-04,4.00E-04,7.00 ...

  8. matlab画图函数plot()/set/legend

    简单plot()/legend/XY轴范围axis 除了坐标轴信息外还可以添加其它的信息,如所画曲线的信息等:测试代码如下 x=0:pi/20:2*pi; y1=sin(x); y2=cos(x); ...

  9. MATLAB画图

    画图代码 clear % http://www.peteryu.ca/tutorials/matlab/visualize_decision_boundaries % load RankData % ...

  10. linux tomcat部署含有matlab画图打包的java web程序

    首先说下问题:matlab可以把相关算法代码打包成jar文件共java调用,本例使用的jar文件的作用是画图并保存,然后部署在linux的tomcat中进行发布.这里出现了一个问题,具体如下:linu ...

随机推荐

  1. 上午小测1 B.序列 哈希表+数学

    题目描述 \(EZ\) 每周一都要举行升旗仪式,国旗班会站成一整列整齐地向前行进. 郭神摄像师想要选取其中一段照下来.他想让这一段中每个人的身高成等比数列,展示出最萌身高差.但他发现这个太难办到了.于 ...

  2. 史上最全的Kuberenetes 常用命令手册

    1.0 k8s 集群状态检查 # 查看集群信息 kubectl cluster-info systemctl status kube-apiserver systemctl status kubele ...

  3. audioread.NoBackendError

    audioread.NoBackendError 起因 使用以下代码读取音频文件时: # !/usr/bin/python # -*- coding: utf-8 -*- ""&q ...

  4. .NET Core如何进行请求转发?

    前言 冒个泡,近日,有关注我公众号的小伙伴私信我,遇到一个问题搞了很久没解决,此问题具有参考意义,这里跟大家分享下,希望对后续可能有需要的你能有所参考和帮助. 请求转发问题 内网环境跟外网隔离,现在外 ...

  5. Fira Code字体安装与配置

    俗话说,工欲善其事,必先利其器.算法固然重要,但真正实践也很重要. 一个字体的好看程度,直接决定了写代码和看代码的心情.比如这样: 代码1: #include <iostream> #in ...

  6. c语言博客作业——顺序结构,分支结构

    1.PTA截图 2.本章学习总结 2.1学习内容总结 数据的输入和输出:%d表示输入输出整数 %.lf表示输入浮点数 %.nf表示输出结果保留n位小数 if-else的分支结构可以有限个分类情况进行处 ...

  7. 在嵌入式设备中实现webrtc的第三种方式③

    本系列的最后一篇,讲解收发音视频数据. 贴出最终效果: 其实很简单,直接调用writeFrame即可,如下图: 当然,这是部分代码,完整代码在下面,展开可见: 1 #include "com ...

  8. AQS源码深入分析之条件队列-你知道Java中的阻塞队列是如何实现的吗?

    本文基于JDK-8u261源码分析 1 简介 因为CLH队列中的线程,什么线程获取到锁,什么线程进入队列排队,什么线程释放锁,这些都是不受我们控制的.所以条件队列的出现为我们提供了主动式地.只有满足指 ...

  9. C#练习题 if

    提示用户输入用户名,然后再提示输入密码,如果用户名是"admin"并且密码是"888888",则提示正确,否则,如果用户名不是admin还提示用户用户名不存在, ...

  10. 3、编程语言与Python介绍

    一 引子 基于上一章所学,有了计算机硬件,再在硬件之上安装好操作系统,我们就有了一个应用程序的运行平台,我们接下来的任务就是学习如何使用某款编程语言来开发应用程序. 本章的主题是先了解一下编程语言,然 ...