Как увеличить масштаб в матлабе
Перейти к содержимому

Как увеличить масштаб в матлабе

Как увеличить масштаб в matlab

Иллюстрированный самоучитель по MatLab

  • zoom – переключает состояние режима интерактивного изменения масштаба для текущего графика;
  • zoom (FACTOR) устанавливает масштаб в соответствии с коэффициентом FACTOR;
  • zoom on – включает режим интерактивного изменения масштаба для текущего графика;
  • zoom off – выключает режим интерактивного изменения масштаба для текущего графика;
  • zoom out – обеспечивает полный просмотр, т. е. устанавливает стандартный масштаб графика;
  • zoom xon или zoom yon – включает режим изменения масштаба только по оси х или по оси у;
  • zoom reset – запоминает текущий масштаб в качестве масштаба по умолчанию для данного графика;
  • zoom(FIG,OPTION) – применяется к графику, заданному дескриптором FIG, при этом OPTION может быть любым из перечисленных выше аргументов.

Как увеличить масштаб страницы в Matlab?

Масштабирование изображения в Matlab — интерполяция ближайшего соседа и билинейная интерполяция

Сначала рисуем шероховатую поверхность, а потом по-разному вставляем несколько точек, получившееся изображение будет следующим:

Видно, что разные эффекты интерполяции различаются. Рисунок 1 очень грубый и имеет несколько точек рисования. Рисунок 2 — интерполяция ближайшего соседа, которая дает эффект, аналогичный «шагу». Изогнутая поверхность раньше выглядела более гладкой. Аналогично изображению, изображение, полученное с помощью интерполяции ближайшего соседа, эквивалентно увеличению пикселей, в то время как использование билинейной интерполяции и сферической интерполяции эквивалентно более плавному переходу между пикселями изображения.

Интерполяция ближайшего соседа, значение пиксельной точки, ближайшей к целевой точке, используется в качестве значения интерполяции

Как показано на рисунке, изображение src MxN увеличивается до изображения dst PxQ. Нам нужно создать новый массив PXQ и случайным образом выбрать точку A (i, j) среди пикселей. , Предполагая, что мы используем изображение в градациях серого, каким должно быть значение в градациях серого в точке A?
Сначала мы сопоставляем координаты точки P с исходным изображением (я не знаю, не подходит ли отображение 😂), предполагая, что это точка B, тогда мы можем вычислить B по аналогии с аналогичными свойствами аналогичных треугольников. Координаты точки (x, y): (x, y) = (M/P*i, N/Q*j)
Поскольку индекс массива может быть только целым числом, x и y необходимо преобразовать в целые числа. При использовании интерполяции ближайшего соседа мы можем округлить в большую сторону:

Исходное изображение представляет собой цветное изображение размером 256×256:

После использования интерполяции ближайшего соседа оно становится цветным изображением 768×768 (рекомендуется щелкнуть, чтобы увеличить и наблюдать):

При билинейной интерполяции учитывается не только ближайший пиксель, но и взвешенное значение четырех окружающих пикселей.

Как показано на рисунке, предположим, что все ABCD — это смежные пиксели, а (x, y) попадают в середину.
Влияние расстояния учитывается при интерполяции: чем дальше от пикселя, тем меньше вес, например точка A на рисунке, учитывая, что ABCD представляет собой квадрат со стороной 1, вы можете (1-dx) (1-dy) представляет собой вес серого значения точки A (для подробного доказательства, пожалуйста, обратитесь к блогу большого парня), где dx и dy представляют собой расстояние в направлениях x и y соответственно
Предполагая, что уровни серого в ABCD равны a, b, c и d соответственно, мы можем получить уровень серого в (x, y) как:
i n t e n s i t y = ( 1 − d x ) ( 1 − d y ) a + ( 1 − d x ) d y b + d x ( 1 − d y ) c + d x d y d ) intensity = (1-dx)(1-dy)a + (1-dx)dy b + dx(1-dy) c + dxdy d) i n t e n s i t y = ( 1 − d x ) ( 1 − d y ) a + ( 1 − d x ) d y b + d x ( 1 − d y ) c + d x d y d )
В Matlab координаты ABCD могут быть получены с помощью смелой функции округления,Обратите внимание, что в Matlab массив изображений начинается с 1, он должен быть округлен, а массив находится за пределами

В результате получится изображение 768×768 (рекомендуется щелкнуть, чтобы увеличить и посмотреть):

Как увеличить / уменьшить масштаб в редакторе Matlab?

Мне интересно, есть ли способ увеличить / уменьшить масштаб или изменить размер шрифта или каким-либо образом сделать текст в коде в редакторе Matlab больше / меньше!

3 ответа

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

В зависимости от вашей версии MATLAB откройте окно «Preferences». По крайней мере, в более новых версиях это обычно находится в верхней части главного окна, на панели с надписью «Environment».

