Перейти к содержимому

Как сохранить файл matlab

  • автор:

Документация

Рабочая область не обеспечена через сеансы MATLAB ® . Когда вы выходите из MATLAB, рабочая область очищается. Однако можно сохранить любого переменные в текущей рабочей области к MAT-файлу ( .mat ). Можно затем снова использовать переменные рабочей области позже во время текущего сеанса работы с MATLAB или во время другого сеанса путем загрузки сохраненного MAT-файла.

Сохранение переменных рабочей области

Существует несколько способов сохранить переменные рабочей области в интерактивном режиме:

  • Чтобы сохранить все переменные рабочей области в MAT-файл, на вкладке Home, в разделе Variable, нажимают Save Workspace.
  • Чтобы сохранить подмножество ваших переменных рабочей области к MAT-файлу, выберите переменные в браузере Рабочей области, щелкните правой кнопкой, и затем выберите Save As. Также можно перетащить выбранные переменные от браузера Рабочей области до Браузера текущей папки.
  • Чтобы сохранить переменные в скрипт MATLAB, нажмите кнопку Save Workspace или выберите опцию Save As, и в окне Save As, установите опцию Save as type на MATLAB Script. Переменные, которые не могут быть сохранены в скрипт, сохранены в MAT-файл с тем же именем как тот из скрипта.

Также можно сохранить переменные рабочей области программно с помощью save функция. Например, чтобы сохранить все текущие переменные рабочей области в файл june10.mat , используйте команду

save('june10')

Сохранить только переменные A и B к файлу june10.mat , используйте команду

save('june10','A','B')

Чтобы сохранить поля скалярной структуры как отдельные переменные, используйте save функция с -struct опция. Это может быть полезно если вы ранее загруженные переменные из MAT-файла в структуру с помощью синтаксиса S = загрузка ( filename ) и хочу сохранить исходную переменную структуру при сохранении в новый MAT-файл.

Чтобы сохранить часть переменной, используйте matfile функция. Это может быть полезно, если вы работаете с очень большими наборами данных, которые являются в противном случае слишком большими, чтобы уместиться в памяти. Для получения дополнительной информации смотрите, Сохраняют и Части Загрузки Переменных в MAT-файлах.

В MATLAB Online™ переменные сохраняются между сеансами. Сохранение позволяет вам очищать рабочую область и переменные загрузки в более позднее время. Чтобы сохранить переменные, используйте save или matfile функции.

Загрузка переменных рабочей области

Чтобы загрузить сохраненные переменные из MAT-файла в вашу рабочую область, дважды кликните MAT-файл в Браузере текущей папки.

Чтобы загрузить подмножество переменных из MAT-файла на вкладке Home, в разделе Variable, нажимают Import Data. Выберите MAT-file, вы хотите загрузить и нажать Open. Также можно перетащить желаемые переменные из панели Деталей Браузера текущей папки выбранного MAT-файла к браузеру Рабочей области. Панель Деталей не доступна в MATLAB Online .

Чтобы загрузить переменные, сохраненные в скрипт MATLAB в рабочую область, просто запустите скрипт.

Также можно загрузить сохраненные переменные программно, использовать load функция. Например, загрузите все переменные из файла durer.mat

load('durer')

Загружать переменные X и map из файла durer.mat

load('durer','X','map')

Чтобы загрузить часть переменной, используйте matfile функция. Это полезно, если вы работаете с очень большими наборами данных, которые являются в противном случае слишком большими, чтобы уместиться в памяти. Для получения дополнительной информации смотрите, Сохраняют и Части Загрузки Переменных в MAT-файлах.

Внимание

Когда вы загружаете данные в рабочее пространство MATLAB, новые переменные, которые вы создаете, перезаписывают любые существующие переменные в рабочей области, которые имеют то же имя. Чтобы постараться не перезаписывать существующие переменные, используйте load функционируйте, чтобы загрузить переменные в структуру. Например, S = load(‘durer’) загрузки все переменные из файла durer.mat в структуру S .

