dsp. ArrayPlot

Отобразите векторы или массивы

Описание

dsp. Система ArrayPlot object™ отображает векторы или массивы, где данные однородно расположены с интервалами вдоль оси X.

Отобразить векторы или массив на Графике Массивов:

  1. Создайте объект dsp.ArrayPlot и установите его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

scope = dsp.ArrayPlot
scope = dsp.ArrayPlot(Name,Value)

Описание

пример

scope = dsp.ArrayPlot создает Системный объект Графика Массивов, scope.

scope = dsp.ArrayPlot(Name,Value) свойства наборов с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в одинарные кавычки. Например, scope = dsp.ArrayPlot('NumInputPorts',3)

Свойства

развернуть все

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Постройте настройку

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

Задайте, использовать ли SampleIncrement и значения свойств XOffset, чтобы определить интервал или задать ваш собственный интервал. Если вы задаете 'Custom', также необходимо задать значения свойств CustomXData.

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор X-data mode.

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

Задайте желаемый x - значения данных как строка или вектор-столбец длины, равной длине кадра входных параметров. Если вы используете значение по умолчанию (пустой вектор) значение, x - данные однородно расположены с интервалами и установлены в (0:L–1), где L является длиной кадра.

Пример: scope = dsp.ArrayPlot('XDataMode','Custom','CustomXData',logspace(0,log10(44100/2),1024))

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор Custom X-Data.

Зависимость

Чтобы использовать это свойство, установите XDataMode на 'Custom'.

Задайте интервал между выборками вдоль x - ось в виде конечного числа. Входным сигналом является только y - данные оси. x - данные оси установлены автоматически на основе свойств XOffset и SampleIncrement. Например, когда Xoffset 0, и SampleIncrement равняется 1, x - данные для входного сигнала установлены в 0, 1, 2, 3, 4, и т.д. Если вы устанавливаете SampleIncrement на 0,25, x - данные оси становятся 0, 0.25, 0.5, 0.75, 1, и т.д.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор Sample increment.

Задайте смещение, чтобы отобразиться на x - ось. Это свойство является скаляром

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор X-offset.

Задайте, является ли шкалой x - ось 'Linear' или 'Log'. Если XOffset является отрицательной величиной, вы не можете установить это свойство на 'Log'.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор X-axis scale.

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

Задайте, является ли шкалой y - ось 'Linear' или 'Log'.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор Y-axis scale.

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

Задайте тип графика использовать для всех входных сигналов, отображенных в окне scope:

  • 'Stem' – осциллограф отображает входной сигнал как круги с вертикальными строками, расширяющими вниз к x - ось в каждом из выбранных значений. Эта опция подобна функции stem.

  • строка Осциллограф отображает входной сигнал как строки, соединяющие каждое из выбранных значений. Эта опция подобна функциям plot или line.

  • лестница Осциллограф отображает входной сигнал как ступенчатый график. Ступенчатый график составлен только из горизонтальных строк и вертикальных строк. Каждая горизонтальная строка представляет значение сигналов в течение дискретного демонстрационного периода и соединяется с двумя вертикальными строками. Каждая вертикальная строка представляет изменение в значениях, происходящих на выборке. Эта опция подобна функции stairs. Ступенчатые графики полезны для рисования графиков истории времени в цифровой форме выборочных данных.

Использование пользовательского интерфейса

Откройте диалоговое окно Style и установите Plot type.

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

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

  • 'auto' Осциллограф масштабирует оси по мере необходимости, чтобы соответствовать данным, обоим в течение и после симуляции.

  • "Manual" — Осциллограф не масштабирует оси автоматически.

  • "OnceAtStop" — Осциллограф масштабирует оси, когда симуляция останавливается.

  • "Updates" — Осциллограф масштабирует оси однажды и только однажды после 10 обновлений.

Использование пользовательского интерфейса

Выберите Tools> Axes Scaling.

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

Визуализация

Задайте имя осциллографа. Это имя появляется как заголовок окна рисунка осциллографа. Чтобы задать заголовок графика осциллографа, используйте свойство Title.

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