В открывшемся окне перейдите на вкладку «Шрифты». Вверху правой части окна вы найдете раскрывающееся меню, содержащее размер шрифта. Это влияет на размер шрифта в командном окне, редакторе и истории команд. Вы также можете изменить шрифт здесь.

Если кто-то еще задает эти вопросы в сообщении поисковой системы 2017 *: следующий код, по-видимому, увеличивает масштаб всего редактора MATLAB в 1,5 раза, но требует перезапуска MATLAB:

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

Режим изменения масштаба позволяет вам исследовать данные путем изменения пределов осей. В релизах до R2018b используйте режим изменения масштаба, чтобы увеличить масштаб или из осей. Включите и выключите режим изменения масштаба и установите другие основные опции, с помощью zoom функция. Чтобы далее управлять поведением режима изменения масштаба, возвратите и используйте объект изменения масштаба.

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

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

Создание

Синтаксис

Описание

zoom option включает или отключает режим изменения масштаба для всех осей в текущей фигуре. Например, zoom on включает режим изменения масштаба, zoom xon включает режим изменения масштаба для x размерности только и zoom off отключает режим изменения масштаба. Для большего количества опций режима изменения масштаба смотрите option .

Когда режим изменения масштаба включен, чтобы увеличить масштаб, расположить ваш курсор, где вы хотите, чтобы центр осей был и или прокрутил или нажатие кнопки. Чтобы уменьшить масштаб, или прокрутить вниз или содержат Shift и нажатие кнопки. Каждое нажатие кнопки увеличивает масштаб или на коэффициент 2. Чтобы масштабировать в прямоугольную область, перетащить. Чтобы возвратить объект осей в его базовый уровень изменения масштаба, дважды кликните в осях.

zoom переключается режим изменения масштаба. Если режим изменения масштаба отключен, то вызов zoom восстанавливает последний раз используемую опцию изменения масштаба on , xon , или yon .

zoom( factor ) масштабирует текущую систему координат заданным фактором изменения масштаба, не влияя на режим изменения масштаба. Увеличение путем определения factor как значение, больше, чем 1. Уменьшение путем определения factor как значение между 0 и 1.

zoom( fig , ___ ) устанавливает режим изменения масштаба для всех осей на заданном рисунке. Задайте дополнительный аргумент как ‘on’ off , ‘out’ сброс , ‘xon’ , ‘yon’ , или фактор изменения масштаба. Например, используйте zoom(fig,’on’) включить режим изменения масштаба для фигуры fig .

z = zoom создает объект изменения масштаба для текущей фигуры. Этот синтаксис полезен для управления режимом изменения масштаба, движением и направлением.

z = zoom( fig ) создает объект изменения масштаба для заданной фигуры.

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

fig — Плановый показатель
Figure объект

Плановый показатель в виде Figure объект.

option — Масштабируйте опцию режима
‘on’ | ‘off’ | ‘out’ | ‘reset’ | ‘xon’ | ‘yon’ | ‘off’

Масштабируйте опцию режима в виде одного из этих значений:

‘on’ – Включите режим изменения масштаба.

‘off’ – Выключите режим изменения масштаба. Некоторые встроенные взаимодействия остаются активированными по умолчанию, независимо от режима. Чтобы отключить встроенные взаимодействия изменения масштаба, используйте disableDefaultInteractivity функция.

‘reset’ – Установите текущий уровень изменения масштаба как базовый уровень изменения масштаба. Если вы устанавливаете базовый уровень изменения масштаба, вызывая zoom out , двойной клик или выбор из панели инструментов осей возвращает оси в этот уровень изменения масштаба.

‘out’ – Возвратите текущую систему координат в его базовый уровень изменения масштаба.

‘xon’ – Включите режим изменения масштаба для x размерности только.

‘yon’ – Включите режим изменения масштаба для y размерности только.

factor — Фактор изменения масштаба
положительное число

Фактор изменения масштаба в виде положительного числа. Увеличение путем определения factor как положительное число, больше, чем 1. Уменьшение путем определения factor как положительное число между 0 и 1. В этом случае оси уменьшают масштаб 1/factor .

Свойства

Motion — Размерность
‘both’ (значение по умолчанию) | ‘horizontal’ | ‘vertical’

Размерность, чтобы позволить увеличивать и уменьшать масштаб в виде одного из этих значений:

‘both’ – Позвольте увеличивать масштаб размерности X и Y .

‘horizontal’ – Позвольте увеличивать масштаб x размерность только.

‘vertical’ – Позвольте увеличивать масштаб y размерность только.

Это свойство только влияет на оси в 2D представлении, такой как тогда, когда вы вызываете view([0 90]) . Чтобы управлять размерностью изменения масштаба в 3-D представлениях, используйте ZoomInteraction объект.

