Novedades de MATLAB

Nuevas herramientas para preprocesar y analizar datos, escribir scripts y algoritmos, crear apps, y desarrollar software en equipo.

Y, por cierto, MATLAB es más rápido que nunca. Conózcanos más de cerca.

Entorno

NOVEDAD Soporte para Python en el Editor: vea y edite archivos de Python con sintaxis resaltada, sangría automática y concordancia de delimitadores (R2022a)

NOVEDAD Temas en MATLAB Online: cambie los colores de la versión escritorio de MATLAB seleccionando un tema oscuro o claro (R2022a)

NOVEDAD Colores en Live Editor: cambie los colores del fondo y el texto de los scripts en vivo y las funciones (R2022a)

NOVEDAD Exportación desde Live Editor: exporte scripts en vivo y funciones de manera programática con la función export (R2022a)

NOVEDAD Tareas de Live Editor: desarrolle sus propias tareas de Live Editor para utilizarlas en scripts en vivo (R2022a)

Editor: refactorización de código y edición de bloques, así como mejoras en las sugerencias de código, la finalización automática de código y los controles de depuración línea a línea (R2021b)

Animaciones en Live Editor: utilice la interfaz interactiva para controlar animaciones (R2021a) y exportarlas como vídeos o GIF animados (R2021b)

Controles de Live Editor: cree controles dinámicos enlazando variables a valores de controles de Live Editor (R2021a); establezca valores predeterminados (R2021b)

Lenguaje y programación

Utilice los nuevos tipos de datos y construcciones de lenguaje para escribir con mayor rapidez código más claro y más fácil de mantener. 

NOVEDAD Función pcode: cree archivos de código P con ofuscación mejorada (R2022a)

NOVEDAD backgroundPool: ejecute una función de manera asíncrona desde MATLAB sin bloquear la línea de comandos (R2021b); consulte objetos futuros en cola y en ejecución, y el estado del grupo en segundo plano (R2022a)

Indexación modular: personalice las operaciones de indexación de clases individualmente con las nuevas superclases (R2021b)

Sintaxis name=value: utilice la sintaxis name=value para cualquier función que utilice argumentos de par nombre-valor (R2021a)

Visor de diagramas de clases: cree diagramas gráficos de clases para explorar los detalles de las clases y compartir diseños con el visor de diagramas de clases (R2021a)

Validación de argumentos de entrada de las funciones: declare los argumentos de entrada de las funciones para simplificar la comprobación de errores de entrada (R2020b, R2019b)

Objeto pattern: cree patrones para buscar texto en cadenas (R2020b)

Código que muestra funciones y argumentos para buscar la imagen de una pelota.

Ejemplo de validación de argumentos de función con el bloque arguments.

Importación y análisis de datos

Acceda a datos de diversos orígenes para organizarlos, limpiarlos y analizarlos.

NOVEDAD App Data Cleaner: identifique y limpie datos de cronograma confusos de manera interactiva (R2022a)

NOVEDAD Funciones de preprocesamiento de datos: adjunte variables transformadas a datos de entrada (R2022a)

NOVEDAD Archivos Opus: trabaje con archivos de audio Opus (.opus) (R2022a)

E/S de archivos: lea y escriba archivos XML, HTML y de Microsoft Word directamente en tablas, cronogramas y estructuras (R2021b, R2021a, R2020b)

Tareas de preprocesamiento de datos de Live Editor: agregue interfaces de estilo point-and-click simples a un script en vivo para realizar un conjunto concreto de operaciones, como suavizar y normalizar, agrupar y unir, y eliminar valores ausentes y atípicos (R2019b-R021b)

Función trenddecomp: identifique tendencias estacionales y a largo plazo en los datos (R2021b)

Función timeseries2timetable: convierta objetos timeseries en cronogramas (R2021b)

HDF5: soporte para la versión 1.10 de HDF5, incluidas las características de escritor único/lector múltiple (SWMR), conjunto de datos virtual (VDS) y ajuste preciso de caché de metadatos (R2021b)

NetCDF: soporte para la versión 4.7.4 de NetCDF, incluida lectura y escritura de datos NC_STRING (R2021b); lectura de intervalo de bytes de conjuntos de datos remotos (R2022a)

Preprocesamiento de datos con la tarea Clean Outlier Data de Live Editor.

Big data

Amplíe el análisis a big data sin necesidad de realizar grandes cambios.

NOVEDAD Archivos de Parquet: filtrado condicional (distribución de predicados) con rowfilter para limitar el volumen de datos importado; soporte para lectura y escritura de estructuras de datos anidados y grupos de filas (R2022a)

Rendimiento de almacenes de datos: especifique el objeto FileSet en los almacenes de datos para aumentar el rendimiento (R2021b)

Almacenes de datos: lea todos los datos de un almacén de datos utilizando el procesamiento en paralelo (R2021a); combine y transforme los almacenes de datos (R2019a)

