Matlab图形属性检查器

和其他语言的绘图不一样的是,Matlab允许我们通过非编程的方式来自定义调整绘图。下面介绍Matlab图形的构成以及几种调整绘图时的常用操作。

图形构成

什么是Figure

当我们使用绘图函数创建图形时,总会弹出一个窗口以显示我们绘制的图形,这整个窗口我们把它叫做Figure或者称为画板(即我们作画需要的载体)。比如像下面的图形就是一个Figure:



尽管在我们进行绘图时,系统为我们给定了一套默认的参数,比如图形的大小,颜色,位置等等,但是这种方式由于缺乏灵活性,不利于我们对图形进行修正比如,若将上面的图形导出则会出现大片的空白区域,后期仍需要进行二次裁剪十分浪费时间,因此我们需要深入了解Figure,以实现我们客制化的需求。

Figure由哪些部分组成

我将Matlab中Figure的最常用组成总结如下:



其中Figure是整个画布,legend是图例显示,axes是我们真正绘图的区域,xlabel,ylabel即x,y轴表示含义,title即图的标题,tick和tick_label为刻度值和在该刻度值上显示的文字。值得注意的是我们在进行绘图时,上面各个部分的位置信息都是参考其上一级的位置信息而言的的。

图形调整

位置调整

位置表示

Matlab中位置通常用向量[left bottom width height]来表示,left表示距离左侧边界的距离,bottom表示距离下边界的距离,width表示图像的宽度,height表示图像的高度。



在表示这些量时有很多单位可以选择,建议选择normalized。

Figure位置调整

在Figure中共有三个位置信息,它们表示的含义大体相近,但亦有所区别。

  • Position 属性是最常用的,用于直接设置图形窗口在屏幕上的位置和大小。
  • OuterPosition 属性则用于获取或设置包括所有装饰元素在内的整个图形窗口的大小和位置。
  • InnerPosition 属性主要用于调整绘图区域的大小和位置,而不考虑窗口的边框、标题栏等装饰元素。

    在实际使用上,我们往往只用设置其中一个就可,实验上来看,Position和OuterPosition似乎没有太大区别。另外Figure的位置信息是参考屏幕左下角的点而言的。

axes位置调整

axes同样有上面上个位置信息,由于Figure是其上一级,因此它的位置信息是参考Figure的左下角而言的。如下图:

其他部分位置调整

对于其他部分的位置而言,大多数都包含了Position信息,此外对于title还有额外的HorizontalAlignment和VertivalAlignment信息(可以设置为left,right和center),当设置为居中时,那么将以居中点来确定到参考点的距离。

坐标轴刻度调整

在我们进行绘图时,有时候我们期望坐标的刻度以日期形式显示,这时候x,y的tick_label就排上用场了。比如设置xtick = [1,2,3,4], xtick_label为['a','b','c','d']那么实际出来的效果就是在刻度为[1,2,3,4]的地方显示a,b,c,d。

如下图所示:

放大指定区域的图形

局部区域放大图的原理很简单,其实就是copy一份一模一样的图像,然后重新设置的新图的xlim和ylim然后对图片放大。

下面展示,设置放大图的全过程。

  • 拷贝一份图像放一起

  • 设置拷贝图像的显示范围(属性检查器->标尺->xlim,ylim)



    这样就基本上完成了图像的放大

  • 将放大图像移动到原图像中,并添加箭头

