Spec-Zone.ru › Octave 7

15.2.7 Управление окнами графиков

По умолчанию Octave обновляет окно графика при выводе приглашения или при ожидании ввода. Функция drawnow используется для обновления окна графика.

: drawnow () ¶
: drawnow ("expose") ¶
: drawnow (term, file, debug_file) ¶

Обновление окон фигур и их дочерних элементов.

Очередь событий обрабатывается, и выполняются любые сгенерированные обратные вызовы.

С необязательным аргументом "expose", обновляются только графические объекты, и никакие другие события или обратные вызовы не обрабатываются.

Третья форма вызова drawnow предназначена для отладки и не документирована.

См. также: refresh.

Будут обновлены только измененные фигуры. Функция refresh также может использоваться для обновления текущей фигуры, даже если она не была изменена.

: refresh () ¶
: refresh (h) ¶

Обновить фигуру, заставив ее перерисоваться.

При вызове без аргумента перерисовывается текущая фигура. В противном случае перерисовывается фигура с графическим идентификатором h.

См. также: drawnow.

Обычно функции построения графиков высокого уровня, такие как plot или mesh, вызывают newplot, чтобы определить, следует ли инициализировать состояние целевых осей (по умолчанию) или последующие графики должны быть нарисованы поверх предыдущих. Чтобы нарисовать два графика поверх друг друга, используйте функцию hold или вручную измените свойство осей nextplot. Например,

hold on;
x = -10:0.1:10;
plot (x, sin (x));
plot (x, cos (x));
hold off;

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

: newplot () ¶
: newplot (hfig) ¶
: newplot (hax) ¶
: hax = newplot (…) ¶

Подготавливает графический движок для создания нового графика.

Эта функция вызывается в начале всех функций построения графиков высокого уровня. Обычно она не требуется в пользовательских программах. newplot запрашивает поле "NextPlot" текущей фигуры и осей, чтобы определить, что делать.

NextPlot фигуры Действие
"new" Создать новую фигуру и сделать ее текущей.
"add" (по умолчанию) Добавить новые графические объекты в текущую фигуру.
"replacechildren" Удалить дочерние объекты, для которых HandleVisibility установлено в "on". Установить свойство NextPlot в "add". Это обычно очищает фигуру, но оставляет невидимые объекты, такие как меню. Эквивалентно clf.
"replace" Удалить все дочерние объекты фигуры и сбросить все свойства фигуры до их значений по умолчанию. Однако следующие четыре свойства не сбрасываются: Position, Units, PaperPosition, PaperUnits. Эквивалентно clf reset.
NextPlot осей Действие
"add" Добавить новые графические объекты на текущую ось. Эквивалентно hold on.
"replacechildren" Удалить дочерние объекты, для которых HandleVisibility установлено в "on", но оставить свойства осей без изменений. Это обычно очищает график, но сохраняет такие специальные настройки, как масштабирование по логарифмической шкале для осей. Эквивалентно cla.
"replace" (по умолчанию) Удалить все дочерние объекты осей и сбросить все свойства осей до их значений по умолчанию. Однако следующие свойства не сбрасываются: Position, Units. Эквивалентно cla reset.

Если указан необязательный вход hfig или hax, то подготавливается указанная фигура или ось, а не текущая фигура и ось.

Необязательное возвращаемое значение hax — графический идентификатор созданного объекта осей (не фигуры).

Внимание: Вызов newplot может изменить текущую фигуру и текущую ось.

: hold ¶
: hold on ¶
: hold off ¶
: hold (hax, …) ¶

Переключить или установить состояние "hold" графического движка, которое определяет, добавляются ли новые графические объекты к графику или заменяют существующие объекты.

hold on

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

hold all (deprecated)

Эквивалентно hold on.

hold off

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

hold

Переключить текущее состояние hold.

Если задан дополнительный аргумент hax, то состояние hold изменяется для этой оси, а не для текущей оси, возвращаемой функцией gca.

Для запроса текущего состояния hold используйте функцию ishold.

См. также: ishold, cla, clf, newplot.

: ishold ¶
: ishold (hax) ¶
: ishold (hfig) ¶

Возвращает true, если следующий график будет добавлен к текущему, или false, если устройство графика будет очищено перед отрисовкой следующего графика.

Если первый аргумент — идентификатор оси hax или идентификатор фигуры hfig, то операции выполняются для этого графика, а не для текущего.

