MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем
 

Обработка сигналов и изображений\Communications Toolbox

Список функций CommunicationsToolbox: Функции анализа сигналов

  В оглавление \ К следующему разделу \ К предыдущему разделу

SCATTERPLOT
Вывод диаграммы рассеяния

Синтаксис:

scatterplot(x);
scatterplot(x,n);
scatterplot(x,n,offset);
scatterplot(x,n,offset,plotstring);
scatterplot(x,n,offset,plotstring,h);
h = scatterplot(...);

Описание:

scatterplot(x)

Вывод диаграммы рассеяния для сигнала x. Интерпретация массива x зависит от его размера и наличия мнимой части:

  • если x — вещественная двухстолбцовая матрица, функция scatterplot интерпретирует первый столбец как синфазную, а второй — как квадратурную составляющую;
  • если x — комплексный вектор, функция scatterplot интерпретирует его вещественную часть как синфазную, а мнимую — как квадратурную составляющую;
  • если x — вещественный вектор, функция scatterplot интерпретирует его как вещественный сигнал (то есть в данном случае квадратурная составляющая равна нулю).

scatterplot(x,n)

То же, что и предыдущий вариант синтаксиса, но при построении графика используется только каждый n-й отсчет сигнала, начиная с первого (то есть перед формированием графика выполняется прореживание сигнала x с коэффициентом n).

scatterplot(x,n,offset)

То же, что и первый вариант синтаксиса, но при построении графика используется только каждый n-й отсчет сигнала x, начиная с отсчета с номером (offset+1).

scatterplot(x,n,offset,plotstring)

То же, что и предыдущий вариант синтаксиса, но параметр plotstring задает символы точек, тип линии и цвет для графика. Параметр plotstring — это строка, формат и назначение элементов которой те же самые, что и в функции plot.

scatterplot(x,n,offset,plotstring,h)

То же, что и предыдущий вариант синтаксиса, но вместо создания нового графического окна график создается в существующем окне с дескриптором h. Параметр h должен быть дескриптором графического окна, ранее созданного функцией scatterplot. Для вывода нескольких сигналов в одном окне используйте команду hold on.

h = scatterplot(...)

То же, что предыдущие варианты синтаксиса, с возвратом дескриптора окна, содержащего график, в выходном параметре h.

Примеры.

Приведенный ниже код отображает случайный цифровой сигнал в точки 16-точечного созвездия квадратурной манипуляции. Затем с помощью фильтра с косинусоидальным сглаживанием АЧХ имитируются искажения, вносимые каналом связи. Несколько команд выделяют из фильтрованного сигнала фрагмент, соответствующий установившемуся состоянию. Наконец, для результирующего сигнала выводится диаграмма рассеяния.

% Число точек созвездия и частоты дискретизации
M = 16; Fd = 1; Fs = 10;
% Число отсчетов сигнала
Pd = 200;
% Случайные целые числа в диапазоне [0,M-1]
msg_d = randint(Pd,1,M);
% Преобразование целых чисел в параметры квадратурной модуляции
msg_a = modmap(msg_d,Fd,Fs,'qask',M);
% Пусть канал связи описывается фильтром
% с косинусоидальным сглаживанием АЧХ
rcv = rcosflt(msg_a,Fd,Fs);
% Создаем диаграмму рассеяния для принятого сигнала,
% игнорируя три первых и четыре последних символа
N = Fs/Fd;
rcv_a = rcv(3*N+1:end-4*N,:);
h = scatterplot(rcv_a,N,0,'bx');

Третий параметр функции scatterplot определяет смещение точек взятия отсчетов при прореживании. Нулевое смещение дает оптимальные результаты (левая диаграмма).

Правая диаграмма построена с помощью команд, приведенных ниже. Крестики и плюсы на диаграмме показывают два неоптимальных варианта смещения (в одном случае отсчеты берутся слишком рано, в другом — слишком поздно). Обратите внимание на то, что отсчеты, взятые вовремя (на правой диаграмме они отображаются точками), совпадают с точками используемого созвездия, а крестики и плюсы разбросаны вблизи этих точек.

hold on;
scatterplot(rcv_a,N,N+1,'r+',h); % Запаздывание (плюсы)
scatterplot(rcv_a,N,N-1,'mx',h); % Опережение (крестики)
scatterplot(rcv_a,N,0,'b.',h); % Отсчеты взяты вовремя (точки)

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

Использование диаграмм рассеяния иллюстрируется демонстрационной программой scattereyedemo.

Сопутствующие функции: eyediagram, plot, hold.

  В оглавление \ К следующему разделу \ К предыдущему разделу

 

Поиск по сайту:

Система Orphus

Яндекс.Метрика