polarscatter

Диаграмма поля точек в полярных координатах

  • Polar scatter chart

Описание

пример

polarscatter(th,r) графики th от r и отображает циклический маркер в каждой точке данных. th и r должны быть векторами той же длины. Вы должны задать th в радианах.

  • Чтобы построить график одного набора точек, задайте th и r как векторы равной длины.

  • Чтобы построить несколько наборов точек в пределах одних и тех же полярных осей, задайте, по крайней мере, один из th или r как матрица.

polarscatter(th,r,sz) устанавливает размеры маркера, где sz задает площадь каждого маркера в точках в квадрате. Чтобы нарисовать все маркеры с одинаковым размером, задайте sz как скаляр. Чтобы нарисовать маркеры с различными размерами, в виде вектора или матрицы.

пример

polarscatter(th,r,sz,c) определяет цвета маркера. Можно задать один цвет для всех маркеров или изменить цвет. Например, можно построить график всех красных кругов путем определения c как 'red'.

polarscatter(___,mkr) устанавливает символ маркера. Для примера, '+' отображает перекрестные маркеры. Задайте символ маркера после любой комбинации входных аргументов в предыдущих синтаксисах.

пример

polarscatter(___,'filled') заполняет интерьеры маркера.

polarscatter(___,Name,Value) изменяет внешний вид графика поля точек с помощью одного или нескольких аргументов пары "имя-значение". Для примера можно использовать полупрозрачные маркеры путем определения 'FaceAlpha' и скалярное значение между 0 и 1.

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

пример

ps = polarscatter(___) возвращает Scatter объект или массив Scatter объекты.. Использование ps для изменения внешнего вида Scatter объект после его создания. Список свойств см. в разделе Свойств объекта Scatter.

Примеры

свернуть все

Создайте диаграмму поля точек в полярных координатах.

th = pi/4:pi/4:2*pi;
r = [19 6 12 18 16 11 15 15];
polarscatter(th,r)

Figure contains an axes. The axes contains an object of type scatter.

Создайте диаграмму поля точек, которая использует заполненные маркеры путем определения необязательного входного параметра, 'filled'. Установите размер маркера равным 75 точкам в квадрате.

th = linspace(0,2*pi,20);
r = rand(1,20);
sz = 75;
polarscatter(th,r,sz,'filled')

Figure contains an axes. The axes contains an object of type scatter.

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

th = pi/4:pi/4:2*pi;
r = [19 6 12 18 16 11 15 15];
sz = 100*[6 15 20 3 15 3 6 40];
c = [1 2 2 2 1 1 2 1];
polarscatter(th,r,sz,c,'filled','MarkerFaceAlpha',.5)

Figure contains an axes. The axes contains an object of type scatter.

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

th = linspace(0,360,50);
r = 0.005*th/10;
th_radians = deg2rad(th);
polarscatter(th_radians,r)

Figure contains an axes. The axes contains an object of type scatter.

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

th = pi/6:pi/6:2*pi;
r1 = rand(12,1);
polarscatter(th,r1,'filled')

hold on 
r2 = rand(12,1);
polarscatter(th,r2,'filled')
hold off

legend('Series A','Series B')

Figure contains an axes. The axes contains 2 objects of type scatter. These objects represent Series A, Series B.

Создайте диаграмму поля точек и присвойте объект рассеяния переменной ps.

th = pi/6:pi/6:2*pi;
r = rand(12,1);
ps = polarscatter(th,r,'filled')

Figure contains an axes. The axes contains an object of type scatter.

ps = 
  Scatter with properties:

             Marker: 'o'
    MarkerEdgeColor: 'none'
    MarkerFaceColor: 'flat'
           SizeData: 36
          LineWidth: 0.5000
          ThetaData: [1x12 double]
              RData: [1x12 double]
              ZData: [1x0 double]
              CData: [0 0.4470 0.7410]

  Show all properties

Использование ps для изменения свойств объекта рассеяния после его создания.

ps.Marker = 'square';
ps.SizeData = 200;
ps.MarkerFaceColor = 'red';
ps.MarkerFaceAlpha = .5;

Figure contains an axes. The axes contains an object of type scatter.

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

свернуть все

Значения theta, заданные как скаляр, вектор или матрица. The ThetaData свойство объекта рассеяния сохраняет значения theta.

Размер и форма th зависит от формы ваших данных. В этой таблице описываются наиболее распространенные ситуации.

Тип графикаКак задать координаты
Одна точка