Просмотр содержимого MAT-файла

Чтобы видеть переменные в MAT-файле прежде, чем загрузить файл в вашу рабочую область, кликните по имени файла в Браузере текущей папки. Информация о переменных появляется в панели Details.

В качестве альтернативы используйте команду whos -file filename . Эта функция возвращает имя, размерности, размер и класс всех переменных в заданном MAT-файле. Например, можно просмотреть содержимое файла в качестве примера durer.mat .

whos -file durer.mat
Name Size Bytes Class Attributes X 648x509 2638656 double caption 2x28 112 char map 128x3 3072 double

Количества байта представляют количество байтов, которые данные занимают в памяти, когда загружено в рабочее пространство MATLAB. Из-за сжатия, кодирования данных и метаданных, место, занятое в файле переменной, может отличаться от размера в оперативной памяти. MATLAB сжимает данные в Версии 7 или более высоких MAT-файлах. Для получения дополнительной информации см. Версии MAT-файла.

Смотрите также

Похожие темы

  • Версии MAT-файла
  • Сохранение и загрузка частей переменных в MAT-файлах

when using Matlab Online is it possible to save a file to a local computer drive?

that do not have a local license residing on the machine. I can certainly upload files from my local machine onto the Matlab Drive but I can not find a means to take a file that I worked on with Matlab online and store it on a local disk drive so then I can useit elsewhere. Is it possible to store the file when I am done at a location other than the Matlab Drive. I can not instally the connector on the machines that do not have Matlab as I do not have admin privledges for those machines

save

save( filename ) сохраняет все переменные из текущей рабочей области в MATLAB ® отформатированный двоичный файл (MAT-файл) под названием filename . Если filename существует, save перезаписывает файл.

save( filename , variables ) сохраняет только переменные или поля массива структур, заданного variables .

save( filename , variables , fmt ) сохраняет в формате файла, заданном fmt . variables аргумент является дополнительным. Если вы не задаете variables , save функция сохраняет все переменные в рабочей области.

save( filename , variables , version ) сохраняет в версию MAT-файла, заданную version . variables аргумент является дополнительным.

save( filename , variables , version ,’-nocompression’) сохраняет переменные в MAT-файл без сжатия. ‘-nocompression’ отметьте только поддерживает Версию MAT-файла 7 (значение по умолчанию) и Версия 7.3. Поэтому необходимо задать version как ‘-v7’ или ‘-v7.3’ . variables аргумент является дополнительным.

save( filename , variables ,’-append’) добавляют новые переменные к существующему файлу. Если переменная уже существует в MAT-файле, то save перезаписи это со значением в рабочей области.

Для ASCII-файлов, ‘-append’ добавляют данные в конец файла.

Чтобы добавить к MAT-файлу Версии 6, необходимо также включать ‘-v6’ как входной параметр.

save( filename , variables ,’-append’,’-nocompression’) добавляют новые переменные к существующему файлу без сжатия. Существующим файлом должна быть Версия MAT-файла 7 (значение по умолчанию) или 7.3.

save filename форма команды синтаксиса. Форма команды требует меньшего количества специальных символов. Вы не должны вводить круглые скобки или заключать вход в одинарные или двойные кавычки. Разделите входные параметры пробелами вместо запятых.

Например, чтобы сохранить файл с именем test.mat , эти операторы эквивалентны:

save test.mat % command form save('test.mat') % function form

Можно включать любые из входных параметров, описанных в предыдущих синтаксисах. Например, чтобы сохранить переменную под названием X :

save test.mat X % command form save('test.mat','X') % function form

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

Примеры

Сохранение всех переменных рабочей области в MAT-файл

Сохраните все переменные из рабочей области в бинарном MAT-файле, test.mat . Если filename переменная, используйте синтаксис функций.

