Software update: Matlab R2020a

Matlab is an interactive and mathematical environment for developing algorithms, performing numerical calculations, and visualizing and analyzing data. For more information, please refer to this page. The developers released version R2020a last month, with the following list of changes:


  • Profiler Flame Graphs: Investigate and improve the performance of your code visually
  • Live Editor Loop Execution: Improved performance when running loops in live scripts
  • Live Editor Animation Output: Improved performance when animating plots in live scripts
  • Live Editor Responsiveness: Improved performance with extended use
  • Live Editor Control Value Changes: Run all necessary code on value changes
  • File Encoding: Save MATLAB code files (.m) and other plain text files as UTF-8 encoded files by default
  • Multiple Sources in Help Browser: Search MathWorks documentation and custom documentation together in a single browser
  • Web Documentation: View MathWorks documentation on the web without logging in
  • Internationalization: UTF-8 as system encoding on Mac and Windows platforms

Language and Programming

  • switch Function: Compare objects more flexibly
  • copyfile and movefile Functions: Access web-based storage services like Amazon Web Services and Azure Blob Storage
  • dbup and dbdown Commands: Switch between workspaces with one step
  • bin2dec and hex2dec Functions: Convert text that includes binary or hexadecimal prefixes and suffixes
  • dec2bin and dec2hex Functions: Convert negative numbers
  • complex Function: Create sparse complex arrays
  • Enumeration classes: Hide member names for compatible name changes
  • matlab.mixin.SetGet: Set priority for partial property name matching
  • Class logical conversions: Support logical conversion more flexibly when writing classes
  • Functionality being removed or changed

Data Analysis

  • Live Editor Tasks: Interactively manipulate tables and timetables, and generate code
  • Basic Fitting Tool: Fit lines to plotted data using modernized interface
  • detrend Function: Ignore NaN values
  • accumarray Function: Maintain consistent output order on all platforms
  • leapseconds Function: List all leap seconds used by the datetime data type
  • timezones Function: Determine IANA Time Zone Database version
  • renamevars Function: Rename variables in table or timetable
  • rows2vars and unstack Function: Use naming rule to allow table and timetable variable names with any characters
  • containsrange, overlapsrange, and withinrange Functions: Determine if timetable row times intersect specified time range
  • tall Arrays: Operate on tall arrays with more functions, including groupfilter and matches
  • Functionality Being Removed or Changed

Data Import and Export

  • Datastores: Write data from datastore to files using writeall
  • Datastores: Return timetables from tabularTextDatastore and spreadsheetDatastore objects
  • Datastores: Partition and shuffle TransformedDatastore and CombinedDatastore objects
  • Datastores: Process files and blocks within files iteratively using FileSet and BlockedFileSet objects
  • Parquet Files: Control encoding scheme and Parquet version when writing files
  • Text and Spreadsheet Files: Append, overwrite, or replace data using ‘WriteMode’ parameter
  • readtable Function: Uses results of detectImportOptions function by default
  • textscan, readtable, detectImportOptions, and setvaropts Functions: Read and import hexadecimal and binary literals
  • h5read and h5readatt: Read non-scalar string data as MATLAB string arrays
  • h5create and h5write: Write string data to HDF5 files
  • CDF Library: Upgraded to v3.7.0
  • Tiff Object: Read and write the values ​​of the Rational Polynomial Coefficients tag
  • jsonencode: Customize encoding in MATLAB classes
  • jsonencode: Encode enumerations
  • Functionality being removed or changed


  • nufft and nufftn Functions: Compute nonuniform fast Fourier transforms
  • sparse Function: Support for integer subscripts and logical aggregation


  • boxchart Function: Visualize grouped numeric data by using box charts
  • exportgraphics and copygraphics Functions: Save and copy graphics with improved support for publishing workflows
  • ChartContainer Class: Develop charts that display a tiling of Cartesian, polar, or geographic plots
  • Tiled Chart Layout: Position, nest, and change the grid size of layouts
  • pie Function: Specify a numeric format for the percentage labels
  • Axes Convenience Functions: Pass an array of axes or chart objects to convenience functions such as grid, hold, and box
  • SeriesIndex and NextSeriesIndex Properties: Control how plots cycle through colors and line styles
  • colororder Function: Control colors in scatter histograms and parallel plots
  • pareto Function: Specify the fraction of the cumulative histogram to include
  • Axes: Control margins for titles and labels by setting the InnerPosition and PositionContraint properties
  • Built-In Axes Interactions: Explore data with cursors that show available interactions
  • Built-In Axes Interactions: Customize built-in interactions on geographic axes
  • linkdata Function: Open dialog box to specify data sources using new syntax
  • Functionality being removed or changed

