MATLAB

The Language of Technical Computing

MATLAB Graphics

MATLAB R2014b introduces a new MATLAB graphics system. New default colors, fonts, and styles make your data easier to interpret. Anti-aliased fonts and lines provide smoother text and graphics. Graphics objects are easier to use – you can display common properties in the command window, and objects support familiar structure-like syntax for changing property values. Many other new features have been added as well.

Learn more

New Look for MATLAB Graphics

Big Data in MATLAB

Big Data Capabilities

New features and performance improvements target working with big data. The datastore function enables you to easily and efficiently format and import data into your desktop from files – and collections of files – that don’t fit into memory. mapreduce is a programming technique that lets you analyze data sets that do not fit into your computer's memory. These capabilities also scale for use in processing data on Hadoop.

Learn more about the full range of MATLAB tools for big data

Dates and Time

Data types (datetime, duration, and calendarDuration) are available for representing dates and times. They provide both memory-efficient computations and comparisons, as well as formatted displays. Data can be imported directly as datetime arrays using readtable, textscan, and Import Tool. Options are available for managing time zones (including Daylight Saving Time), as well as locale-specific information such as month and day names.

Learn more

Git and Subversion Source Control Integration

Integration with the popular Git and Subversion source control systems helps keep your code under control, making it easier to build and share custom MATLAB toolboxes. Host your toolbox on GitHub to collaborate with others, and list it on File Exchange on MATLAB Central to make it available to the worldwide MATLAB community.

Learn more

Custom Toolbox Packaging

Share your custom toolboxes by packaging each into its own single, installable file. View details and manage your downloaded toolboxes with the Manage Custom Toolboxes dialog box.

Learn more

Hardware Support

New support for Arduino and LEGO MINDSTORMS EV3 hardware and Android sensors make it easier to connect MATLAB to hardware.

Learn more

Data Import and Export

Performance improvements enable you to import data more quickly from text files, and you can now import data directly as categorical and datetime arrays. You can access online data (including JSON CSV, and image data), and read and write data from network-connected devices and servers.

Learn more

Learn more about new self-paced eLearning for MATLAB

Access free tutorials from within the MATLAB environment.

R2014b (Version 8.4) - Released 2 Oct 2014

See the Release Notes for details.

Previous Releases

R2014a (Version 8.3) - 6 Mar 2014

Desktop

  • Pop-up Command History for recalling, viewing, filtering, and searching recently used commands in the Command Window
  • Merge option in MATLAB Comparison Tool for resolving differences between text files
  • Saving workspace variables and their values to a MATLAB script

Language and Programming

  • Suggested corrections for mistyped, user-defined functions in the Command Window
  • Streamlined MEX compiler setup and improved troubleshooting
  • Multidimensional array support for flipudfliplr, and rot90 functions
  • Option for circshift to operate on a specified dimension

Mathematics

  • isdiagisbandedissymmetricishermitianistrilistriu, and bandwidth functions for testing matrix structure
  • sylvester function for solving the Sylvester equation
  • Option for eig function for computing left eigenvectors
  • Option for randrandi, and randn functions for creating arrays of random numbers that match data type of an existing variable

Data Import and Export

  • Webcam support for previewing and acquiring live images and video
  • Raspberry Pi hardware support for controlling devices such as motors and actuators, and for capturing live data from sensors and cameras directly from MATLAB

Performance

  • conv2 function performance improvements with three inputs
  • filter function performance improvements for FIR and IIR

See the Release Notes for details.

R2013b (Version 8.2) - 5 Sep 2013

Language and Programming

  • table data container for managing, sorting, and filtering mixed-type tabular data
  • categorical array for ordered and unordered categorical data
  • timeit function for robust time estimates of function execution
  • localfunctions function for getting handles to all local functions in a file
  • Functions for writing, executing, and verifying tests using the matlab.unittest testing framework without creating custom classes
  • matlab.mixin.CustomDisplay utility class to write custom display methods
  • flip function, a faster and more memory efficient alternative to flipdim for flipping arrays and vectors

Desktop

  • Improved viewing and editing of one-dimensional structure arrays in the Variables editor
  • Improved management of a large number of open files, figures, and documentation pages
  • Expand all option for opening collapsed sections in documentation pages for printing and in-page searching
  • Java integration updated to version 7, providing access to new Java features and bug fixes
  • Bundling of Java on Mac, removing dependency on Apple supplied Java runtime

