Сохраните графическое или графическое содержимое в файл
exportgraphics(
сохраняет содержимое графического объекта, заданное как obj
,filename
)obj
в файл. Графическим объектом может быть любой тип осей, рисунок, автономная визуализация, размещение мозаичного графика или контейнер внутри рисунка. Получившаяся графика плотно обрезается до тонкого поля, окружающего ваше содержимое.
exportgraphics(
задает дополнительные опции для сохранения файла. Для примера, obj
,filename
,Name,Value
)exportgraphics(gca,'myplot.jpg','Resolution',300)
сохраняет содержимое текущей системы координат как 300-DPI файл изображения.
Создайте линейный график и получите текущую систему координат. Затем сохраните содержимое осей как файл JPEG.
plot(rand(5,5))
ax = gca;
exportgraphics(ax,'LinePlot.jpg')
Отобразите изображение и получите текущие системы координат. Затем сохраните содержимое осей как 300-DPI файл JPEG.
I = imread('peppers.png'); imshow(I) ax = gca; exportgraphics(ax,'Peppers300.jpg','Resolution',300)
Отображение графика с аннотацией, выходящей за пределы осей. Сохраните содержимое рисунка как PDF- файл.
plot(1:10) annotation('textarrow',[0.06 0.5],[0.73 0.5],'String','y = x ') f = gcf; exportgraphics(f,'AnnotatedPlot.pdf')
Отобразите столбчатую диаграмму и получите текущие системы координат. Затем сохраните содержимое осей как PDF, содержащий только векторную графику.
bar([10 22 31 43]) ax = gca; exportgraphics(ax,'BarChart.pdf','ContentType','vector')
Отображение двух графиков в размещении мозаичной диаграммы. Затем сохраните оба графика как PDF, передав TiledChartLayout
объект для exportgraphics
функция.
t = tiledlayout(2,1);
nexttile
plot([1 2 3])
nexttile
plot([3 2 1])
exportgraphics(t,'Layout.pdf')
Если вы хотите сохранить только один из графиков в размещении, вызовите nexttile
функция с возвращаемым аргументом осей. Затем передайте оси в exportgraphics
функция.
Отобразите график тепловой карты. Затем сохраните график как PDF, содержащий только векторную графику с прозрачным фоном.
h = heatmap(rand(10,10)); exportgraphics(h,'Hmap.pdf','BackgroundColor','none','ContentType','vector')
Создайте программный файл с именем saveapp.m
отображение графика и кнопки для сохранения содержимого осей. В функции обратного вызова для кнопки вызовите uiputfile
функция, чтобы запросить у пользователя имя файла и местоположение. Затем вызовите exportgraphics
функция с полным путем к указанному файлу.
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
Запустите приложение, позвонив в saveapp
функция. Когда вы нажимаете кнопку Save Plot в приложении, диалоговое окно предлагает вам имя файла и расположение. Затем содержимое осей сохраняется в указанном файле. Область, окружающая оси, включая кнопку, не включена в файл.
saveapp
obj
- Графический объектГрафический объект, заданный как один из следующих объектов:
Любой тип осей: Axes
, PolarAxes
, или GeographicAxes
объект.
A рисунка, созданная с любым из них figure
или uifigure
функция.
Автономная визуализация, такая как heatmap
график.
Мозаичный график размещения, который вы создаете с tiledlayout
функция.
Контейнер внутри рисунка: a Panel
, Tab
, или ButtonGroup
объект.
exportgraphics
захватывает содержимое заданного объекта. Он не захватывает компоненты пользовательского интерфейса, такие как кнопки или ползунки.
Он также не захватывает соседние контейнеры или дочерние контейнеры. Для примера рассмотрим рисунок, содержащую линейный график с соседней панелью, содержащей тепловую карту:
f = figure; ax = axes(f,'Position',[0.1 0.1 0.4 0.8]); plot(ax,[0 1]) p = uipanel(f,'Position',[0.55 0.1 0.4 0.8]); heatmap(p,rand(10,5)) exportgraphics(f,'myfigure.png') exportgraphics(p,'mypanel.png')
Когда вы запускаете предыдущий код, myfigure.png
содержит линейный график, но не тепловой карты. Точно так же mypanel.png
содержит тепловую карту, но не линейный график.
filename
- Имя файлаИмя файла, заданное как вектор символов или строковый скаляр, включающий расширение файла. Если filename
не включает полный путь, MATLAB® сохраняет файл в текущей папке. У вас должно быть разрешение на запись в файл.
В следующей таблице перечислены поддерживаемые форматы файлов и расширения файлов (которые не зависят от регистра).
Формат файла | Расширение файла |
---|---|
Формат графических данных JPEG (JPEG) | 'jpg' или 'jpeg' |
Портативная сетевая графика (PNG) | 'png' |
Теговый формат графических файлов (TIFF) | 'tif' или 'tiff' |
Формат переносимых документов (PDF) PDF включает встраиваемые шрифты, когда | 'pdf' |
Расширенный метафайл для Windows® только системы (ЭДС) | 'emf' |
Инкапсулированный PostScript® (EPS) | 'eps' |
Пример: exportgraphics(gca,'myfile.jpg')
сохраняет содержимое текущей системы координат в файл JPEG с именем myfile.jpg
.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
exportgraphics(gca,'myplot.jpg','Resolution',300)
сохраняет содержимое текущей системы координат в 300-DPI файле изображения.'ContentType'
- Тип содержимого'auto'
(по умолчанию) | 'vector'
| 'image'
Тип содержимого для хранения при сохранении в виде файла EMF, EPS или PDF. Задайте значение как один из следующих опций:
'auto'
- MATLAB контролирует, является ли содержимое векторной графикой или изображением.
'vector'
- Сохраняет содержимое как векторную графику, которая может масштабироваться до любого размера. При сохранении PDF в файл включаются встраиваемые шрифты.
'image'
- Растрирует содержимое в одно или несколько изображений в файле.
Примечание
The 'vector'
опция не поддерживается для файлов JPEG, TIFF и PNG.
'Resolution'
- Разрешение (DPI)150
(по умолчанию) | целое числоРазрешение в точках на дюйм (DPI), заданное как целое число, которое больше или равно 1
.
Определение разрешения не имеет никакого эффекта, когда ContentType
является 'vector'
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
'BackgroundColor'
- Цвет фона[1 1 1]
(по умолчанию) | 'current'
| 'none'
| триплет RGB | 'r'
| 'g'
| 'b'
| ...Цвет фона, заданный как 'current'
, 'none'
, триплет RGB, шестнадцатеричный цветовой код или название цвета. Цвет фона управляет цветом поля, которое окружает оси или график.
Значение 'current'
устанавливает цвет фона на цвет родительского контейнера.
Значение 'none'
устанавливает цвет фона прозрачный или белый, в зависимости от формата файла и значения ContentType
:
Прозрачный - Для файлов с ContentType='vector'
Белый - Для файлов изображений или когда ContentType='image'
Когда ContentType='auto'
MATLAB устанавливает цвет фона в соответствии с эвристикой, которую он использует для определения сохраняемого содержимого типа.
Кроме того, задайте пользовательский цвет или именованный цвет.
Триплеты RGB и шестнадцатеричные цветовые коды полезны для определения пользовательских цветов.
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]
; например, [0.4 0.6 0.7]
.
Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#
), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0
на F
. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800'
, '#ff8800'
, '#F80'
, и '#f80'
являются эквивалентными.
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.
Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' | |
'green' | 'g' | [0 1 0] | '#00FF00' | |
'blue' | 'b' | [0 0 1] | '#0000FF' | |
'cyan' | 'c' | [0 1 1] | '#00FFFF' | |
'magenta' | 'm' | [1 0 1] | '#FF00FF' | |
'yellow' | 'y' | [1 1 0] | '#FFFF00' | |
'black' | 'k' | [0 0 0] | '#000000' | |
'white' | 'w' | [1 1 1] | '#FFFFFF' |
Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.
Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|
[0 0.4470 0.7410] | '#0072BD' | |
[0.8500 0.3250 0.0980] | '#D95319' | |
[0.9290 0.6940 0.1250] | '#EDB120' | |
[0.4940 0.1840 0.5560] | '#7E2F8E' | |
[0.4660 0.6740 0.1880] | '#77AC30' | |
[0.3010 0.7450 0.9330] | '#4DBEEE' | |
[0.6350 0.0780 0.1840] | '#A2142F' |
'Colorspace'
- Цветовое пространство'rgb'
(по умолчанию) | 'gray'
| 'cmyk'
Цветовое пространство сохраненного графика, заданное как 'rgb'
, 'gray'
, или 'cmyk'
.
'rgb'
- Экспорт содержимого RGB truecolor.
'gray'
- Преобразуйте содержимое в полутоновый.
'cmyk'
- Преобразуйте содержимое в голубой, пурпурный, желтый и черный (CMYK) перед экспортом содержимого. Это цветовое пространство поддерживается только для файлов EPS.
Наведение мыши на кнопку Export на панели инструментов осей открывает раскрывающееся меню с опциями для экспорта содержимого:
: Сохраните содержимое как плотно обрезанное изображение или PDF.
: Скопируйте содержимое как изображение.
: Скопируйте содержимое как вектор изображение.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.