Задайте, в пикселях, размере и местоположении окна scope как четырехэлементный вектор формы [left bottom width height]. По умолчанию окно scope появляется в центре вашего экрана с шириной пикселей 800 и высотой пикселей 450. Значения по умолчанию для этого свойства могут измениться в зависимости от вашего разрешения экрана.

  • tRUE Данные логов осциллографа для дальнейшего использования и обновлений окно периодически.

  • ложь Осциллограф обновляет каждый раз, когда осциллограф называется.

Скорость симуляции быстрее, когда это свойство установлено в true.

Настраиваемый: да

Использование пользовательского интерфейса

Выберите Simulation> Reduce Updates to Improve Performance.

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

  • 'auto' Оси кажутся максимизируемыми во всех отображениях, только если свойства Title и YLabel пусты для каждого отображения. Если вы вводите значение в какое-либо отображение для любого из этих свойств, оси не максимизируются.

  • "On" — Оси кажутся максимизируемыми во всех отображениях. Любые значения ввели в свойства Title и YLabel, скрыты.

  • 'off' Ни одна из осей не кажется максимизируемой.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Main, набор Maximize axes.

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

Задайте заголовок отображения вектора символов или строки.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. Установите Title.

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

Чтобы показать легенду с входными именами, установите это свойство на true.

От легенды можно управлять, какие сигналы видимы. Это управление эквивалентно изменению видимости в диалоговом окне Style. В легенде scope кликните по имени сигнала, чтобы скрыть сигнал в осциллографе. Чтобы показать сигнал, кликните по имени сигнала снова. Чтобы показать только один сигнал, щелкните правой кнопкой по имени сигнала. Чтобы показать все сигналы, нажмите Esc.

Примечание

Легенда только показывает первые 20 сигналов. Любые дополнительные сигналы нельзя просмотреть или управлять от легенды.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Display выберите Show legend.

Типы данных: логический

Задайте входные названия канала как массив ячеек из символьных векторов. Имена появляются в легенде, диалоговом окне Style и панелях Measurements. Если вы не задаете имена, каналы маркированы как Channel 1, Channel 2, и т.д.

Настраиваемый: да

Зависимость

Чтобы видеть названия канала, установите ShowLegend на true.

Использование пользовательского интерфейса

На легенде дважды кликните название канала.

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

Установите это свойство на true показывать линии сетки на графике.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Display, набор Show grid.

Когда вы устанавливаете это свойство на true, осциллограф строит значение и фазу входного сигнала на двух отдельных осях в том же активном дисплее. Когда вы устанавливаете это свойство на false, осциллограф строит действительные и мнимые части входного сигнала на двух отдельных осях в том же активном дисплее.

Это свойство полезно для входных сигналов с комплексным знаком. Включение этого свойства влияет на фазу для входных сигналов с действительным знаком. Когда амплитуда входного сигнала является неотрицательной, фаза является 0 градусами. Когда амплитуда входного сигнала отрицательна, фаза является 180 градусами.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Display выберите Plot signals as magnitude and phase.

Задайте текст для осциллографа, чтобы отобразиться ниже x - ось.

Настраиваемый: да

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Display, набор X-label.

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

Задайте текст для осциллографа, чтобы отобразиться слева от y - ось.

Настраиваемый: да

Зависимости

Это свойство применяется только, когда PlotAsMagnitudePhase является false. Когда PlotAsMagnitudePhase является true, два y - подписи по осям являются значениями только для чтения. y - подписи по осям установлены в "Magnitude" и "Phase" для графика значения и графика фазы, соответственно.

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Display, набор Y-Label.

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

Задайте y - пределы по осям как двухэлементный числовой вектор, [ymin, ymax].

Если PlotAsMagnitudePhase является false, значением по умолчанию является [-10,10]. Если PlotAsMagnitudePhase является true, значением по умолчанию является [0,10].

Настраиваемый: да

Зависимости

Когда PlotAsMagnitudePhase является true, это свойство задает y - пределы по осям только графика значения. y - пределами по осям графика фазы всегда является [-180,180].

