MATLAB

重新认识 MATLAB

应用程序构建、脚本编写和团队软件开发的新工具。更多数据分析、机器学习和深度学习选项。

顺带一提,MATLAB 的速度比以往更快。详细了解一下。

实时编辑器

所创建的脚本不仅可以捕获代码,还可以讲述与人分享的故事。自动化的上下文提示可让您在编程时快速推进,并且将结果与可视化内容和您的代码一起显示。

App Designer

App Designer 让您无需成为专业的软件开发人员,即可创建专业的应用程序。拖放可视化组件来安排应用程序布局,并使用集成编辑器快速编写应用程序的行为。您可以使用 MATLAB Compiler 创建独立的桌面或 Web 应用程序以共享您的应用程序。

数据分析

您有了数据,不要将所有时间花费在为准备分析数据上。使用 MATLAB 中的新工具和功能来导入、清理、筛选和分组数据,并更快地开始分析。

大数据

无需学习大数据编程 — MATLAB 中的 tall 数组可让您使用惯用的代码和语法,即使您的数据集无法装入内存。MATLAB 支持您已在使用的存储系统,包括传统文件系统、SQL 和 NoSQL 数据库以及 Hadoop/HDFS。

性能

MATLAB 运行代码的速度几乎是三年前的两倍。而且不需要对您的代码做出任何更改。

图形

MATLAB 图形系统使创建和自定义绘图变得简单,且新的默认颜色、字体和样式使您的数据更容易解读。浏览新绘图,包括:

团队开发

随着项目规模和复杂程度的增长,MATLAB 提供了支持协作软件开发实践的能力。

硬件支持

MATLAB 可以控制诸如 Arduino 和 Raspberry Pi 这样的流行微控制器,采集网络摄像头中的图像,甚至可以收集智能手机内置传感器中的数据。浏览受支持的硬件:

数据分析

利用 MATLAB,不管您正在处理的是商业数据还是工程数据,您都可以自己做数据科学。无论是部署在传统 IT 平台上应用程序还是在嵌入式平台上应用程序,您都可以随时随地运行分析。

深度学习

MATLAB 使每个人都能进行深度学习,即使非专业人士也不例外。设计您自己的模型、访问最新模型或导入来自 Caffe 的预训练模型。使用 NVIDIA GPU 训练模型。自动生成嵌入式部署的 CUDA 代码。

获取免费试用版

30 天探索触手可及。

准备购买?

获取详细价格和并探索相关产品。


您是学生吗?

获得 MATLAB 和 Simulink 学生版软件。

按版本的新功能

桌面

  • 实时编辑器:使用其他子标题样式组织实时脚本
  • 实时编辑器:使用内部超链接在实时脚本中导航
  • 实时编辑器:以交互方式过滤表格输出,然后将生成的代码添加到实时脚本中
  • 实时编辑器:新建和打开现有实时脚本速度更快
  • 比较工具:合并两个版本的实时脚本或函数
  • 附加功能管理器:安装和管理多个版本的自定义工具箱

语言和编程

  • string 数组:在 MATLAB、Simulink 和 Stateflow 中使用 string 数组
  • 枚举:通过枚举提高了集合运算的性能

数学

  • boundaryshape 函数:通过二维三角剖分创建 polyshape 对象
  • polyshape 对象:创建 polyshape 时,指定何时保持共线点
  • RandStream 对象:使用 ThreefryPhilox 算法生成随机数字
  • GraphPlot 对象:通过字体属性自定义节点和边缘标签

图形

  • 坐标轴交互:通过默认情况下启用的平移、缩放、数据提示和三维旋转来探索数据
  • 坐标轴工具栏:访问和自定义每个轴对象的数据探索工具栏
  • 地理图:在交互式地图上创建线条、散点图和点密度图,并控制地理坐标轴的属性
  • stackedplot 函数:绘制表格或时间表的变量,以便使用通用 x 轴进行比较
  • scatterhistogram 函数:将分组数据可视化为具有边缘直方图的散点图
  • sgtitle 函数:为子图网格创建标题
  • xlineyline 函数:向图中添加垂直或水平线条

数据导入和导出

  • 导入工具:从电子表格导入时可生成改进的代码
  • 基于 Web 的数据:使用 readtable、detectImportOptions、spreadsheetDatastore、imreadimfinfo,从 Amazon Web Services 和 Azure Blob Storage 等基于 Web 的数据源读取
  • write 函数:将各种格式的 tall 数组写入本地或远程位置
  • stlreadstlwrite 函数:读取和写入三角剖分的 STL(立体光刻)文件
  • TabularTextDatastore 对象:从非英语地域导入包含日期和时间的数据