filename = 'test.mat'; save(filename)

В противном случае также можно использовать синтаксис команд.

save test.mat

Удалите переменные из рабочей области, и затем получите данные с load функция.

clear load('test.mat')

Сохранение определенных переменных в MAT-файл

Создайте и сохраните две переменные, p и q , к файлу под названием pqfile.mat .

p = rand(1,10); q = ones(10); save('pqfile.mat','p','q')

MATLAB® сохраняет переменные в файл, pqfile.mat , в текущей папке.

Также можно использовать синтаксис команд, чтобы сохранить переменные, p и q .

save pqfile.mat p q

Сохранение данных в ASCII файле

Создайте две переменные, сохраните их в ASCII-файл, и затем просмотрите содержимое файла.

p = rand(1,10); q = ones(10); save('pqfile.txt','p','q','-ascii') type('pqfile.txt')

type функционируйте отображает содержимое файла.

В качестве альтернативы используйте синтаксис команд для save операция.

save pqfile.txt p q -ascii 

Сохранение полей структуры как отдельных переменных

Создайте структуру, s1 , это содержит три поля, a B , и c .

s1.a = 12.7; s1.b = 'abc',[4 5; 6 7]>; s1.c = 'Hello!';

Сохраните поля структуры s1 как отдельные переменные в файле под названием newstruct.mat .

save('newstruct.mat','-struct','s1');

Проверяйте содержимое файла с помощью whos функция.

disp('Contents of newstruct.mat:')
Contents of newstruct.mat:
whos('-file','newstruct.mat')
Name Size Bytes Class Attributes a 1x1 8 double b 1x2 246 cell c 1x6 12 char

Сохранение переменных в MAT-файл версии 7.3

Создайте две переменные и сохраните их в MAT-файл Версии 7.3 под названием example.mat .

A = rand(5); B = magic(10); save('example.mat','A','B','-v7.3')

Также можно использовать синтаксис команд для save операция.

save example.mat A B -v7.3

Сохраните переменные в MAT-файл без сжатия

Создайте две переменные и сохраните их, без сжатия, к Версии 7 или 7.3 MAT-файл под названием myFile.mat .

A = rand(5); B = magic(10); save('myFile.mat','A','B','-v7.3','-nocompression')

В качестве альтернативы используйте синтаксис команд для save операция.

save myFile.mat A B -v7.3 -nocompression 

‘-nocompression’ флаг упрощает более быстрое сохранение для тех переменных, которые больше, чем 2 Гбайт или те, которые не извлекают выгоду из сжатия.

Добавление переменной к MAT-файлу

Сохраните две переменные в MAT-файл. Затем добавьте третью переменную к тому же файлу.

p = rand(1,10); q = ones(10); save('test.mat','p','q')

Просмотрите содержимое MAT-файла.

whos('-file','test.mat')
Name Size Bytes Class Attributes p 1x10 80 double q 10x10 800 double

Создайте новую переменную, a , и добавьте его к MAT-файлу.

a = 50; save('test.mat','a','-append')

Просмотрите содержимое MAT-файла.

whos('-file','test.mat')
Name Size Bytes Class Attributes a 1x1 8 double p 1x10 80 double q 10x10 800 double

Переменная, a , добавлен к test.mat , не перезаписывая предыдущие переменные, p и q .

Примечание

Чтобы добавить к MAT-файлу Версии 6, задайте оба ‘-v6’ и ‘-append’ . Например, чтобы сохранить переменную a к файлу, test.mat , вызов:

save('test.mat','a','-v6','-append')

Добавление переменной к MAT-файлу без сжатия

Сохраните две переменные в MAT-файл. Затем добавьте третью переменную, без сжатия, к тому же файлу.

Создайте две переменные A и B и сохраните их в 7 Версии MAT-файла или 7.3 . По умолчанию, save функционируйте переменные A сжатий и B прежде, чем сохранить их в myFile.mat .