App Building

  • uicontextmenu Function: Add and configure context menu components in apps and on the App Designer canvas
  • toolbar Function: Add custom toolbars to apps programmatically
  • Icon Property: Display SVG, animated GIF, or truecolor image array icons in buttons and tree nodes
  • Mouse Pointer: Change the mouse pointer symbol in apps
  • Graphics Support: Create annotations, brush data, configure data tips, save and copy graphics
  • GUIDE to App Designer Migration Tool for MATLAB: Migrate GUIDE apps to App Designer in less time and with fewer manual code updates
  • App Testing Framework: Perform press gestures with different selection types
  • Functionality Being Removed or Changed


  • Live Editor Loop Execution: Improved performance when running loops in live scripts
  • Live Editor Animation Output: Improved performance when animating plots in live scripts
  • datetime, duration, and calendarDuration Data Type Indexing: Improved performance when assigning elements by subscripting
  • datetime Data Type Format Parsing: Improved performance when parsing format of text inputs
  • table Data Type Indexing: Improved performance when assigning elements by subscripting into table variables
  • Subscripted Reference: Improved performance for struct arrays stored in a property of an object
  • imread Function: Improved performance in reading JPEG images
  • readmatrix Function: Improved performance in reading data
  • ode15s, ode23t, and ode15i Solvers: Improved performance solving differential equations
  • transpose and ctranspose Functions: Improved performance on large arrays
  • ordschur and ordqz Functions: Improved performance operating on large matrices
  • sparse Function: Improved performance constructing sparse matrices
  • interp1 Function: Faster interpolation for small problem sizes
  • assert Function: Improved performance for most common use cases
  • nexttile Function: Improved performance when creating several axes in a tiled chart layout
  • App Designer Code View: Improved performance when displaying and editing code in App Designer
  • Graphics Rendering in UI Figures: Improved graphics rendering performance on large data sets in UI figures
  • Data Tip Markers: Improved rendering performance of data tip markers in line plots of large data sets created in UI figures and MATLAB Online
  • Icon Property: Improved rendering performance for buttons and tree nodes with icons
  • Functionality being removed or changed

Software Development Tools

  • Dependency Analyzer: Improved navigation, filtering, and highlighting for project dependencies
  • Project Checks: Run all project checks programmatically
  • Project API: Get latest Git revision programmatically
  • Unit Testing Framework: Add custom details to TestResult objects
  • Unit Testing Framework: Assert that test session ran with no failure
  • Unit Testing Framework: Run tests from the Live Editor toolstrip
  • Unit Testing Framework: Generate test reports including test tags
  • App Testing Framework: Perform press gestures with different selection types
  • Mocking Framework: Add events to mock objects
  • Mocking Framework: Specify when framework should do nothing
  • Functionality being removed or changed

External Language Interfaces

  • C++ Interface: MATLAB data type for C++ array and std::vector
  • C++ Interface: Supported data types
  • C++ Interface: Lifetime management of C++ objects
  • MATLAB Data Array: Support for ND row-major memory layout
  • MATLAB COM Server: Register MATLAB without administrative privileges
  • Compiler support changed for building MEX files and standalone MATLAB engine and MAT-file applications
  • Functionality being removed or changed

Hardware Support

  • MATLAB Support Package for Ryze Tello Drones: Control Ryze Tello drone from MATLAB and acquire sensor and image data
  • Support added for Raspberry Pi 4B model board
  • Deploy deep learning applications on Raspberry Pi hardware
  • Read GPS Data from GPS Receiver Connected to Arduino Hardware
  • Use BNO055 Sensor with Sensor Fusion and Tracking Toolbox, and Navigation Toolbox to Estimate Orientation
  • Enable Code Generation of MATLAB Arduino Functions Inside a MATLAB Function Block for I2C and SPI
  • Functionality being changed or removed

Version number R2020a
Release status Final
Operating systems Windows 7, Linux, macOS, Windows 10
Website The MathWorks
License type Shareware