数据分析

  • grouptransform 函数:按组转换表或时间表数据
  • groupsummary 函数:在矩阵上执行组摘要计算
  • tall 数组:写入自定义算法以在 tall 数组上运算
  • tall 数组:更多函数支持对 tall 数组进行运算,包括 conv2、wordcloudgroupsummary
  • rmoutliers 函数:删除数组、表或时间表中的异常值
  • islocalminislocalmax 函数:为峰度计算指定一系列数据
  • 表和时间表元数据:存储每个变量的自定义元数据
  • timetable 数据类型:使用常规时间步长存储行时间时节省内存

应用构建

  • 应用设计工具:在应用设计工具画布上添加和配置日期选择组件
  • uigridlayout 函数:使用网格布局管理器配置应用布局
  • 滚动容器:针对图、面板、选项卡和按钮组容器启用滚动
  • 图交互:使用通过 uifigure 函数创建的图,借助自定义鼠标和键盘交互来创建应用
  • 工具提示:为应用中的 UI 组件创建自定义工具提示
  • 已部署 Web 应用:使用 uigetfileuiputfile 函数,访问已部署 Web 应用中的文件

性能

  • 启动:已提高 MATLAB 启动速度
  • 执行引擎:使用冒号运算符时,索引大数组的性能得到提高
  • 执行引擎:内置函数调用速度加快
  • 实时编辑器:新建和打开现有实时脚本速度更快
  • 枚举:通过枚举改进了集合函数性能

硬件支持

  • MATLAB Online:通过 MATLAB Online 与 Raspberry Pi 硬件板通信
  • iOS 和 Android 传感器:在您的设备没有网络访问权限时获取传感器数据
  • iOS 和 Android 传感器:将传感器日志从设备上传到 MATLAB Drive

高级软件开发

  • Python 接口:在 MATLAB 和 Python 之间传递多维数字或逻辑数组
  • C++ MEX API:使用 C++ API 从 MEX 文件中异步调用 MATLAB
  • 单元测试框架:通过更多插件和更智能的调度并行运行测试
  • 性能测试框架:通过 TestCase.keepMeasuring 方法更准确地测量快速代码的执行时间

有关详细信息,请参阅发行说明

Desktop

  • Live Editor: Create live functions with richly formatted documentation, including equations and images
  • Live Editor: Debug live functions and scripts
  • Live Editor: Add sliders and drop-down lists to control variable values in a live script
  • Live Editor: Sort table data interactively
  • Live Editor: Create a table of contents and add formatted code examples​
  • Live Editor: Select and edit a rectangular area of code
  • Add-Ons Explorer: Browse by category to discover convenient, helpful add-ons

Mathematics

  • graph and digraph Objects: Work with multigraphs that have multiple edges between two nodes
  • GraphPlot Object: Visualize graphs with additional options for 'force', 'force3', and 'circle' layouts
  • polyshape Objects: Analyze polygons with turningdist, nearestvertex, and overlaps functions
  • polybuffer Function: Create buffer around points or lines

Graphics

  • Axes Object: View axes at small size with improved layout, limit selection, and font scaling
  • Axes Object: Map data values to colormap using linear or logarithmic scale
  • Legend Object: Create legends with multiple columns
  • heatmap Function: Zoom and pan data, display data tips, and sort rows and columns interactively
  • geobubble Function: Explore with interactive data tips and a scale bar​ ​

Data Import and Export

  • readtable Function: Specify the number of rows to read from a text file using import options
  • readtable Function: Easily manage prefixes and suffixes from data using import options
  • preview Function: Preview first 8 rows of a table in a file without importing the full table
  • imageDatastore Function: Work with millions of images with improved memory usage and performance
  • VideoReader Function: Read video files faster on all platforms

Data Analysis

  • groupsummary Function: Group and discretize data for summary operations on table and timetable variables
  • Table and Timetable Variables: Add, delete, and rearrange column-oriented variables with the functions addvars, removevars, movevars, splitvars, mergevars, rows2vars, and inner2outer
  • Preallocated Tables and Timetables: Initialize table and timetable variables so that they have specified sizes and data types
  • Regular Timetables: Create regularly spaced timetables using a time step or sampling rate
  • retime and synchronize Functions: Synchronize timetables to a time step or sampling rate that you specify
  • duration Arrays: Create duration arrays from text that represents elapsed times
  • normalize Function: Normalize array, table, and timetable data
  • tall Arrays: Operate on tall arrays with more functions, including smoothdata, find, and isoutlier

App Building

  • App Designer: Create deployed web apps using MATLAB Compiler
  • App Designer: Add and configure tree components on the App Designer canvas
  • App Testing Framework: Author automated tests for App Designer apps
  • Figure Objects: Maximize and minimize figures programmatically
  • uitable Function: Specify data as table array
  • uidatepicker Function: Add date selection controls to apps
  • uiprogressdlg Function: Create modal in-app progress dialog boxes to apps