Graphics

  • Mac support for copying figures in vector formats to other applications

GUI Building

  • Custom icons for MATLAB apps you create

Performance

  • repmat with numeric, char, and logical types
  • Linear algebra functions on computers with new AMD processors

See the Release Notes for details.

R2013a (Version 8.1) - 7 Mar 2013

Desktop

  • Option to add separators between controls in the quick access toolbar
  • Additional icon choices, auto-scaled thumbnails, and text-formatting options for customizing descriptions of MATLAB apps
  • Left-aligned table of contents for navigating in the Help browser and online Documentation Center

Language and Programming

  • matlab.unittest package, an xUnit-style testing framework for the MATLAB language that allows writing and running unit tests and analyzing test results
  • strsplit and strjoin functions for splitting and joining strings

Mathematics

  • scatteredInterpolant and griddedInterpolant support for extrapolation
  • Syntax for ones, zeros, and other functions for creating arrays that match attributes of an existing variable
  • Integer type support for prod, cumsum, cumprod, median, mode, and other number theory functions

Data Import and Export

  • Reading and writing indexed and grayscale AVI files with VideoReader and VideoWriter objects
  • Writing MPEG-4 H.264 files on Mac with VideoWriter object
  • Tiff object improvements for reading and writing RGB-class TIFF images

Performance

  • fft function performance improvements on computers with new Intel and AMD processors
  • permute function performance Improvements for 3-D and higher dimensional arrays

See the Release Notes for details.

R2012b (Version 8.0) - 11 Sep 2012

Desktop

  • Single-file application packaging (2:58) as a MATLAB App Installer file for inclusion in the apps gallery
  • Suggested corrections for mistyped functions and variables (2:11) in the Command Window
  • Toolstrip that replaces menus and toolbars in MATLAB Desktop
  • Apps gallery that presents apps from the MATLAB product family
  • Single-file application packaging as a MATLAB App Installer file for inclusion in the apps gallery
  • Redesigned Help with improved browsing, searching, and filtering
  • Viewing of multiple documentation pages simultaneously with tabbed browsing
  • Suggested corrections for mistyped functions and variables in the Command Window
  • Full-screen view mode on Mac operating systems

Language and Programming

  • Abstract attribute for declaring MATLAB classes as abstract
  • Diagnostic message improvements when attempting to create an instance of an abstract class

Mathematics

  • Performance improvements and multithreading for airy, psi, and Bessel functions
  • ddensd function that solves delay differential equations of neutral type with state-dependent delays

Data Import and Export

  • Data import from delimited and fixed-width text files using Import Tool
  • Single-step import of numbers, text, and dates as column vectors from a spreadsheet with Import Tool
  • audioread and audioinfo functions for reading MP3, MPEG-4 AAC, WAVE, and other audio files
  • audiowrite function for writing MPEG-4 AAC, WAVE, and other audio files
  • Reading and writing of BigTIFF image files larger than 4 GB
  • Reading of XLSM, XLTX, and XLTM files on all platforms with xlsread function

See the Release Notes for details.

R2012a (Version 7.14) - 1 Mar 2012

Development Environment

  • Sorting and transposing matrices and selecting noncontiguous parts of a matrix in the
    Variable Editor (2:17)
  • Text markup option to enable syntax highlighting (2:05) for commented MATLAB code in published scripts
  • Improved rendering of HTML in the MATLAB Web Browser, especially on 64-bit Windows

Language and Programming

  • List of allowed classes to control access to class properties, methods, and events
  • List of allowed classes to control subclassing of a class using the AllowedSubClasses attribute

Mathematics

  • Numerical integration functions (integral, integral2, integral3) with additional algorithms, options, and improper integrals
  • Improved performance of arithmetic operators and other basic math functions for integer, single, and double data types
  • Improved performance of interpolation functions: interp2, interp3, and intern

File I/O and External Interfacing

  • Reading of Excel® .xlsx files on Mac® and Linux® with xlsread, including the ability to specify sheet and range
  • Creation of MPEG-4 H.264 files for Web video publishing with VideoWriter on Windows 7
  • fitswrite function for writing FITS files
  • Access to remote netCDF files with the OPenDAP protocol

See the Release Notes for details.

R2011b (Version 7.13) - 1 Sep 2011

