polarpattern class

Интерактивный график диаграмм направленности в полярном формате

Описание

polarpattern класс строит антенну или диаграммы направленности массивов в интерактивном полярном формате. Можно также построить другие типы полярных данных. Используйте эти графики, когда интерактивная визуализация данных или измерение будут требоваться. Щелкните правой кнопкой по окну Polar Measurement, чтобы изменить свойства, увеличить масштаб или добавить больше данных в график.

Конструкция

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

пример

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

пример

polarpattern(angle,magnitude) создает полярный график из набора угловых векторов и соответствующих величин. Можно также создать графики в полярной системе координат из нескольких наборов для угловых векторов и соответствующих наборов величины с помощью синтаксиса: polarpattern(angle1, magnitude1, angle2, magnitude2...).

p = polarpattern(___) возвращает указатель на объект, который можно использовать, чтобы настроить график или добавить измерения. Можно задать любой из аргументов от предыдущих синтаксисов.

p = polarpattern('gco') возвращает указатель на объект в полярный шаблон в текущей фигуре.

пример

polarpattern(___,Name,Value) создает полярный график, с дополнительными свойствами, заданными одним или несколькими аргументами пары "имя-значение". Name имя свойства и Value соответствующее значение свойства. Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1, Value1, ..., NameN, ValueN. Свойства, не заданные, сохраняют свои значения по умолчанию. Перечислять все свойство Name,Value пары, используйте details(p). Перечислять все свойство Name,Value пары, используйте details(p). Можно использовать свойства извлечь любые данные из диаграммы направленности из полярного графика. Например, p = polarpattern(data,'Peaks',3) идентифицирует и отображает три самых высоких peaks в данных о шаблоне.

Для списка свойств смотрите PolarPattern Properties.

polarpattern(ax,___) создает полярный график с помощью указателя осей, ax вместо указателя текущей системы координат.

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

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

Антенна или данные массива, заданные как одно из следующего:

  • Действительный вектор длины-M, где M содержит значения величины с углами, принятыми, чтобы быть (0:M1)M×360 степени.

  • Действительный M-by-N матрица, где M содержит значения величины и N, содержит независимые наборы данных. Каждому столбцу в матрице взяли углы из вектора (0:M1)M×360 степени.

  • Действительный массив N-D, где N является количеством размерностей. Массивы с размерностями 2 и больше независимые наборы данных.

  • Комплексный вектор или матрица, где data содержит Декартовы координаты (x, y) каждой точки. x содержит действительное (data) и y содержит мнимое (data).

Когда данные находятся в логарифмической форме, такой как дБ, значения величины могут быть отрицательными. В этом случае, polarpattern строит наименьшие значения величины в начале координат полярного графика и самые большие значения величины в максимальном радиусе.

Набор углов, заданных как вектор в градусах.

Набор значений величины, заданных как вектор или матрица. Для матрицы значений величины каждый столбец является независимым набором значений величины и соответствует тому же набору углов.

Методы

addДобавьте данные в существующий полярный график
addCursorДобавьте курсор в полярный угол графика
animateЗамените существующие данные на новые данные для анимации
createLabelsСоздайте метки легенды
findLobesОсновной, назад и данные о лепестке стороны
replaceЗамените существующие данные на новые данные в полярном графике
showPeaksTableПокажите или скройте пиковую таблицу маркера
showSpanПокажите или скройте угловой промежуток между двумя маркерами

Примеры

свернуть все

Задайте шаблон антенны косинуса от 0 ° до 360 ° в азимуте при вертикальном изменении на 0 °. Затем постройте шаблон антенны с помощью polarpattern.

Создайте шаблон.

az = [0:360];
p = abs(cosd(az));

Постройте полярный шаблон антенны для сокращения азимута при вертикальном изменении на 0 °.

polarpattern(p,'TitleTopTextInterpreter','tex','TitleTop','Azimuth Cut (Elevation Angle = 0^{\circ})');

Создайте 3 2 прямоугольную решетку URA. По умолчанию массив состоит из изотропных элементов антенны. Примите, что рабочая частота составляет 1 ГГц. Затем постройте шаблон антенны с помощью polarpattern.

Создайте массив.

array = phased.URA('Size',[3 2]);
fc = 1.0e9;

Постройте полярный шаблон массива для сокращения вертикального изменения в азимуте на 0 °.

c = physconst('LightSpeed');
p = pattern(array,fc,[-180:180],0,'PropagationSpeed',c,'CoordinateSystem',...
    'polar','Type','powerdb','Normalize',true);
polarpattern([-180:180],p);

Задайте антенну короткого диполя с диполем, ориентированным вдоль оси z и действующий на уровне 250 МГц. Затем постройте шаблон антенны с помощью polarpattern и определение заголовка.