Escritura en almacenes de datos: escriba grandes colecciones de datos de almacenes de datos en el disco para flujos de trabajo basados en archivos e ingeniería de datos (R2020a)

Arrays altos: realice operaciones en arrays altos con más funciones, como:

  • groupfilter y matches (2020a)
  • setdiff, xcorr y outerjoin (2019b)
  • groupcounts, intersect y svd (2019a)

Almacén de datos personalizado: lea bases de datos a partir de Hadoop con el marco de almacén de datos personalizado (R2019a)

Objeto FileDatastore: lea archivos grandes personalizados importándolos en partes más pequeñas (R2019a)

Tabla codificada por colores que muestra vuelos de aerolíneas por mes y año entre 1987 y 2008.

Los arrays altos operan con datos que tienen más filas de las que caben en la memoria.

Matemáticas

Las funciones matemáticas proporcionan diversos métodos de cálculo numérico para analizar datos, desarrollar algoritmos y crear modelos.

NOVEDAD Función tensorprod: calcule productos tensoriales entre dos arrays (R2022a)

NOVEDAD Matemáticas de array N-D: resuelva ecuaciones lineales (pagemldivide, pagemrdivide), calcule matrices inversas (pageinv) y realice descomposición en valores singulares (pagesvd) en páginas de arrays N-D (R2022a, R2021b)

Funciones ode78 y ode89: solvers de Runge-Kutta de orden superior para ecuaciones diferenciales ordinarias (R2021b)

Algoritmos de gráficas: calcule todas las rutas, todos los ciclos y bases de ciclo (R2021a)

Tarea Optimize de Live Editor: resuelva problemas de optimización de manera interactiva (R2020b)

Ventana de optimización que muestra opciones para minimizar una función con o sin restricciones.

Utilice la tarea Optimize de Live Editor para definir y resolver problemas de optimización de manera interactiva.

Visualización de datos

Visualice datos con nuevas funciones de representación gráfica y prestaciones de personalización.

NOVEDAD Representación gráfica de datos de tablas: pase tablas directamente a plot, plot3, polarplot y otras funciones para gráficas de líneas (R2022a) y diagramas de dispersión, gráficas de burbujas y gráficas de enjambres (R2021b)

NOVEDAD Función exportgraphics: cree archivos de GIF animados (R2022a); capture y adjunte gráficos a archivos PDF existentes (R2021b)

Tarea Create Plot de Live Editor: cree gráficas de manera interactiva y genere código (R2021a); agregue visualizaciones a las gráficas generadas (R2021b)

Nuevas funciones de gráficos: visualice las relaciones entre las partes y el todo con bubblecloud (R2021a); cree gráficas de burbujas en 2D, 3D y coordenadas polares con bubblechart, bubblechart3 y polarbubblechart (R2020b); visualice distribuciones de datos discretos con swarmchart (R2020b)

Funciones exportgraphics y copygraphics: guarde y copie gráficas con soporte mejorado para flujos de trabajo de publicación (R2020a)

Función tiledlayout: cree diseños configurables de gráficas en una figura (R2019b); posicione, anide y cambie el tamaño de la cuadrícula en los diseños (R2020a)

Creación de apps

App Designer permite crear apps profesionales aunque no sea un desarrollador de software profesional.

NOVEDAD Tareas de Live Editor: desarrolle sus propias tareas de Live Editor para utilizarlas en scripts en vivo (R2022a)

NOVEDAD Componentes personalizados de interfaz de usuario: cree componentes de interfaz de usuario personalizados interactivamente en App Designer (R2022a), o bien cree su propia clase programáticamente (R2020b) para construir componentes de interfaz de usuario compuestos que encapsulan algoritmos, objetos de interfaz de usuario y gráficas

NOVEDAD Componentes de tabla de la interfaz de usuario: reorganice las columnas de los componentes de tabla de la interfaz de usuario de manera interactiva (R2022a); desplácese hasta una ubicación en un componente de tabla de la interfaz de usuario de manera programática con la función scroll (R2021a)

NOVEDAD Accesibilidad: modifique el orden de enfoque sobre las pestañas de los componentes en App Designer y conceda enfoque sobre el teclado a los componentes de la interfaz de usuario de manera programática con la función focus (R2022a)

NOVEDAD Estilos: agregue iconos en celdas de tablas y nodos de árboles (R2022a); cree y agregue estilos a nodos y niveles de un componente de árbol de la interfaz de usuario (R2021b); cree y agregue estilos a filas, columnas o celdas de un componente de tabla de la interfaz de usuario (R2019b)

Ejecución de código en segundo plano: utilice lenguaje de programación en paralelo (backgroundPool) para crear apps con mayor capacidad de respuesta (R2021b)

App Designer: utilice herramientas y accesos directos de Live Editor en Code View (R2021b); haga zoom y realice movimiento panorámico en el área de diseño de Design View (R2021a)