Использование пользовательского интерфейса

Откройте Configuration Properties. На вкладке Display, набор Y-limits (Minimum) и Y-limits (Maximum).

Использование

Для версий ранее, чем R2016b, используйте функцию step, чтобы запустить алгоритм Системного объекта. Аргументы к step являются объектом, который вы создали, сопровождаемый аргументами, показанными в этом разделе.

Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Синтаксис

scope(signal)
scope(signal1,signal2,...,signalN)

Описание

пример

scope(signal) отображает сигнал в Графике Массивов.

scope(signal1,signal2,...,signalN) отображения несколько сигналов в Графике Массивов. Сигналы должны иметь ту же длину кадра, но могут отличаться по количеству каналов. Необходимо установить свойство NumInputPorts включить несколько входных сигналов.

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

развернуть все

Задайте один или несколько входных сигналов, чтобы визуализировать в dsp.ArrayPlot. Сигналы могут иметь различное количество каналов, но у них должна быть та же длина кадра.

Пример: scope(signal1, signal2)

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

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

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

showОтобразите окно scope
hideСкройте окно scope
isVisibleОпределите видимость осциллографа
stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

развернуть все

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов объекта с эквивалентным синтаксисом step. Например, myObject(x) становится step(myObject,x).

Создайте новый объект Array Plot.

scope = dsp.ArrayPlot;

Сконфигурируйте свойства объекта Array Plot для Распределения Гаусса.

scope.YLimits = [0 1];
scope.XOffset = -2.5;
scope.SampleIncrement = 0.1;
scope.Title = 'Gaussian distribution';
scope.XLabel = 'X';
scope.YLabel = 'f(X)';

Вызовите объект Array Plot построить Распределение Гаусса.

scope(exp(-(-2.5:.1:2.5).*(-2.5:.1:2.5))')

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов объекта с эквивалентным синтаксисом step. Например, myObject(x) становится step(myObject,x).

Просмотрите наименьшее количество средних квадратичных (LMS) адаптивные веса фильтра на фигуре Графика Массивов. См., что веса фильтра изменяются, когда они адаптируются, чтобы отфильтровать шумный входной сигнал.

Создайте адаптивный Системный объект фильтра LMS.

lmsFilter = dsp.LMSFilter(40,'Method','Normalized LMS','StepSize',0.002);

Создайте и сконфигурируйте dsp. Системный объект AudiFileReader, чтобы считать входной сигнал из заданного звукового файла.

signalSource = dsp.AudioFileReader('dspafxf_8000.wav',...
    'SamplesPerFrame',40, ...
    'PlayCount',Inf,...
    'OutputDataType','double');

Создайте и сконфигурируйте dsp. Системный объект FIRFilter, чтобы отфильтровать случайный белый шум, создавая окрашенный шумом.

firFilter = dsp.FIRFilter('Numerator',fir1(39,0.25));

Создайте и сконфигурируйте Системный объект Графика Массивов, чтобы отобразить адаптивные веса фильтра.

scope = dsp.ArrayPlot('XLabel','Filter Tap', ...
    'YLabel','Filter Weight', ...
    'YLimits',[-0.05 0.2]');

Постройте веса фильтра LMS, когда они адаптируются к желаемому сигналу. Читайте из звукового файла, произведите случайные данные и отфильтруйте случайные данные. Обновите веса фильтра и постройте веса фильтра.

numplays = 0;
while numplays < 3
    [y, eof]    = signalSource();
    noise       = rand(40,1);
    noisefilt   = firFilter(noise);
    desired     = y + noisefilt;
    [~, ~, wts] = lmsFilter(noise,desired);
    scope(wts);
    numplays = numplays + eof;
end

Советы

  • Чтобы закрыть окно Array Plot и очистить его связанные данные, используйте функцию MATLAB® clear.

  • Чтобы скрыть или показать окно Array Plot, используйте функции show и hide.

  • Используйте функцию mcc, чтобы скомпилировать код, содержащий График Массивов.

Расширенные возможности

Введенный в R2013a

Для просмотра документации необходимо авторизоваться на сайте