Создайте Систему элемента антенны короткого диполя object™.

antenna = phased.ShortDipoleAntennaElement('FrequencyRange',[100e6,600e6],...
    'AxisDirection','Z');
fc = 250.0e6;

Постройте полярный шаблон антенны для сокращения вертикального изменения в азимуте на 0 °.

v = pattern(antenna,fc,0,-90:90);
polarpattern([-90:90],v,'TitleTopTextInterpreter','tex',...
    'TitleTop','Elevation Cut (Azimuth Angle = 0^{\circ})');

Задайте антенну короткого диполя с диполем, ориентированным вдоль оси z и действующий на уровне 250 МГц. Затем постройте шаблон антенны с помощью polarpattern и определение заголовка.

Создайте Систему элемента антенны короткого диполя object™.

antenna = phased.ShortDipoleAntennaElement('FrequencyRange',[100e6,600e6],...
    'AxisDirection','Z');
fc = 250.0e6;

Создайте полярный шаблон антенны для сокращения вертикального изменения в азимуте на 0 °.

p = pattern(antenna,fc,0,-90:90);
P = polarpattern([-90:90],p,'TitleTopTextInterpreter','tex',...
    'TitleTop','Elevation Cut (Azimuth Angle = 0^{\circ})');

Отобразите свойства графика.

details(P)
  internal.polari handle with properties:

                      Interactive: 1
                     LegendLabels: ''
                   AntennaMetrics: 0
                        CleanData: 0
                        AngleData: [181x1 double]
                    MagnitudeData: [181x1 double]
                    IntensityData: []
                     AngleMarkers: [0x1 struct]
                    CursorMarkers: [0x1 struct]
                      PeakMarkers: [0x1 struct]
                    ActiveDataset: 1
                  AngleLimVisible: 0
                    LegendVisible: 0
                             Span: 0
                         TitleTop: 'Elevation Cut (Azimuth Angle = 0^{\circ})'
                      TitleBottom: ''
                            Peaks: []
                         FontSize: 13
                     MagnitudeLim: [-40 10]
               MagnitudeAxisAngle: 75
                    MagnitudeTick: [-40 -30 -20 -10 0 10]
          MagnitudeTickLabelColor: 'k'
                         AngleLim: [0 360]
                   AngleTickLabel: {1x24 cell}
              AngleTickLabelColor: 'k'
       TitleTopFontSizeMultiplier: 1.1000
    TitleBottomFontSizeMultiplier: 0.9000
               TitleTopFontWeight: 'bold'
            TitleBottomFontWeight: 'normal'
          TitleTopTextInterpreter: 'tex'
       TitleBottomTextInterpreter: 'none'
                   TitleTopOffset: 0.1500
                TitleBottomOffset: 0.1500
                         ToolTips: 1
               MagnitudeLimBounds: [-Inf Inf]
      MagnitudeFontSizeMultiplier: 0.9000
          AngleFontSizeMultiplier: 1
                       AngleAtTop: 90
                   AngleDirection: 'ccw'
                  AngleResolution: 15
           AngleTickLabelRotation: 0
             AngleTickLabelFormat: '360'
          AngleTickLabelColorMode: 'contrast'
                     PeaksOptions: {}
            AngleTickLabelVisible: 1
                            Style: 'line'
                        DataUnits: 'dB'
                     DisplayUnits: 'dB'
                    NormalizeData: 0
                 ConnectEndpoints: 0
              DisconnectAngleGaps: 0
                        EdgeColor: 'k'
                        LineStyle: '-'
                        LineWidth: 1
                         FontName: 'Helvetica'
                     FontSizeMode: 'auto'
              GridForegroundColor: [0.8000 0.8000 0.8000]
              GridBackgroundColor: 'w'
                 DrawGridToOrigin: 0
                     GridOverData: 0
               GridAutoRefinement: 0
                        GridWidth: 0.5000
                      GridVisible: 1
                         ClipData: 1
                  TemporaryCursor: 1
                 MagnitudeLimMode: 'auto'
           MagnitudeAxisAngleMode: 'auto'
                MagnitudeTickMode: 'auto'
      MagnitudeTickLabelColorMode: 'contrast'
        MagnitudeTickLabelVisible: 1
                   MagnitudeUnits: ''
                   IntensityUnits: ''
                           Marker: 'none'
                       MarkerSize: 6
                           Parent: [1x1 Figure]
                         NextPlot: 'replace'
                       ColorOrder: [7x3 double]
                  ColorOrderIndex: 1
                     SectorsColor: [16x3 double]
                     SectorsAlpha: 0.5000
                             View: 'full'
                    ZeroAngleLine: 0

Введенный в R2016a