Development Environment

  • Startup Accelerator for faster MATLAB startup on Windows, especially on Windows XP, and for network installations
  • Spreadsheet Import Tool (6:50) that provides more options for selecting and loading mixed textual and numeric data
  • Readability and navigation improvements to warning and error messages in the MATLAB command window
  • Automatic variable and function renaming (2:52) in the MATLAB Editor

Performance and Large Data Set Handling

  • Increased performance in the MATLAB class system, especially for complex data structures
  • matfile function (6:09) to load or save portions of an array in a MAT-file

Mathematics

  • griddedInterpolant object for more control, better performance, and memory efficiency in interpolation for gridded data

File I/O and External Interfacing

  • MPEG-4 and MOV file support in VideoReader on Microsoft® Windows 7
  • NetCDF 4.1.2 support that provides cache size control for increased performance with large chunked NetCDF files
  • Exchange of multidimensional arrays and cell arrays directly between MATLAB and Microsoft .NET

See the Release Notes for details.

R2011a (Version 7.12) - 8 Apr 2011

Development Environment

  • Improvements to Mac® platform look and feel, including placement of the MATLAB menu bar at the top of the screen
  • Redesigned Plot Catalog (4:13) that makes it easier to browse and discover both relevant and available plots, including toolbox plots
  • Submission of support requests (2:05) to MathWorks Technical Support from within MATLAB
  • Comparison Tool that highlights and merges differences in MAT-file variable values and excludes specified files, folders, and unchanged text

Language and Programming

  • Custom creation of MATLAB classes whose objects can be combined into heterogeneous arrays
  • New copyable class, providing default copy behavior for custom handle classes

Mathematics

  • Performance improvements for matrix transpose, element-wise single precision functions, sparse matrix indexed assignment, and many linear algebra functions
  • rng function (5:50) for controlling random number generation
  • ichol function for incomplete Cholesky factorization

File I/O and External Interfacing

  • New functions for reading and writing NetCDF and HDF5 files

See the Release Notes for details.

R2010b (Version 7.11) - 3 Sep 2010

Development Environment

  • Editor highlighting enhanced (4:21) to show all uses of a variable or subfunction and identify shared variables
  • Ability to manage ZIP files as folders (2:13) in the Current Folder Browser
  • File previews in Current Folder Browser (1:18) that show image file contents and unsaved content in MATLAB files
  • Access to additional toolbox plots in the Plot Selector, including plots for System Identification, Mapping, and Bioinformatics Toolboxes
  • Comparison Tool enhanced, allowing comparison among ZIP files, folders, and Simulink manifests, and improving MAT-file comparisons

Language and Programming

Mathematics

  • Support for arithmetic on 64-bit integer types

File I/O and External Interfacing

  • New VideoWriter object (3:17) for creating Motion JPEG and uncompressed AVI files larger than 2 GB
  • netCDF 4.0.1 support, enabling use of HDF5 as the data storage layer for the netCDF API
  • Enhanced interface to Microsoft® .NET framework, supporting delegates and interaction with Microsoft Office products

See the Release Notes for details.

R2010a (Version 7.10) - 5 Mar 2010

Development Environment (5:02)
  • Ability to zip and unzip files and folders in the Current Folder browser to simplify sharing of files
  • New visual cues in the Current Folder browser to show directories on the MATLAB path
  • Enhanced tab completion in the MATLAB Editor with support for local variables, subfunctions, and nested functions
  • Expanded access in the plot selector to plots from the Curve Fitting, Filter Design, Image Processing, and Signal Processing Toolboxes
  • Enhanced File and Folder Comparison Tool, highlighting changes within lines in file comparisons, and sorting results by name, type, size, or timestamp in folder comparisons

Performance and Large Data Set Handling

  • Multithreaded computation support for long vector fft, conv2, integer conversion, and integer arithmetic functions
  • Performance improvements for mrdivide, convn, histc, sortrows, and sparse matrix indexed assignment

See the Release Notes for details.

R2009b (Version 7.9) - 4 Sep 2009

Development Environment

Language and Programming (2:49)

File I/O and External Interfacing

  • mmreader function expanded to support Motion JPEG 2000 files
  • New Tiff object to write tiled images and a broad set of metadata within TIFF files
  • Expanded low-level HDF5 file access to support H5L, H5O, and H5DS interfaces
  • Support for MATLAB scalar indexing into Microsoft .NET Framework arrays