Direction — Направление
‘in’ (значение по умолчанию) | ‘out’

Направление изменения масштаба в виде одного из этих значений:

‘in’ – Щелкните, чтобы увеличить масштаб.

‘out’ – Щелкните, чтобы уменьшить масштаб.

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

Enable — Режим Zoom
‘off’ (значение по умолчанию) | ‘on’

Масштабируйте режим в виде ‘off’ или ‘on’ .

ContextMenu — Контекстное меню
пустой GraphicsPlaceholder массив (значение по умолчанию) | ContextMenu объект

Контекстное меню в виде ContextMenu объект. Используйте это свойство отобразить контекстное меню, когда вы щелкаете правой кнопкой по осям, где режим изменения масштаба включен. Создайте контекстное меню с помощью uicontextmenu функция.

Это свойство не оказывает влияния если RightClickAction свойство имеет значение ‘InverseZoom’ .

RightClickAction — Действие, чтобы выполнить, когда вы щелкаете правой кнопкой мыши
‘PostContextMenu’ (значение по умолчанию) | ‘InverseZoom’

Действие, чтобы выполнить, когда вы щелкаете правой кнопкой в виде одного из этих значений:

‘PostContextMenu’ – Отобразите контекстное меню.

‘InverseZoom’ – Уменьшите масштаб, когда вы щелкнете правой кнопкой.

Установка RightClickAction наборы свойств значение по умолчанию для будущих объектов изменения масштаба. Значение RightClickAction сохраняется между MATLAB ® сеансы.

ActionPreCallback — Функция, чтобы выполниться перед изменением масштаба
[] (значение по умолчанию) | указатель на функцию | массив ячеек | вектор символов

Функция, чтобы выполниться прежде, чем масштабировать в виде одного из этих значений:

Указатель на функцию

Массив ячейки, содержащий указатель на функцию и дополнительные аргументы

Вектор со строкой символов, являющийся действительной командой или функцией MATLAB, которая оценивается в базовом рабочем пространстве (не рекомендуется)

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

figure — Объект фигуры, в котором вы масштабируете.

axesStruct — Структура, которая содержит оси, в которых вы масштабируете. Эта структура имеет одно поле, Axes , объект осей, в котором вы масштабируете. Если вы не используете этот аргумент в своей функции обратного вызова, то замените его на символ тильды (

Для получения дополнительной информации о коллбэках, см. Определение Коллбэка.

ActionPostCallback — Функция, чтобы выполниться после изменения масштаба
[] (значение по умолчанию) | указатель на функцию | массив ячеек | вектор символов

Функция, чтобы выполниться после изменения масштаба в виде одного из этих значений:

Указатель на функцию

Массив ячейки, содержащий указатель на функцию и дополнительные аргументы

Вектор со строкой символов, являющийся действительной командой или функцией MATLAB, которая оценивается в базовом рабочем пространстве (не рекомендуется)

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

figure — Объект фигуры, в котором вы масштабируете.

axesStruct — Структура, которая содержит оси, в которых вы масштабируете. Эта структура имеет одно поле, Axes , объект осей, в котором вы масштабируете. Если вы не используете этот аргумент в своей функции обратного вызова, то замените его на символ тильды (

Для получения дополнительной информации о коллбэках, см. Определение Коллбэка.

ButtonDownFilter — Масштабируйте коллбэк подавления
[] (значение по умолчанию) | указатель на функцию | массив ячеек | вектор символов

Масштабируйте коллбэк подавления в виде одного из этих значений:

Указатель на функцию

Массив ячейки, содержащий указатель на функцию и дополнительные аргументы

Вектор со строкой символов, являющийся действительной командой или функцией MATLAB, которая оценивается в базовом рабочем пространстве (не рекомендуется)

Используйте это свойство подавить изменение масштаба при условиях, которые вы задаете. Числовой или логический выход 1 ( true ) подавляет изменение масштаба и числовой или логический выход 0 ( false ) позволяет масштабировать. Если вы задаете это свойство с помощью указателя на функцию, то MATLAB передает два аргумента функции обратного вызова:

axes — Объект осей, в котором вы масштабируете.

eventData — Пустой аргумент. Замените его на символ тильды (

) в функциональном определении, чтобы указать, что этот аргумент не используется.

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

Для получения дополнительной информации о коллбэках, см. Определение Коллбэка.

FigureHandle — Объект Figure
Figure объект

Это свойство доступно только для чтения.

Figure возразите, что вы задали при создании объекта изменения масштаба. Если вы не задавали фигуру, то FigureHandle фигура, которая была текущей, когда вы создали объект изменения масштаба.

UseLegacyExplorationModes — Устаревший режим
‘off’ (значение по умолчанию) | логическое значение включения — выключения

Устаревший режим в виде ‘on’ или ‘off’ , или как числовой или логический 1 TRUE ) или 0 ложь ). Значение ‘on’ эквивалентно true , и ‘off’ эквивалентно false . Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения — выключения типа matlab.lang.OnOffSwitchState .