Задайте th и r как скаляры. Для примера:

polarscatter(pi/2,0.5)

Один набор точек

Задайте th и r как любая комбинация строки или векторов-столбцов той же длины. Для примера:

polarscatter([0 pi/4 pi/2],[1; 2; 3])

Несколько наборов точек, которые являются различными цветами

Если все наборы имеют одинаковые theta или rho, задайте общие координаты как вектор, а другие координаты как матрицу. Длина вектора должна совпадать с одним из размерностей матрицы. Для примера:

polarscatter([0 pi/4 pi/2],[4 5 6; 7 8 9])
Если матрица квадратная, polarscatter строит отдельный набор точек для каждого столбца в матрице.

Кроме того, задайте th и r как матрицы равного размера. В этом случае, polarscatter строит графики для каждого столбца th по соответствующему столбцу r. Для примера:

polarscatter([0 pi/6 pi/2; pi/8 pi/4 pi],[1 2 3; 4 5 6])

Для преобразования степеней в радианы используйте deg2rad.

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

Значения Rho, заданные в виде скаляра, вектора или матрицы. The RData свойство объекта рассеяния сохраняет значения rho.

Размер и форма r зависит от формы ваших данных. В этой таблице описываются наиболее распространенные ситуации.

Тип графикаКак задать координаты
Одна точка

Задайте th и r как скаляры. Для примера:

polarscatter(pi/2,0.5)

Один набор точек

Задайте th и r как любая комбинация строки или векторов-столбцов той же длины. Для примера:

polarscatter([0 pi/4 pi/2],[1; 2; 3])

Несколько наборов точек, которые являются различными цветами

Если все наборы имеют одинаковые theta или rho, задайте общие координаты как вектор, а другие координаты как матрицу. Длина вектора должна совпадать с одним из размерностей матрицы. Для примера:

polarscatter([0 pi/4 pi/2],[4 5 6; 7 8 9])
Если матрица квадратная, polarscatter строит отдельный набор точек для каждого столбца в матрице.

Кроме того, задайте th и r как матрицы равного размера. В этом случае, polarscatter строит графики для каждого столбца th по соответствующему столбцу r. Для примера:

polarscatter([0 pi/6 pi/2; pi/8 pi/4 pi],[1 2 3; 4 5 6])

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

Размер маркера, заданный как числовой скаляр, вектор, матрица или пустой массив ([]). Размер управляет площадью каждого маркера в точках в квадрате. Пустой массив задает размер по умолчанию 36 точек. Способ задания размера зависит от способа задания th и rи как вы хотите, чтобы график выглядел. В этой таблице описываются наиболее распространенные ситуации.

Желаемые размеры маркераth и r szПример

Одинаковый размер для всех точек

Любая допустимая комбинация векторов или матриц, описанная для th и r.

Скаляр

Задайте th как вектор, r как матрица, и sz как скаляр.

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
polarscatter(th,r,100)

Разный размер для каждой точки

Векторы той же длины

  • Вектор с той же длиной, что и th и r.

  • Матрица с, по крайней мере, одной размерностью, совпадающим с длинами th и r. Установка матрицы полезна для отображения нескольких маркеров с различными размерами в каждом (th, r) местоположении.

Задайте th, r, и sz как векторы.

th = [0 pi/6 pi/2];
r = [1; 2; 3];
sz = [50 500 100];
polarscatter(th,r,sz)

Задайте th и r как векторы и sz как матрица.

th = [0 pi/6 pi/2];
r = [1; 2; 3];
sz = [50 500 100; 300 1000 200];
polarscatter(th,r,sz)

Разный размер для каждой точки

По крайней мере, один из x или y является матрицей для графического изображения нескольких наборов данных

  • Вектор с таким же количеством элементов, как и точки в каждом наборе данных.

  • Матрица, которая имеет тот же размер что и th или r матрица.

Задайте th как вектор, r как матрица, и sz как вектор.

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
sz = [50 500 1000];
polarscatter(th,r,sz)

Задайте th как вектор, r как матрица, и sz как матрица того же размера, что и r.

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
sz = [50 500; 1000 2000; 100 300];
polarscatter(th,r,sz)

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

Цвет маркера, заданный как название цвета, триплет RGB, матрица триплетов RGB или вектор индексов палитры.

  • Название цвета - название цвета, такое как 'red', или краткое имя, например 'r'.

  • Триплет RGB - трехэлементный вектор-строка, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7]. Триплеты RGB полезны для создания пользовательских цветов.

  • Матрица триплетов RGB - трехколоночная матрица, в которой каждая строка является триплетом RGB.

  • Вектор индексов палитры - вектор числовых значений, имеющий ту же длину, что и th и r векторы.

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