Performance and Large Data Set Handling

  • Ability to perform FFTs on vectors larger than 2 GB
  • Multithreaded computation support for sort, filter, bsxfun, sparse matrix QR decomposition, gamma functions, and error functions
  • Sparse matrix performance improvements for basic math, binary and relational operators, and exponential functions

See the Release Notes for details.

R2009a (Version 7.8) - 6 Mar 2009

Development Environment (1:32)

Expanded M-Lint code-checker messages, providing more detailed explanations of warnings and errors within the MATLAB Editor

Mathematics (7:50)

Significant enhancements to computational geometry functionality, providing improved robustness and memory efficiency for Delaunay triangulation and scattered-data interpolation

File I/O and External Interfacing (8:39)
  • Ability to call .NET classes from MATLAB, providing direct access to a wide variety of software components
  • Expanded mmreader multimedia reader support for Linux® platforms

Platform, Performance, and Large Data Set Handling

  • Multithreaded computation support for fft, sum, prod,:and max

See the Release Notes for details.

R2008b (Version 7.7) - 9 Oct 2008

Development Environment (5:25)
  • Function browser that enables finding appropriate functions while typing in the Editor and Command Window
  • Function hints that provide reminders of arguments while typing
  • Updated Current Directory browser, providing enhanced navigation, filtering, and file previews
Language and Programming (7:28)
  • New containers.Map data structure, enabling implementation of look-up tables and similar constructs, such as a fast string-to-value index
  • Enhanced doc command, providing automatic display of formatted documentation for user-written classdef files
Mathematics (7:50)
  • Enhanced random-number generation, including new algorithms and the ability to create multiple independent streams
  • Enhanced mathematical libraries to use Intel® MKL v10.0.3

File I/O and External Interfacing

  • Support for new file formats, including NetCDF (reading and writing) and JPEG2000 (reading)

See the Release Notes for details.

R2008a (Version 7.6) - 1 Mar 2008

Object Orientated Programming (11:11)
  • Major enhancements to object-oriented programming capabilities allowing easier development and maintenance of large applications and data structures. Many new features, including:
    • New classdef keyword enabling you to define properties, methods, and events in a class definition file
    • New handle class with reference behavior, aiding the creation of data structures such as linked lists
    • Events and listeners allowing the monitoring of object property changes and actions
    • JIT/Accelerator support providing significantly improved object performance over previous releases
    • Several enhancements to the development environment to support developing and using classes including improved support for objects in the variable editor and M-lint warnings specific to classes

See the Release Notes for details.

Other Languages and Programming (4:56)
  • Ability to manage namespace by placing classes and functions in packages
  • New clearvars function for clearing or keeping specified variables
  • New onCleanup function to specify any cleanup tasks that need to be performed by MATLAB when a function completes
Development Environment (6:56)
  • Ability to customize and rearrange the MATLAB Desktop and Editor toolbars
  • Expanded code-folding support in the Editor, providing the ability to collapse cells and language constructs (including for, if, switch, and more)
  • Enhanced inspection of structures and objects with the Variable Editor, previously known as the Array Editor
  • File comparison tool expanded to allow comparison of directories, MAT-files and binary files
  • Several enhancements to automatic M-file publishing, including support for functions and the ability to define configurations on a per-file basis
  • M-Lint code checker support for Embedded MATLAB™ features

Mathematics

  • Ability to insert custom FFTW and LAPACK libraries
  • New algorithms for ldl, logm, and funm based on recent numerical methods Research
Graphics and GUI Building (9:32)
  • Ability to link plots to workspace variables, synchronizing displays of changing data
  • Support for "brushing" (interactively selecting) data in plots for analysis and manipulation
  • Brushed variables in one plot also will highlight in other plots linked to the same workspace data
  • New control uitable, accessible from GUIDE, enabling the display and editing of tabular information in graphical user interfaces

File I/O and External Interfacing

  • MEX support for Microsoft® Visual Studio® 2008, OpenWATCOM 1.7, and Intel® FORTRAN 10.1 software
  • mmreader multimedia reader expanded to support QuickTime video on the Apple® Macintosh® platform (previously released on Microsoft® Windows® platforms)

Performance and Large Data Set Handling

  • New memory function providing memory information such as largest block available, providing diagnostics of memory problems on Windows platforms
  • JIT/Accelerator support enhanced to statements executed at the MATLAB command line and in cell mode in the editor, providing improved performance in these environments
  • Automatic multithreaded computation providing improved performance of supported functions on computers with multiple processors
  • Significant speed improvement in multiplication of sparse matrices