Performance

  • Startup: Increased speed of MATLAB startup time
  • Execution Engine: Execute tight loops with scalar math faster
  • Execution Engine: Improved performance for common programming patterns

Hardware Support

  • Raspberry Pi: Support for Raspberry Pi Zero W board
  • MATLAB Online: Acquire live images from USB webcams in MATLAB Online

Advanced Software Development

  • Tab Completion: Describe your function syntaxes for custom tab completion and other contextual suggestions
  • Unit Testing Framework: Run tests from the MATLAB Editor toolstrip
  • App Testing Framework: Author automated tests for App Designer apps
  • matlab.net.http Package: Stream data to and from a web service and handle forms and multipart messages
  • C++ MEX Interface: Access MATLAB data and objects easier from C++

See the Release Notes for details.

桌面

  • 实时编辑器:利用针对参数、属性值和备选语法的自动上下文提示来编写 MATLAB 命令​​​​​
  • 实时编辑器:将实时脚本导出为 LaTeX 格式​​​​​​​​​
  • 实时编辑器:在 PDF 输出中显示高分辨率绘图​​​
  • 实时编辑器:水平对齐文本、方程式和图像​​​​​​​​​​​
  • 文档:在 Web 浏览器中使用实时编辑器来打开、编辑和运行 MATLAB 在线文档示例
  • MATLAB Drive:从任意位置存储、访问和管理文件
  • 附加功能管理器:通过启用和禁用附加功能来自定义您的 MATLAB 环境​​​​​​
  • 附加功能管理器:使用排序和搜索更快地找到已安装的附加功能​​​​​​​​​​
  • 工具箱打包:从实时脚本模板为您的工具箱创建快速入门指南​​​​​​​​​​​​​
  • 工具箱打包:在打包时直接在文件交换区中分享您的工具箱​​​​

语言和编程

  • 代码兼容性报告:生成有助于将代码更新到较新 MATLAB 版本的报告​​

数学

  • decomposition 对象:以改进的性能重复求解线性系统
  • lsqminnorm 函数:寻找欠定线性系统的最小范数解
  • dissect 函数:使用嵌套分割排序对稀疏矩阵列重新排序
  • vecnorm 函数:按向量计算数组的范数
  • polyshape 对象:创建、分析和可视化 2D 多边形

图形

  • geobubble 函数:创建交互式地图,使用的气泡大小和颜色随数据值而异
  • wordcloud 函数:根据频率或自定义大小数据显示具有不同大小的文字
  • binscatter 函数:利用动态 bin 大小调整来可视化数据密度
  • Tall 数组支持:使用 plotscatterbinscatter 对超出内存的数据进行可视化
  • heatmap 函数:在热图中对行和列排序以及使用自定义标签
  • bar 函数:控制个别条块颜色

数据导入和导出

  • 自定义数据存储:构建自定义的数据存储
  • datastore 函数:处理存储在 Windows Azure Blob 存储中的数据

数据分析

  • ischange 函数:检测数据中的突变
  • islocalminislocalmax 函数:检测数据中的局部最小值和最大值
  • rescale 函数:将数据缩放到指定的范围
  • tall 数组:使用更多函数对 tall 数组进行操作,包括 fillmissingfiltermedianpolyfitsynchronize
  • timetable 数据容器:使用 VariableContinuity 属性指定 timetable 中的每个变量是包含连续数据还是离散数据

构建应用程序

  • App Designer:使用多种 2D 和 3D 绘图创建应用程序
  • App Designer:从组件库向应用程序添加菜单
  • App Designer:在运行应用程序时指定输入参数
  • App Designer:添加用于应用程序打包和编译的摘要、说明和屏幕快照
  • uitreeuitreenode 函数:在应用程序中创建树和树节点
  • uiconfirm 函数:创建模态应用程序内确认对话框
  • 工具箱打包:在安装工具箱时将 App Designer 应用程序添加到应用程序库
  • MATLAB Online:在 MATLAB Online 中运行 App Designer 应用程序

性能

  • App Designer:加载应用程序速度更快
  • 执行引擎:改进带 AVX2 的 CPU 上的矢量化数学性能​​​
  • 实时编辑器:运行含循环实时脚本的速度更快

硬件支持

  • Arduino:使用低成本蓝牙适配器以无线方式连接到 Arduino 开发板
  • Arduino 设置 UI:通过 USB、蓝牙或 WiFi 与 Arduino 开发板建立连接
  • Arduino 插件检测:插入兼容的 Arduino 开发板时发现可用的 Arduino 支持和示例