A = rand(5); B = magic(10); save('myFile.mat','A','B','-v7.3')

Просмотрите содержимое MAT-файла.

whos('-file','myFile.mat')
Name Size Bytes Class Attributes A 5x5 200 double B 10x10 800 double

Создайте новую переменную C и добавьте его, без сжатия, к myFile.mat .

C = 5; save('myFile.mat','C','-append','-nocompression')

Просмотрите содержимое MAT-файла.

whos('-file','myFile.mat')
Name Size Bytes Class Attributes A 5x5 200 double B 10x10 800 double C 1x1 8 double

Входные параметры

filename — Имя файла
‘matlab.mat’ (значение по умолчанию) | вектор символов | строковый скаляр

Имя файла в виде вектора символов или строкового скаляра. Если вы не задаете filename , save функция сохраняет в файл с именем matlab.mat .

Если filename не имеет никакого расширения (то есть, никакой период, сопровождаемый текстом), и значение format не задан, затем MATLAB добавляет .mat . Если filename не включает полный путь, MATLAB сохраняет в текущую папку. У вас должно быть разрешение записать в файл.

При использовании формы команды save , вы не должны заключать вход в одинарные кавычки. Однако, если filename содержит пробел, необходимо заключить аргумент в одинарные кавычки. Например, save ‘filename withspace.mat’ .

Примечание

Не используйте форму команды когда filename строка.

Чтобы сохранить переменные рабочей области в MAT-файл в удаленном месте, задайте filename как универсальный локатор ресурса (URL) этой формы:

scheme_name :// path_to_file / my_file.mat

На основе вашего удаленного местоположения, scheme_name может быть одно из значений в этой таблице.

Удаленное местоположение scheme_name
Amazon S3™ s3
Windows Azure ® Устройство хранения данных блоба wasb , wasbs

save функционируйте только поддерживает MAT-файлы версии 7.3 сохранения к удаленным местоположениям.

Для получения дополнительной информации о подготовке MATLAB, чтобы получить доступ к вашему сервису оперативного хранения, смотрите работу с Удаленными данными.

Пример: ‘myFile.mat’

Пример: ‘s3://bucketname/path_to_file/my_file.mat’

variables — Имена переменных, чтобы сохранить
вектор символов | строковый скаляр

Имена переменных, чтобы сохранить в виде векторов символов или строковых скаляров. При использовании формы команды save , вы не должны заключать вход в одинарные кавычки.

Примечание

Не используйте форму команды когда variables строка.

variables может быть в одной из следующих форм.

Форма variables Входной параметр Переменные, чтобы сохранить
var1. varN Сохраните перечисленные переменные в виде векторов отдельного символа или строк.
Используйте ‘*’ подстановочный знак, чтобы совпадать с шаблонами. Например, save(‘filename.mat’,’A*’) сохраняет все переменные в файле, которые запускаются с A .
‘-regexp’, expr1. exprN Сохраните только переменные, имена которых совпадают с регулярными выражениями в виде векторов символов или строк. Например, save(‘filename.mat’,’-regexp’,’^Mon’,’^Tues’) сохраняет только переменные в файле, имена которого начинаются с Mon или Tues .
‘-struct’, structName Сохраните поля скалярной структуры, заданной structName как отдельные переменные в файле. Например, save(‘filename.mat’,’-struct’,’S’) сохраняет скалярную структуру, S .
‘-struct’, structName, field1. fieldN Сохраните заданные поля заданной скалярной структуры как отдельные переменные в файле. Например, save(‘filename.mat’,’-struct’,’S’,’a’,’b’) сохраняет поля S.a и S.b .
‘-struct’, structName , ‘-regexp’, expr1. exprN Сохраните только поля, имена которых совпадают с регулярными выражениями в виде векторов символов или строк.