Цветовая схемаКак задать цветПример

Используйте один цвет для всех точек.

Укажите название цвета или краткое имя из таблицы ниже или укажите один триплет RGB.

Постройте график одного набора точек и задайте цвет следующим 'red'.

th = [0 pi/6 pi/2];
r = [1 2 3];
c = 'red';
polarscatter(th,r,[],c)

Постройте график двух наборов точек и укажите цвет как красный с помощью триплета RGB.

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
c = [1 0 0];
polarscatter(th,r,[],c)

Назначьте различные цвета каждой точке с помощью палитры.

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

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

Использовать этот метод можно только при th, r, и sz все векторы.

Создайте вектор c который задает четыре индекса палитры. Постройте график четырех точек с помощью цветов из текущей палитры. Затем смените палитру на winter.

th = [0 pi/6 pi/2 2*pi/3];
r = [1 2 3 4];
c = [1 2 3 4];
polarscatter(th,r,[],c)
colormap(gca,'winter')

Создайте пользовательский цвет для каждой точки.

Задайте матрицу m на 3 триплетов RGB, где m - число точек на графике.

Использовать этот метод можно только при th, r, и sz все векторы.

Создайте матрицу c это задает триплеты RGB четырех цветов. Затем создать график четырех точек, используя эти цвета.

th = [0 pi/6 pi/2 2*pi/3];
r = [1 2 3 4];
c = [1 0 0; 0 1 0; 0 0 1; 0 0 0];
polarscatter(th,r,[],c)

Создайте другой цвет для каждого набора данных.

Задайте матрицу n на 3 триплетов RGB, где n - количество наборов данных.

Использовать этот метод можно только тогда, когда хотя бы один из th, r, или sz является матрицей.

Создайте матрицу c который содержит два триплетов RGB. Затем постройте график двух наборов данных с использованием этих цветов.

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
c = [1 0 0; 0 0 1];
polarscatter(th,r,[],c)

Названия цвета и триплеты RGB для простых цветов

Название цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB® использует на многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешность
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

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

Символ маркера, заданный как один из символов маркера, перечисленных в этой таблице.

МаркерОписание
'o'Круг
'+'Плюс знак
'*'Звездочка
'.'Точка
'x'Крест
'_'Горизонтальная линия
'|'Вертикальная линия
's'Квадрат
'd'Алмаз
'^'Направленный вверх треугольник
'v'Нисходящий треугольник
'>'Треугольник , указывающий вправо
'<'Треугольник , указывающий влево
'p'Пентаграмма
'h'Hexagram

The Marker свойство объекта рассеяния сохраняет символ маркера.

PolarAxes объект. Если вы не задаете полярные оси, то polarscatter использует текущую систему координат. polarscatter не поддерживает графическое изображение в Декартовых осях.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: polarscatter(th,r,'filled','MarkerFaceAlpha',.5) создает заполненные, полупрозрачные маркеры.

Перечисленные здесь свойства объекта рассеяния являются только подмножеством. Полный список см. в разделе Свойств объекта Scatter.

Прозрачность лица маркера, заданная как скаляр в области значений [0,1]. Значение 1 непрозрачно, а 0 прозрачно. Значения от 0 до 1 являются полупрозрачными.

Цвет контура маркера, заданный 'flat', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя. Значение по умолчанию 'flat' использует цвета из CData свойство.

Для пользовательского цвета укажите триплет RGB или шестнадцатеричный код цвета.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7].

  • Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 на F. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' являются эквивалентными.

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

Название цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешность
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Пример: [0.5 0.5 0.5]

Пример: 'blue'

Пример: '#D2F9A7'

Цвет заливки маркера, заданный как 'flat', 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя. The 'flat' опция использует CData значения. The 'auto' опция использует тот же цвет, что и Color свойство для осей.

Для пользовательского цвета укажите триплет RGB или шестнадцатеричный код цвета.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7].

  • Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 на F. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' являются эквивалентными.

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

Название цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешность
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Пример: [0.3 0.2 0.1]

Пример: 'green'

Пример: '#D2F9A7'

Ширина ребра маркера, заданная как положительное значение в модули точки.

Пример: 0.75

Введенный в R2016b