高级软件开发

  • 针对 C++ 的 MATLAB Engine API:从 C++ 程序运行 MATLAB 代码,支持面向对象编程和异步执行
  • 针对 C++ 的 MATLAB Engine API:使用 MATLAB Data Array 在 C++ 程序与 MATLAB 之间传递数据
  • Java SE 8:MATLAB 支持,改进了安全性,并且可访问新的 Java 功能​​​
  • MinGW 5.3:MATLAB 支持​​​
  • Microsoft Visual Studio 2017:MATLAB 支持 Microsoft Visual Studio 2017 社区版、专业版和企业版​
  • Python 3.6 版:MATLAB 支持
  • MATLAB Handle 类方法:为事件添加侦听器,而不将侦听器绑定到源对象
  • 单元测试框架:提供 Cobertura 格式的代码覆盖率报告,以改进连续集成工作流程​​​

有关详细信息,请参阅发行说明

桌面

  • 实时编辑器:以交互方式编辑图形,包括标题、标签、图例和其他注释
  • 实时编辑器:在命令和变量键入错误时获取建议提示
  • 实时编辑器:将实时脚本输出复制到其它应用程序
  • 实时编辑器:悬停在变量上方以查看该变量的当前值
  • 附加浏览器:在附加浏览器中找到并安装 GitHub 上托管的文件交换区
  • MATLAB 在线:通过 Web 浏览器访问 MATLAB

语言和编程

  • string 数组:使用双引号创建 string 数组
  • missing 函数:对核心数据类型中缺失的值进行赋值,包括 doubledatetimecategoricalstring 数组
  • issortedrows 函数:确定矩阵和表是否已排序
  • sortsortrows 函数:指定用于对复数进行排序和放入缺失元素的选项
  • issorted 函数:使用单调、严格单调、严格上升和严格下降选项查询排序顺序

图形

  • heatmap 函数:以热图方式实现表或矩阵数据的可视化
  • legend 函数:创建在坐标轴上添加或删除数据时自动更新的图例
  • 分类绘图:在常用绘图函数中使用分类数据,并使用分类标尺定制坐标轴
  • histogram 函数:绘制日期数据和持续时间数据的直方图

数据导入和导出

  • ​datastoretabularTextDatastore 函数:自动检测并返回文本文件中的日期和时间数据​
  • 导入工具:以交互方式导入字符串和分类数组
  • detectImportOptions 函数:控制固定宽度文本文件的导入属性
  • RESTful Web 服务:在 webread、webwrite 和 websave 中支持 PUT 和 DELETE HTTP 方法​​​

数据分析

  • tall 数组:使用多个函数对 tall 数组进行操作,包括 ismembersortconv 和移动统计函数
  • isoutlierfilloutliers 函数:检测和替换数组或表中的异常值
  • smoothdata 函数:使用滤波或本地回归对数组或表中的噪声数据进行平滑处理
  • summary 函数:计算表和时间表中的汇总统计信息和变量信息
  • movmadovprod 函数:计算数组的移动中位绝对偏差和移动乘积
  • bounds 函数:同时确定数组的最小和最大元素
  • fillmissing 函数:使用移动平均或移动中位选项替换数组或表中的缺失数据

生成应用程序

  • App Designer:学习使用交互式教程生成应用程序
  • App Designer:缩放和平移绘图
  • App Designer:配置表列以自动填满表的整个宽度
  • App Designer:使用“首选项”对话框管理常用的设计时设置

性能

  • 执行引擎:改进 MATLAB 对象属性设置的性能
  • save 函数:使用未压缩格式保存 MAT v7.3 文件,以改进在某些存储设备上的性能
  • memoize 函数:缓存函数的结果,以免该函数在使用相同的输入参数被调用时重新运行
  • 脚本:通过降低脚本开销提高脚本性能
  • try, catch

硬件支持

  • Arduino:从 Quadrature Encoder 读取
  • Arduino:通过 WiFi 无线连接到 Arduino MKR1000 开发板
  • iPhone 和 Android 传感器:在 Android 或 iOS 设备上本地记录传感器数据,以备日后进行分析​​​​​

高级软件开发

  • 对象属性:基于类型、大小、形状或其他参数验证对象属性值​​
  • 模拟框架:通过模拟相依组件的行为对部分系统隔离以进行测试
  • 单元测试框架:使用 TestReportPlugin 捕获测试期间生成的屏幕快照和图形​
  • 单元测试框架:使用调试、严格和冗长选项控制 runtests 函数​
  • 性能测试框架:使用 sampleSummary 方法查看测试结果中的统计信息​​

有关详细信息,请参阅发行说明