fmt FileFormat
‘-mat’ (значение по умолчанию) | ‘-ascii’ | ‘-ascii’,’-tabs’ | ‘-ascii’,’-double’ | ‘-ascii’,’-double’,’-tabs’

Формат файла в виде одного из следующих. При использовании формы команды save , вы не должны заключать вход в одинарные или двойные кавычки, например, save myFile.txt -ascii -tabs .

Бинарный формат MAT-файла.

Текстовый формат с 8 цифрами точности.

Формат разделенного текста вкладки с 8 цифрами точности.

Текстовый формат с 16 цифрами точности.

Формат разделенного текста вкладки с 16 цифрами точности.

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

Используйте один из текстовых форматов, чтобы сохранить числовые значения MATLAB в текстовые файлы. В этом случае:

  • Каждой переменной должен быть двумерный double массив.
  • Выход включает только действительный компонент комплексных чисел.
  • MATLAB записывает данные от каждой переменной последовательно к файлу. Если вы планируете использовать load функционируйте, чтобы считать файл, все переменные должны иметь одинаковое число столбцов. load функция создает одну переменную из файла.

Если вы задаете текстовый формат, и любая переменная является двумерным символьным массивом, то MATLAB переводит символы в их соответствующие внутренние коды ASCII. Например, ‘abc’ появляется в текстовом файле как:

9.7000000e+001 9.8000000e+001 9.9000000e+001

При сохранении в удаленное местоположение, save только поддержки, задающие fmt как ‘-mat’ .

Типы данных: char | string

version ‘MATFileVersion’
‘-v7’ (значение по умолчанию) | ‘-v7.3’ | ‘-v6’ | ‘-v4’

Версия MAT-файла в виде одного из следующих. При использовании формы команды save , вы не должны заключать вход в одинарные или двойные кавычки.

Сохранение и загрузка частей переменных и всех функций Версии 7. Версия 7.3 также поддерживает переменные сохранения без сжатия с помощью ‘-nocompression’ опция.

Unicode ® кодировка символов, которая включает совместный доступ к файлам между системами, которые используют различные схемы кодировки символов по умолчанию и все функции Версии 6. Версия 7 также поддерживает переменные сохранения без сжатия с помощью ‘-nocompression’ опция.

N-мерные массивы, массивы ячеек, массивы структур, имена переменных дольше, чем 19 символов и все функции Версии 4.

Двумерный double , символ и разреженные массивы.

Если какие-либо элементы данных требуют функций, которые не поддерживает заданная версия, MATLAB не сохраняет те элементы и выдает предупреждение. Вы не можете задать версию позже, чем ваша текущая версия программного обеспечения MATLAB.

Примечание

Версия 7.3 MAT-файлы используют базирующийся формат HDF5, который требует, чтобы некоторое служебное устройство хранения данных описало содержимое файла. Для массивов ячеек, массивов структур или других контейнеров, которые могут сохранить типы гетерогенных данных, MAT-файлы Версии 7.3 иногда больше, чем MAT-файлы Версии 7.

Чтобы просмотреть или установить версию по умолчанию для MAT-файлов, перейдите к вкладке Home и в разделе Environment, нажмите Preferences. Выберите MATLAB> General> MAT-Files и затем выберите опцию MAT-file save format.

Типы данных: char | string

exportgraphics

exportgraphics( obj , filename ) saves the contents of the graphics object specified by obj to a file. The graphics object can be any type of axes, a figure, a standalone visualization, a tiled chart layout, or a container within the figure. The resulting graphic is tightly cropped to a thin margin surrounding your content.

exportgraphics( obj , filename , Name,Value ) specifies additional options for saving the file. For example, exportgraphics(gca,»myplot.jpg»,»Resolution»,300) saves the contents of the current axes as a 300-DPI image file.

Examples

Export Axes as Image File

Create a line plot and get the current axes. Then save the contents of the axes as a JPEG file.

plot(rand(5,5)) ax = gca; exportgraphics(ax,'LinePlot.jpg')

