Как добавить метаданные к рисунку MATLAB? - PullRequest
0 голосов
/ 04 января 2019

Суммируя большие объемы данных из разных измерений, я создаю фигуры в MATLAB.Я хотел бы добавить метаданные к этим цифрам.

Метаданными могут быть такие вещи, как версия кода и информация об измерении.Один из вариантов - просто добавить эту информацию в виде текста на рисунке, но это отвлекает, и информация может представлять собой большой объем текста.Другой способ - добавить файл README в папку, содержащую рисунки, однако этот файл может потеряться.

Есть ли способ прикрепить эти метаданные непосредственно к рисунку MATLAB?Я ожидаю, что данные будут доступны при открытии рисунка в MATLAB, не отвлекая его от содержимого рисунка.

1 Ответ

0 голосов
/ 04 января 2019

Вы можете легко сделать это, используя свойство UserData фигуры, на котором вы можете хранить все «метаданные».

В следующем примере на диаграмме добавляется график, а данные, используемые для графика, сохраняются в свойстве Figure.

Вы можете улучшить пример, добавив, например, кнопку, которая будет использоваться для получения метаданных.

Если ваша фигура действительно является графическим интерфейсом, вы можете добавить, например, текстовое поле, в котором отображаются метаданные.

% Create a Figure
my_fig=figure
% Define some data
t=0:.01:360;
y=sind(t);
% Plot data
plot(t,y);
grid minor

% Create a struct in which to store the data
metadata_struct.version=1.3
metadata_struct.t_values=t
metadata_struct.y_values=y

% Assign the struct with the metadata to the "UserData" property
my_fig.UserData=metadata_struct
% Save the Figure
savefig(gcf,'my_fig_with_metadata.fig')

% Open the Figure
fig=openfig('my_fig_with_metadata.fig')
% Get the Metadata
fig_metadata=fig.UserData
% Use use the MEtadata
fig_metadata.version
...