桌面

  • 实时编辑器:在输出图片中平移、缩放和旋转轴
  • 实时编辑器:使用方程编辑器交互式创建和编辑方程
  • 实时编辑器:使用自动格式化功能快速创建新节和格式文本
  • 命令窗口:查看数组的更新显示,包括指示类、大小和形状的标头
  • 产品试用:使用附加功能资源管理器下载 MathWorks 产品试用版
  • 工具箱打包:包括实时脚本示例,为自定义文档生成 info.xmlhelptoc.xml 模板,以及在安装时修改 Java 类路径

语言和编程

  • 在脚本中定义函数:在脚本中定义本地函数,改进代码重用性和可读性
  • string 数组:高效地操作、比较和存储文本数据
  • timetable 数据容器:使用基于时间的索引和同步管理带时间戳的表格数据
  • timerange 函数:访问 timetable 内指定日期和时间范围内的所有数据
  • vartype 函数:访问某个表格内指定数据类型的所有变量
  • table 数据容器:使用 Variables 属性引用某个表格内兼容类型的所有变量
  • dir 函数:递归搜索文件夹和子文件夹

数学

  • 隐式扩展:将元素级运算和函数应用到数组,维度自动扩展 1 个长度
  • graphdigraph 对象:计算图同构、双连通分量、割点和节点压缩
  • graphdigraph 对象:以 3D 形式使图和网络可视化
  • digraph 对象:使用 flipedge 函数反转有向图中的边缘方向

图形

  • 日期与时间绘图:在常用绘图函数中使用日期时间或持续时间数据,并使用日期时间和持续时间标尺自定义图形
  • polarscatterpolarhistogram 函数:在极坐标中创建散点图和直方图
  • fimplicitfimplicit3 函数:f(x,y) = 0 和 f(x,y,z) = 0 格式的隐式函数绘图
  • 刻度格式设置函数:为轴刻度标签自定义文本、位置、旋转和格式
  • errorbar 函数:创建垂直和水平误差线和控制顶帽宽度
  • plot 函数:使用 MarkerIndices 属性控制标记的位置和频率

数据导入和导出

  • readtable 函数:自动检测并返回文本文件和电子表格文件中的日期和时间数据
  • detectImportOptions 函数:检测文本文件和 Excel 文件的布局,并自定义导入到 readtable
    的选项
  • VideoReader 对象:从 Windows 系统上的 MP4 和 MOV 文件更快速地读取视频帧
  • imageDatastore 函数:读取批量图像,便于在机器学习和计算机视觉应用程序中更快速地处理
  • TallDatastore 对象:高效检索使用 MATLAB tall 数组的 write 函数保存的经预处理和清理后的数据
  • jsondecodejsonencode 函数:将结构化数据编码为 JSON 格式的文本;将 JSON 格式的文本解码为结构化数据

数据分析

  • tall 数组:操作和分析无法存入内存的过大数据
  • 缺失数据函数:使用 ismissingstandardizeMissingfillmissingrmmissing 查找、填充和删除数组或表格中的缺失数据
  • 累积函数:使用 cumsumcummincummax 中的 'omitnan' 忽略 NaN
  • discretize 函数:离散化 datetimeduration 数组,将带时间戳的数据分隔成固定的时间
    间隔
  • 受约束的平移和缩放:在二维和三维图中的单一维度中进行平移或缩放

生成应用程序

  • App Designer:在应用程序中包括常见的二维图,例如 area, bar, contour, histogram, yyaxis 和函数绘图
  • App Designer:在应用程序中为二维图创建图例
  • App Designer:在应用程序中使用 uitable 嵌入表格式显示
  • App Designer:创建可以在多个组件间共享的回调函数
  • App Designer:添加、放置带标签组件并调整其大小,使用从标签派生的名称创建组件

性能

  • 图形显示:使用更少的内存更快速地显示带有大量标记的图形
  • 执行引擎:使用标量运算更快速地执行紧嵌循环
  • 执行引擎:更快地构造对象

硬件支持

  • iPhone 和 Android 传感器:通过 Wi-Fi 或蜂窝网络记录 MathWorks 云端的移动传感器上的数据
  • Arduino:写入移位寄存器
  • Raspberry Pi:生成 PWM 信号,并通过 Raspberry Pi 上的 GPIO 引脚控制伺服驱动电机
  • Raspberry Pi:支持 Raspberry Pi 3 B 型
  • Raspberry Pi:从传感器读取数据,然后写入 Raspberry Pi Sense HAT 上的 LED 矩阵

高级软件开发

  • matlab.net.http 对象:访问具有低层级协议控制的 HTTP 服务
  • 针对 Java 的 MATLAB Engine API:从 Java 程序运行 MATLAB 代码
  • matlab.mixin.SetGet:在调用 set 和 get 时默认允许使用不精确的属性名称
  • 单元测试框架:生成测试运行的 Microsoft Word 或 Adobe PDF 报告
  • 单元和性能测试框架:在基于脚本的测试中使用本地函数改进代码重用性和可读性