Установка этого свойства к ‘on’ изменяет поведение режимов взаимодействия в фигурах пользовательского интерфейса, таким образом, они совпадают с поведением режимов на традиционных рисунках. Для получения дополнительной информации смотрите enableLegacyExplorationModes .

Если это свойство установлено в ‘on’ , это не может быть возвращено к ‘off’ .

Это свойство только применяется к объектам изменения масштаба для фигур, созданных с помощью uifigure функционируйте или в MATLAB Online™ .

Функции объекта

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

setAllowAxesZoom(z,ax,tf) устанавливает режим изменения масштаба для объекта осей ax согласно логическому значению в tf . Оба ax и tf должны быть скаляры.

Включение изменения масштаба для осей с помощью setAllowAxesZoom не включает изменение масштаба для фигуры. Для этого установите Enable свойство объекта изменения масштаба.

tf = isAllowAxesZoom(z,ax) возвращает режим изменения масштаба для объектов осей в векторном ax как логический векторный tf . Размер tf совпадает с ax .

Возврат режима изменения масштаба осей с помощью isAllowAxesZoom не возвращает режим изменения масштаба для фигуры. Для этого получите доступ к Enable свойство объекта изменения масштаба.

setAxesZoomConstraint(z,ax,d) устанавливает размерность изменения масштаба для скалярного объекта осей ax согласно значению размерности d . Задайте размерность как одно из этих значений: ‘x’ Y Z x, y , ‘xz’ , ‘yz’ , или ‘unconstrained’ . Например, setAxesZoomConstraint(z,ax,’xy’) позволяет вам увеличивать масштаб размерности X и Y только.

Установка размерности изменения масштаба для осей с помощью setAxesZoomConstraint не устанавливает размерность изменения масштаба для фигуры. Для этого установите Motion свойство объекта изменения масштаба.

d = getAxesZoomConstraint(z,ax) возвращает размерность изменения масштаба d для скалярного объекта осей ax как ‘x’ Y Z x, y , ‘xz’ , ‘yz’ , или ‘unconstrained’ .

Возврат размерности изменения масштаба осей с помощью getAxesZoomConstraint не возвращает размерность изменения масштаба для фигуры. Для этого получите доступ к Motion свойство объекта изменения масштаба.

setAxes3DPanAndZoomStyle(z,ax,s) устанавливает стиль изменения масштаба s для объектов осей в векторном ax . По умолчанию стилем изменения масштаба является ‘limits’ , который масштабирует путем изменения пределов осей. Задайте стиль изменения масштаба как ‘camera’ масштабировать путем изменения угла поля зрения камеры. Например, используйте setAxes3DPanAndZoomStyle(z,ax,’camera’) .

Для получения дополнительной информации об угле поля зрения камеры, смотрите Терминологию Графики Камеры.

s = getAxes3DPanAndZoomStyle(z,ax) возвращает стиль изменения масштаба для объектов осей в векторном ax как символьный массив ячеек s . Элементы s возвращены как ‘limits’ или ‘camera’ .

setAxesZoomMotion (не рекомендуемый)

Эта функция не рекомендуется. Используйте setAxesZoomConstraint вместо этого.

setAxesZoomMotion(z,ax,d) устанавливает размерность изменения масштаба d для объектов осей в векторном ax . Задайте размерность изменения масштаба как ‘horizontal’ , ‘vertical’ , или ‘both’ .

Оси масштабируют размерность, которая установлена setAxesZoomMotion различный как размерность изменения масштаба фигуры, которая установлена с помощью Motion свойство.

getAxesZoomMotion (не рекомендуемый)

Эта функция не рекомендуется. Используйте setAxesZoomConstraint вместо этого.

d = getAxesZoomMotion(z,ax) возвращает размерности изменения масштаба для объектов осей в векторном ax как символьный массив ячеек d . Элементы d возвращены как ‘horizontal’ , ‘vertical’ , или ‘both’ .

Оси масштабируют размерность, которая возвращена с помощью getAxesZoomMotion различный как размерность изменения масштаба фигуры, которая возвращена с помощью Motion свойство.

Примеры

Установите базовый уровень изменения масштаба

Отобразите на графике некоторые данные, увеличение, и затем установите базовый уровень изменения масштаба. Будущее вызывает к zoom out возвратите оси в базовый уровень изменения масштаба, который вы устанавливаете.

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

A surface with several peaks

Масштабируйте в самый высокий пик путем нажатия на него. Затем установите базовый уровень изменения масштаба.

The surface zoomed into the tallest peak

Масштабируйте в самый высокий пик во второй раз, затем вызовите zoom out .

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

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