Main Content

Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Pasar matrices de celdas de datos de .NET

Ejemplo de matrices de celdas de datos de .NET

En el ejemplo, la matriz de celdas contiene datos del método.Convertir matrices System. Object anidadasmlDataMyGraph.getNewData Al leer la documentación de la clase en el archivo de origen, puede crear el siguiente gráfico:MATLAB®

dllPath = fullfile('c:','work','NetDocCell.dll'); asm = NET.addAssembly(dllPath); graph = NetDocCell.MyGraph;  % Create cell array containing all data mlData = cell(graph.getNewData);  % Plot the data and label the graph figure('Name',char(mlData{1})) plot(double(mlData{2}(2))) xlabel(char(mlData{2}(1)))

Sin embargo, realizar un seguimiento de los datos de diferentes tipos y dimensiones y las conversiones necesarias para asignar datos de .NET en tipos es complicado mediante la estructura de matriz de celdas.MATLAB Estos son algunos consejos para trabajar con el contenido de las matrices anidadas.System.ObjectMATLAB Después de leer los datos de un método .NET:

  • Cree matrices de celdas para todas las matrices.System.Object

  • Convierta los tipos de .NET en tipos, según la información de.MATLABControlar los datos devueltos desde objetos .NET

  • Cree variables para cada tipo dentro de las matrices de celdas.MATLAB

  • Llame a funciones con las variables.MATLABMATLAB

Cree una matriz de celdas para cada System. Object

En este ejemplo se muestra cómo copiar datos en una matriz de celdas.System.Object

La siguiente instrucción crea la matriz de celdas:mlData

mlData = cell(graph.getNewData) 
mlData =      [1x1 System.String]    [1x1 System.Object[]]

Esta matriz de celdas contiene elementos de estos tipos.

Para acceder al contenido de la matriz, cree otra matriz de celdas:System.ObjectmlPlotData

mlPlotData = cell(mlData{2})
mlPlotData =      [1x1 System.String]    [1x1 System.Double[]] 

Esta matriz de celdas contiene elementos de estos tipos.

Crear variables a partir de los datos de .NETMATLAB

Asigne datos de celda a variables y convierta:MATLAB

% Create descriptive variables % Convert System.String to char mytitle = char(mlData{1}); myxlabel = char(mlPlotData{1}); % Convert System.Double to double y = double(mlPlotData{2});

Llame a funciones con variablesMATLABMATLAB

Cree un gráfico con estos datos:MATLAB

% Remove the previous figure close % Plot the data and label the graph figure('Name',mytitle,'NumberTitle','off') plot(y) xlabel(myxlabel)