有关详细信息,请参阅发行说明

桌面

  • 实时编辑器:创建并运行具有嵌入式输出的实时脚本;添加等式和图像,以增强交互式描述
  • Toolbox:使用 matlab.addons.toolbox 程序包通过编程方式对 MATLAB 自定义工具箱进行打包和安装
  • Tab 自动填充:在选定 MATLAB 函数调用中完成参数名和选项
  • 暂停按钮:暂停执行编辑器的某个程序,并进入调试模式

语言和编程

  • datetime 对象:通过“首选项”面板设置 datetime 对象的默认时区和格式
  • zerosoneseye 函数:创建 logical 数组

数学

  • 移动统计函数:使用 movmeanmovsummovmedianmovmaxmovminmovvarmovstd 函数计算移动统计数据
  • datetimeduration 数组:使用 std 计算标准偏差
  • datetimeduration 数组:使用函数 meanmedianstdsum 中的 'omitnan''omitnat' 忽略 NaN 和 NaT
  • graphdigraph 类:使用中心和最近的节点函数分析图形和网络
  • svds 函数:提高奇异值计算的性能和收敛特性,适用于多种矩阵
  • median 函数:计算中值,具有改进的性能
  • cummincummaxcumprodcumsum 函数:计算累计最小值、最大值、乘积和总和,具有改进的性能

图形

  • polarplot 函数:对极坐标中的数据绘图并修改极坐标轴的属性
  • yyaxis 函数:使用两个 y轴创建图,并单独对每个 y轴进行自定义
  • 图例对象:添加图例标题,并在点击图例项目时创建对高亮绘图的回调
  • histogram2 函数:为双变量柱状图启用数据链接和数据刷
  • 函数绘图:将数学表达式以参数线、曲面图和等位线图的形式表现出来
  • 图形显示:使用大量标记更快地生成图
  • 3-D 平移和缩放:通过改进的平移和缩放行为在 3-D 视图中的轴上浏览数据

生成应用

  • App Designer:使用增强的设计环境和扩展的 UI 组件集构建带有线条图和散点图的 MATLAB 应用

数据导入和导出

  • writetable 函数:速度明显更快地写入到文本文件,尤其适用于大文件
  • readtable 函数:更快地读取 Excel 文件
  • writetable 函数:写入至 Mac 和 Linux 平台上的 Excel 文件
  • spreadsheetDatastore 函数:从一组 Excel 文件中导入和处理数据
  • datastore 函数:使用改善的文件格式检测功能导入 TabularTextDatastore 对象
  • ImageDatastore 对象:使用 Labels 属性指定图像标签并使用 splitEachLabelcountEachLabelshuffle 函数进行处理
  • fileDatastore 函数:为过大而不适合内存的文件集创建自定义数据存储
  • readtable 函数:读取文本文件,可自动检测分隔符、标题行和变量名
  • tabularTextDatastoreimageDatastore 函数:创建对象以导入大文本和图像数据集合

性能

  • 性能测试框架:使用单元测试框架测量 MATLAB 代码性能
  • 图形显示:使用大量标记更快地生成图
  • writetable 函数:速度明显更快地写入到文本文件,尤其适用于大文件
  • readtable 函数:更快地读取 Excel 文件
  • median 函数:计算中值,具有改进的性能
  • cummincummaxcumprodcumsum 函数:计算累计最小值、最大值、乘积和总和,具有改进的性能

硬件支持

  • Raspberry Pi:通过 USB 网络摄像头采集图像
  • Arduino:构建自定义附加程序,以与更多的硬件和软件库连接

高级软件开发

  • 性能测试框架:使用单元测试框架测量 MATLAB 代码性能

有关详细信息,请参阅发行说明

8.5.1 版是版本 2015aSP1 的一部分,修正了一些程序缺陷。

有关详细信息,请参阅发行说明

桌面

  • 附加浏览器:为 MATLAB 增加功能,包括社区创作的工具箱和 MathWorks 工具箱、应用、功能、模型和硬件支持
  • 文档:使用重新设计的“帮助”导航和浏览器风格的键盘快捷方式,更快地查找信息
  • Tab 自动填充:通过纠正大写补全命令
  • 命令建议:在调用帮助命令的过程中键入函数名称出错时可给出更正建议

语言和编程

  • findgroups 和 splitapply 函数:将数据拆分为组并将函数应用至每组数据
  • NaT 函数:创建非时间值数组
  • timezones 函数:显示时区名称列表
  • help 命令:指定一个变量作为 help 命令的输入,而不是指定变量类名称