Matlab绘图(1)通过属性检查器调整绘图的更多相关文章

  1. SOAPUI使用教程-WSDL项目---检查器

    SoapUI Pro添加了许多可用的WSDL消息上下文的检查器. XSD / XML Schema检查器 XML Schema检查器显示当前节点对应的XML模式定义. 下面的屏幕截图显示了在Bing搜 ...

  2. JMeter学习(二十五)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults

    Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager.HTTP Authorization Manager.HTTP Cookie Manager.HTT ...

  3. 【jmeter】HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults

    Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager.HTTP Authorization Manager.HTTP Cookie Manager.HTT ...

  4. python 拼写检查代码(怎样写一个拼写检查器)

    原文:http://norvig.com/spell-correct.html 翻译:http://blog.youxu.info/spell-correct.html 怎样写一个拼写检查器 Pete ...

  5. HTTP属性管理器详解

      1)HTTP Cache Manager 2)HTTP Cookie 管理器 3)HTTP 信息头管理器 4)HTTP 授权管理器 5)HTTP 请求默认值 为什么会有这些http属性的配置元件? ...

  6. H2Engine游戏服务器设计之属性管理器

    游戏服务器设计之属性管理器 游戏中角色拥有的属性值很多,运营多年的游戏,往往会有很多个成长线,每个属性都有可能被N个成长线模块增减数值.举例当角色戴上武器时候hp+100点,卸下武器时HP-100点, ...

  7. HTTP属性管理器 初探

      1)HTTP Cache Manager 2)HTTP Cookie 管理器 3)HTTP 信息头管理器 4)HTTP 授权管理器 5)HTTP 请求默认值 为什么会有这些http属性的配置元件? ...

  8. <转>jmeter(十九)HTTP属性管理器

    本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...

  9. jmeter(十九)HTTP属性管理器

    jmeter是一个开源灵活的接口和性能测试工具,当然也能利用jmeter进行接口自动化测试.在我们利用它进行测试过程中,最常用的sampler大概就是Http Request, 使用这个sampler ...

  10. JMeter学习(二十四)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults(转载)

    转载自 http://www.cnblogs.com/yangxia-test Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager.HTTP Autho ...

随机推荐

  1. CF383C Propagating tree

    题目链接 题目 见链接. 题解 知识点:DFS序,树状数组. 我们需要对子树的不同奇偶层加减,用dfn序可以解决子树问题,但是并不能直接分奇偶. 一种比较麻烦的思路是,将dfn序分成两个序列,一个是偶 ...

  2. C 语言常用头文件解释

    C系统提供了丰富的系统文件,称为库文件,整理一下以后好实用: <stdio.h> 定义了三个变量类型.一些宏和各种函数来执行输入和输出 https://www.runoob.com/cpr ...

  3. MyBatis Interceptor

    MyBatis的拦截器可以用于在以下对象及方法中拦截修改: Executor (update, query, flushStatements, commit, rollback, getTransac ...

  4. look命令

    look命令 look命令用于查询单词,仅需指定欲查询的字首字符串,它会显示所有开头字符串符合该条件的单词. 语法 look [-bdf] [-t char] string [file ...] 参数 ...

  5. Js获取数据类型

    Js获取数据类型 JavaScript有着七种基本类型String.Number.Boolean.Null.Undefined.Symbol.Object,前六种为基本数据类型,Object为引用类型 ...

  6. sentry-cli 的 windows 安装

    项目搭建时,发现在使用高版本 sentry-cli 上传 pdb 文件后会报 404 错误,同事猜测高版本的 sentry-cli 会返回错误的地址,建议我用低版本的试一下 依据教程,我在 windo ...

  7. C++ 线程的学习---线程同步

    因为是学习篇,写下是为了个人的学习与理解.故参考其他文章为多. 为什么需要线程同步? 在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作.更多的情况是一些线程进行某些处理操作,而 ...

  8. redis-cluster 性能调优

    关闭RDB防止fork进程的内存溢出问题 save "" appendonly=yes 防止某个节点挂掉,整个cluster挂掉的问题 cluster-require-full-c ...

  9. 【Azure 应用服务】App Service For Windows 中如何设置代理实现前端静态文件和后端Java Spring Boot Jar包

    问题描述 部署在App Service For Windows 中的网站使用 Java Spring Boot + 静态文件 (浏览器端使用Vue.js 与服务器端Java Spring Boot交互 ...

  10. Jupyter Notebook 遇上 NebulaGraph,可视化探索图数据库

    在之前的<手把手教你用 NebulaGraph AI 全家桶跑图算法>中,除了介绍了 ngai 这个小工具之外,还提到了一件事有了 Jupyter Notebook 插件: https:/ ...