See the Release Notes for details.

R2007b (Version 7.5) - 1 Sep 2007

Performance and Large Data Set Handling (4:57)
  • MATLAB arrays no longer limited to 231 (~2 x109) elements, allowing many numeric and low-level file I/O functions to support real double arrays greater than 16 GB on 64-bit platforms
  • New function maxNumCompThreads enabling use of get and set for the maximum number of computational threads
  • Upgraded Linear Algebra Package library (LAPACK 3.1) on all platforms, plus upgraded optimized Basic Linear Algebra Subprogram libraries (BLAS) on AMD processors (AMCL 3.6)
Development Environment (3:39)
  • Code folding in the Editor, allowing easier viewing and navigation of large MATLAB files with many functions
  • Ability to run functions directly from the Editor by configuring a set of arguments for an M-file
  • Quick access to function help from the command line or in the Editor
Language and Programming (2:09)
  • New MException class and new try-catch syntax, allowing more robust catching and handling of errors
Mathematics (1:06)
  • Sparse matrix support added to the ldl function and backslash operator (\), allowing factorization and solving of real symmetric sparse matrices
  • New quadgk function, allowing numerical integration using Gauss-Kronrod quadrature and supporting integration over infinite limits
  • New bvp5c function for solving boundary value problems for ordinary differential equations, more efficient for small error tolerances
File I/O and External interfacing (3:02)
  • New mmreader multimedia reader object on Windows platforms supporting formats such as AVI, MPEG, and WMV, and additional codecs
Graphics and GUI Building (2:47)
  • Toolbar editor in GUIDE to interactively design toolbars for graphical user interfaces

Embedded MATLAB™

  • Note Generating compiled MEX-files from Embedded MATLAB™ functions requires Simulink® or Fixed-Point Toolbox. Generating C code requires Simulink and Real-Time Workshop®, and generating HDL code requires Simulink and Simulink® HDL Coder. Embedded MATLAB is also supported by Stateflow® and SimEvents™.
  • Support for algorithms that span multiple M-files, improving algorithm reuse and maintenance
  • Support for calling external C functions
  • Data type override, facilitating fixed-point design and enabling a single source for fixed- and floating-point code generation
  • Expanded Embedded MATLAB runtime library with 13 new functions, including fixed-point bitwise operators such as bitsliceget, bitconcat, and bitandreduce

See the Release Notes for details.

R2007a (Version 7.4) - 1 Mar 2007

Development Environment

  • Enhanced delimiter matching in the Editor includes language constructs such as for, if, and switch
  • Ability to automatically fix a subset of M-Lint warning messages in the Editor
  • Desktop tool management enhancements on Windows and Linux platforms, including the ability to maximize and hide tools
  • Support for undo and redo in the Array Editor for instant correction of interactive operations
  • Ability to publish M-code functions when not evaluating code
  • Ability to open MATLAB files from the Windows Explorer into an already running MATLAB
  • Help browser search results now include examples

Language and Programming

  • New inputParser class, making it easier to parse and validate M-file function input arguments
  • New assert function that throws an error if a condition is not true, enabling built-in testing of code
  • New verLessThan function that checks the version of MATLAB, making it easier to write code that runs across multiple releases
  • Numbered arguments to formatted string functions (e.g., sprintf), avoiding the need for parameter reordering in applications such as translation

Mathematics

  • New bsxfun function, enabling simpler coding and improved performance for binary operations requiring singleton expansion
  • New ilu function for performing incomplete LU factorization to be used as a preconditioner for sparse iterative methods

File I/O and External Interfacing

  • New CollectOutput option for the textscan function to automatically collect values of the same data type into a single array
  • Ability to programmatically connect to an instance of a COM Automation server, to create an Automation server using a custom interface, and to take full advantage of event interfaces

Performance and Large Data Set Handling

  • Multithreaded computation support for many linear algebra and element-wise numeric operations, allowing performance improvement on multicore and multiprocessor systems
  • Upgraded versions of optimized Basic Linear Algebra Subprogram (BLAS) libraries on all platforms
  • Improved performance of the Windows XP 64-bit platform
  • 64-bit MATLAB support for Solaris, allowing the handling of much larger data sets

See the Release Notes for details.