高级软件开发

  • Python 的 MATLAB 接口:使用 clear classes 命令清除 Python 类定义,在重新加载修订的 Python 类时十分有用
  • Python 的 MATLAB 接口:将 Python 函数的句柄传递给从 MATLAB 调用的其他 Python 函数
  • Python 的 MATLAB 引擎:通过连接到 MATLAB 的一个正在运行的会话,从 Python 调用 MATLAB 函数和对象
  • MEX 编译器支持:使用免费的 MinGW-w64 编译器在 64 位 Windows 上编译 MEX 文件​
  • 单元测试框架:借助 TAP 插件和 JUnit 式 XML​ 插件的诊断功能,改进连续集成工作流程
  • 单元测试框架:借助可以立即报告最终结果并执行系统范围鉴定的插件,自定义测试运行程序​
  • 单元测试框架:并行可用时,使用 runtests​ 函数(带 UseParallel 选项)并行运行测试
  • 单元测试框架:使用新的 FailOnWarningsPlugin 检测和阻止由测试发出的警告

数学

  • graph 和 digraph 类:创建、分析图形和网络,并实现可视化
  • histcounts2 函数:二进制二元数据
  • deg2rad 和 rad2deg 函数:在弧度与度之间转换
  • datetime 数组:使用 interp1 函数内插日期和时间
  • duration 数组:使用 interp1、 eps、 cummax、 cummin、 cumsum、 mod和 rem 函数执行持续时间计算

数据导入和导出

  • Excel 电子表格:利用改进的 xlsread、 xlswrite、 readtable和 writetable 函数的性能,反复读写同一电子表格
  • datastore 函数:从因太大而无法作为 ImageDatastore 存入内存的图像集合中导入数据
  • datastore 函数:借助对使用 TabularTextDatastore 的其他字符编码方案的支持,从文本文件导入数据​
  • VideoReader 对象:从 Mac 上的视频文件更快读取数据流

图形

  • 图形显示:利用可感知 DPI 的 MATLAB 图形,实现 Apple Retina 显示和 Windows 上的高分辨率显示
  • 轴对象:在绘图中设置每个轴的位置以便在原点交叉
  • 数字标尺对象:自定义刻度格式、指数和文本样式,以控制绘图中各轴线的外观
  • histogram2 函数:通过控制箱柜、归一化和显示,绘制二元直方图
  • MATLAB 图表:在条形图、散点图和面积图中使用透明度

GUI 构建

  • UI 显示:为 Apple Retina 显示屏和 Windows 上的高分辨率显示屏创建可感知 DPI 的 UI

性能

  • MATLAB 执行引擎:使用重新设计的架构,程序运行速度更快
  • table 数据类型:使用点括号时,数据访问性能得到提高
  • 分类数组:创建大量类别,提高了内存效率和性能

硬件支持

  • ​Raspberry Pi 2 B 型:使用适用于 Raspberry Pi 硬件的 MATLAB 支持包 从 Raspberry Pi 2 主板采集传感器和图像数据
  • ​BeagleBone Black:使用适用于 BeagleBone Black 硬件的 MATLAB 支持包 从 BeagleBone Black 主板采集传感器和图像数据
  • iOS 传感器:使用适用于 Apple iOS 传感器的 MATLAB 支持包 从 Apple iOS 移动设备采集传感器数据

有关详细信息,请参阅发行说明

桌面

  • 文档:将自定义工具箱的文档集成到MATLAB帮助浏览器
  • 数组大小限制:限制最大数组大小,防止意外创建非常大的矩阵
  • Tab键自动补全:在编辑类定义文件时完成类属性和方法

语言和编程

  • repelem 功能:重复复制数组元素来创建较大的数组

数学

  • 离散化 功能:将数值型数据分组到箱柜或类别
  • 描述性统计:忽略基本统计计算中的 NaN 值,包括 max、 min、 mean、 median、 sum、 var、 std和 cov
  • ismembertol 和 uniquetol 函数:使用公差执行集合比较
  • 随机数:使用双精度、SIMD导向的快速梅森旋转(dSFMT)算法生成随机数

数据导入和导出

  • 数据存储:使用 “file” 选项读取一个完整文件,获得 ReadSize 属性
  • 数据存储:使用Parallel Computing Toolbox,用 partition 函数从数据存储中并行读取数据
  • webwrite 函数:使用HTTP POST方法向RESTful Web服务发送数据
  • webread 和 websave 函数:使用HTTP POST方法从RESTful Web服务请求数据

性能

  • MapReduce:运行 mapreduce 算法 - 在任何支持并行池的计算机群集上,使用 MATLAB Parallel Server
  • 插值函数:采用多线程计算执行更快