Herramienta de comparación: busque diferencias y combine apps de App Designer (R2020b)

Interfaces de lenguaje externo

MATLAB ofrece una integración bidireccional flexible con otros lenguajes de programación. Eso permite que los equipos de trabajo que utilizan diferentes lenguajes de programación puedan colaborar y dedicar más tiempo a desarrollar productos que a reescribir el código en otro lenguaje.

NOVEDAD Python: convierta los tipos list y tuple de Python en tipos de MATLAB (R2022a)

NOVEDAD Python: utilice la sintaxis name=value para pasar argumentos de palabras clave a las funciones de Python (R2022a)

Funciones pyrun y pyrunfile: ejecute comandos y scripts de Python desde MATLAB (R2021b)

Python: soporte para arrays multidimensionales complejos (R2021b)

Interfaz de C++: establezca una interfaz de MATLAB a una librería de C++ desde archivos de encabezado, archivos de origen o archivos de librería (R2021a, R2020b)

Ejecución de Python fuera de proceso: ejecute funciones de Python fuera de proceso para evitar conflictos de librerías (R2019b)

Rendimiento

MATLAB realiza cálculos más rápidamente con cada versión. Y sin necesidad de modificar ni una sola línea de código.

NOVEDAD Clases: mejoras en el rendimiento de métodos estáticos, acceso a propiedades constantes y funciones de paquetes en scripts (R2022a)

NOVEDAD Conversión de tipos de datos de Python: mejoras en el rendimiento al convertir entre tipos de datos de Python y MATLAB en modo fuera de proceso (R2022a)

NOVEDAD API del motor de MATLAB para Python: mejoras en el rendimiento con arrays multidimensionales de gran tamaño en Python (R2022a)

NOVEDAD Indexación de tablas: mejoras en el rendimiento al asignar elementos utilizando subíndices con llaves, notación de puntos o varios niveles de indexación (R2022a, R2021b)

NOVEDAD Función fzero: mejoras en el rendimiento (R2022a)

Funciones qrinsert y qrdelete: mejoras en el rendimiento al modificar factorizaciones QR (R2021b)

Gráficas en apps: mejoras en el rendimiento al crear gráficas en uifigure (R2021b)

Multiplicación de matrices dispersas: mejoras en el rendimiento al multiplicar matrices dispersas grandes (R2021a)

Sistemas lineales dispersos: mejoras en el rendimiento al resolver sistemas lineales dispersos A*X = B con B multicolumna (R2021a)

Gráfico de barras que muestra un aumento del rendimiento de MATLAB año tras año.

Desarrollo de software

Las herramientas de desarrollo de software ayudan a gestionar y probar el código, realizar la integración con otros sistemas de software y desplegar las aplicaciones en la nube.

NOVEDAD App Code Compatibility Analyzer: identifique y solucione problemas de compatibilidad con la versión actual de MATLAB (R2022a)

NOVEDAD Marco de pruebas unitarias: utilice la plantilla de clase TestCase para crear pruebas con mayor rapidez y precisión (R2021b); recopile métricas de cobertura de funciones e instrucciones para el código fuente (R2022a); ejecute pruebas en paralelo, en clusters y nubes (R2020b)

MATLAB Online: colabore utilizando proyectos y Git en MATLAB Online (R2021b)

Proyectos: organice su trabajo, automatice las tareas y los procesos, y colabore con su equipo de trabajo (R2019a)

Complemento de Jenkins para MATLAB: ejecute pruebas de MATLAB y genere informes de pruebas en formatos tales como los informes de cobertura de código JUnit, TAP y Cobertura

Nuevas arquitecturas de referencia: implemente y ejecute MATLAB en Amazon Web Services (AWS) y Microsoft Azure

Carpeta actual que muestra la opción Source Control seleccionada en un menú y Update from SVN en el siguiente menú.

Uso de herramientas de control de versiones de terceros como SVN directamente desde MATLAB.

Control de hardware

Controle microcontroladores conocidos, tales como Arduino y Raspberry Pi, capture imágenes desde webcams, y adquiera datos de sensores e imágenes de drones.

NOVEDAD App Hardware Manager: descubra hardware y conéctese desde MATLAB (R2022a)

NOVEDAD Arduino: soporte para placas de desarrollo de MCU ESP32 (R2022a)

Arduino: conecte y controle placas con la app Arduino Explorer (R2021b); conectividad BLE para Arduino (R2021b)

Soporte para sensores: lea datos de un sensor APDS9960 conectado a Arduino (R2021b)

Raspberry Pi: soporte para escudos CAN (R2021b)

Drones: conéctese a varios drones Ryze Tello para controlar y leer datos de sensores (2021b)

App Arduino Explorer que muestra la configuración y la representación gráfica de pines.

Analice las mediciones de los sensores con la app Arduino Explorer.