Figure contains an axes object. The axes object contains 5 objects of type line.

Specify Image Resolution

Display an image and get the current axes. Then save the contents of the axes as a 300-DPI JPEG file.

I = imread('peppers.png'); imshow(I) ax = gca; exportgraphics(ax,'Peppers300.jpg','Resolution',300)

Figure contains an axes object. The axes object contains an object of type image.

Export Figure

Display a plot with an annotation that extends beyond the bounds of the axes. Save the contents of the figure as a PDF file.

plot(1:10) annotation('textarrow',[0.06 0.5],[0.73 0.5],'String','y = x ') f = gcf; exportgraphics(f,'AnnotatedPlot.pdf')

Figure contains an axes object. The axes object contains an object of type line.

Export as PDF Containing Only Vector Graphics

Display a bar chart and get the current axes. Then save the contents of the axes as a PDF containing only vector graphics.

bar([10 22 31 43]) ax = gca; exportgraphics(ax,'BarChart.pdf','ContentType','vector')

Figure contains an axes object. The axes object contains an object of type bar.

Export Multipage PDF

To create multipage PDFs, set the ‘Append’ name-value argument to true .

For example, create a line plot and save the contents of the axes to the file myplots.pdf .

plot([0 0.3 0.1 0.6 0.4 1]) ax = gca; exportgraphics(ax,'myplots.pdf')

Figure contains an axes object. The axes object contains an object of type line.

Next, create a bar chart and save the contents of the axes as a second page in myplots.pdf .

bar(1:10) exportgraphics(ax,'myplots.pdf','Append',true)

Figure contains an axes object. The axes object contains an object of type bar.

Export Animated GIF

Plot a parabola with one marker. Change the location of the marker with every iteration of a for loop, and capture the changes as frames in an animated GIF.

x = -10:0.5:10; y = x.^2; p = plot(x,y,"-o","MarkerFaceColor","red"); for i=1:41 p.MarkerIndices = i; exportgraphics(gca,"parabola.gif","Append",true) end

Figure contains an axes object. The axes object contains an object of type line.

Export Tiled Chart Layout

Display two plots in a tiled chart layout. Then save both plots as a PDF by passing the TiledChartLayout object to the exportgraphics function.

t = tiledlayout(2,1); nexttile plot([1 2 3]) nexttile plot([3 2 1]) exportgraphics(t,'Layout.pdf')

Figure contains 2 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type line.

If you want to save just one of the plots in the layout, call the nexttile function with the axes return argument. Then pass the axes to the exportgraphics function.

Export Heatmap as PDF With Transparent Background

Display a heatmap chart. Then save the chart as a PDF containing only vector graphics with a transparent background.

h = heatmap(rand(10,10)); exportgraphics(h,'Hmap.pdf','BackgroundColor','none','ContentType','vector')

Figure contains an object of type heatmap.

Create App for Saving Plot

Create a program file called saveapp.m that displays a plot and a button for saving the axes content. In the callback function for the button, call the uiputfile function to prompt the user for a file name and location. Then call the exportgraphics function with the full path to the specified file.

function saveapp f = uifigure; ax = uiaxes(f,'Position',[25 25 400 375]); plot(ax,[0 0.3 0.1 0.6 0.4 1]) b = uibutton(f,'Position',[435 200 90 30],'Text','Save Plot'); b.ButtonPushedFcn = @buttoncallback; function buttoncallback(~,~) filter = '*.jpg';'*.png';'*.tif';'*.pdf';'*.eps'>; [filename,filepath] = uiputfile(filter); if ischar(filename) exportgraphics(ax,[filepath filename]); end end end

Run the app by calling the saveapp function. When you click the Save Plot button in the app, a dialog box prompts you for a file name and location. Then the axes content is saved in the specified file. The area surrounding the axes, including the button, is not included in the file.

Добавить комментарий

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