См. также: hold, newplot.

Для очистки текущей фигуры вызовите функцию clf. Для очистки текущей оси вызовите функцию cla. Для вывода текущей фигуры в верхней части стека окон вызовите функцию shg. Для удаления графического объекта вызовите функцию delete для его индекса. Для закрытия окна фигуры вызовите функцию close.

: clf ¶
: clf reset ¶
: clf (hfig) ¶
: clf (hfig, "reset") ¶
: h = clf (…) ¶

Очистка текущего окна фигуры.

clf выполняется путем удаления дочерних графических объектов с видимыми идентификаторами (HandleVisibility = "on").

Если задан необязательный аргумент "reset", удаляются все дочерние объекты, включая те, у которых скрыты идентификаторы, и все свойства фигуры сбрасываются до значений по умолчанию. Однако следующие свойства не сбрасываются: Position, Units, PaperPosition, PaperUnits.

Если первый аргумент hfig — идентификатор фигуры, то операция выполняется для этой фигуры, а не для текущей фигуры, возвращаемой gcf.

Необязательное возвращаемое значение h — графический идентификатор очищенного окна фигуры.

См. также: cla, close, delete, reset.

: cla ¶
: cla reset ¶
: cla (hax) ¶
: cla (hax, "reset") ¶

Очистить текущий или указанный (hax) объект осей.

cla выполняется путем удаления графических объектов-потомков с видимыми дескрипторами (HandleVisibility = "on"). Это обычно очищает оси от визуальных объектов, но оставляет на месте пределы осей, деления и подписи, вид камеры и т.д. Кроме того, автоматическая окраска и стилизация линий сбрасывается путем изменения свойств осей ColorOrderIndex, LinestyleOrderIndex до 1.

Если указан необязательный аргумент "reset", удаляются все объекты-потомки, включая объекты с скрытыми дескрипторами, и сбрасываются все свойства осей до их значений по умолчанию. Однако следующие свойства не сбрасываются: Position, Units.

Если первый аргумент hax является дескриптором осей, то операция выполняется над этими осями, а не над текущими осями, возвращаемыми gca.

См. также: clf, delete, reset.

: shg ¶

Показать окно графика.

Эта функция делает текущую фигуру видимой и помещает ее поверх всех других окон графиков.

Примечание по программированию: shg эквивалентно figure (gcf), предполагая, что текущая фигура существует.

См. также: figure, drawnow, gcf.

: delete (file) ¶
: delete (file1, file2, …) ¶
: delete (handle) ¶

Удалить указанный файл или дескриптор графического объекта.

file может содержать шаблоны подстановки, такие как ‘*’. Несколько файлов для удаления могут быть указаны в одном вызове функции.

handle может быть скаляром или вектором дескрипторов графических объектов для удаления.

Примечание по программированию: Удаление графических объектов — это правильный способ удаления элементов из графика без очистки всей фигуры.

См. также: clf, cla, unlink, rmdir.

: close ¶
: close (h) ¶
: close figname ¶
: close all ¶
: close all hidden ¶
: close all force ¶

Закрыть окно(а) фигуры.

Если вызов осуществляется без аргументов, закрывается текущая фигура. Это эквивалентно close (gcf). Если вход h является дескриптором графического объекта или вектором дескрипторов графических объектов, то закрывается каждая фигура в h. Фигуру для закрытия также можно указать по имени figname, которое сопоставляется со свойством "Name" всех фигур.

Если указан аргумент "all", закрываются все фигуры с видимыми дескрипторами (HandleVisibility = "on").

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

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

Примечание по реализации: close выполняет присвоение дескриптора h текущей фигуре и затем вызывает функцию, указанную свойством "closerequestfcn" фигуры. По умолчанию используется функция closereq. Возможно, вызываемая функция будет задерживать или прерывать удаление фигуры. Чтобы удалить фигуру без выполнения каких-либо функций обратного вызова, используйте delete. При написании функции обратного вызова для закрытия окна не используйте close, чтобы избежать рекурсии.

См. также: closereq, delete.

: closereq () ¶

Закрыть текущую фигуру и удалить все графические объекты, связанные с ней.

По умолчанию свойство "closerequestfcn" новой фигуры графика указывает на эту функцию.

См. также: close, delete.

© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v7.2.0/Manipulation-of-Plot-Windows.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API