硬件支持

  • IP摄像头:从IP摄像头直接获取视频
  • BeagleBone Black硬件:借助BeagleBone Black硬件的MATLAB支持包 访问BeagleBone Black硬件
  • Arduino硬件:借助Arduino硬件的MATLAB支持包 访问Arduino Arduino和其他板

有关详细信息,请参阅发行说明

桌面

  • 通过 Current Folder 浏览器集成 Git 和 Subversion 源控制系统,包括从 Web 托管的存储库(如 GitHub 上的存储库)同步
  • 将自定义 MATLAB 工具箱打包为单个、可安装文件
  • 管理自定义 MATLAB 工具箱的对话框
  • 控制初始工作文件夹的首选项,提供了在文件夹中从上一 MATLAB 会话开始的选项
  • MATLAB 提供了自定进度电子培训

语言和编程

  • 用于日期和时间有效计算、对比和格式化显示的 datetime、duration 和 calendarDuration 数组
  • 命令窗口中语法错误的建议更正
  • 用于在 MATLAB 中使用 Python 函数和对象的 py 包,以及从 Python 调用 MATLAB 的引擎接口
  • 用于访问基于 SOAP 的 Web 服务的 matlab.wsdl.createWSDLClient 函数
  • 编辑 classdef 文件的工作流程改进,包括对现有和新工作区变量的直接影响

数学

  • 用于丢弃数字数据的 histcounts 函数
  • 用于识别最近顶点和包括指定点三角形或四面体的 triangulation 函数 nearestNeighbor 和 pointLocation
  • 通过 interp1 函数和 griddedInterpolant 类内插到 'next' 和 'previous' 邻点的选项
  • 使用 round 函数将数值取整为指定十进制或有效位数的选项
  • 沿一组离散点创建相容边界的 boundary 函数和 alphaShape 类
  • 计算数组累积最小值和最大值的 cummin 和 cummax 函数
  • 逆转 cumsum、cummin、cummax 和 cumprod 函数的累积选项
  • 分类数据的中值和模式计算

数据导入和导出

  • 使用导入工具以及 readtable 和 textscan 函数可以更快速地从文本文件导入数据
  • 使用 readtable 和 textscan 函数将数据导入为 categorical 和 datetime 数组
  • 从文本文件导入数据以及收集无法通过 datastore 进入内存的文本文件
  • 改进了 VideoReader 性能并且能够从视频中的指定时间开始读取
  • 从网络连接的设备和使用基于套接字连接的服务器读取和写入数据的 tcpclient 函数
  • 用于导入包括 JSON、CSV 和图像数据在内的在线数据的 webread 函数

图形

  • 新的 MATLAB 图形外观,改进了清晰度和美学
  • 基于 MATLAB 对象改进了基础设施
  • 旋转轴勾选标签
  • 通过 plot 函数,自动更新 datetime 和 duration 勾选标签
  • 用于绘制直方图的 histogram 函数
  • 用于创建线条动画的 animatedline 函数
  • 显示多语言文本和符号

GUI 构建

  • 利用选项卡式面板创建用户界面的 uitab 和 uitabgroup 组件

性能和大数据

  • 桌面大数据分析可以通过 mapreduce 缩放至 Hadoop
  • 通过 sort 改进了排序分类数据的性能

有关详细信息,请参阅发行说明

桌面

  • 命令历史记录弹出窗口,用于在命令窗口中重新调用、查看、过滤和搜索最近使用的命令
  • MATLAB 比较工具中的合并选项,用于消除文本文件之间的差异
  • 将工作区变量及其值保存到 MATLAB 脚本中

语言和编程

  • 在命令窗口键入用户定义的函数错误时得到建议的更正
  • MEX 编译器设置得以简化,故障排除流程得到改进
  • 为 flipud、fliplr 和 rot90 函数提供多维数组支持
  • circshift 选项,用于在指定维度上操作

数学

  • 提供 isdiag、isbanded、issymmetric、ishermitian、istril、istriu 和 bandwidth 函数,用于测试矩阵结构
  • sylvester 函数,用于对 Sylvester 方程求解
  • eig 函数选项,用于计算左特征向量
  • rand、randi 和 randn 函数选项,用于创建与现有变量类型的数据类型相匹配的随机数数组

数据导入和导出

  • 为预览和采集实时图像和视频提供网络摄像头支持
  • 为控制电动机和执行器等设备及直接通过 MATLAB 采集传感器和摄像头的实时数据提供 Raspberry Pi 硬件支持

性能

  • 用三路输入提升 conv2 函数性能
  • 提升 FIR 和 IIR 的filter 函数性能

有关详细信息,请参阅发行说明