Создайте плоттер ориентации
создает плоттер ориентации для использования с театральным графиком oPlotter = orientationPlotter(tp)tp.
создает плоттер ориентации с дополнительными опциями, заданными одним или несколькими oPlotter = orientationPlotter(tp,Name,Value)Name,Value парные аргументы.
В этом примере показано, как анимировать ориентацию колеблющегося устройства.
Загрузите rpy_9axis.mat. Данные в rpy_9axis.mat зарегистрированный акселерометр, гироскоп, и данные о датчике магнитометра из устройства, колеблющегося в тангаже (вокруг оси Y), затем отклоняются от курса (вокруг оси z), затем прокручиваются (вокруг оси X). Ось X устройства указывала на юг, когда зарегистрировано.
ld = load('rpy_9axis.mat')ld = struct with fields:
Fs: 200
sensorData: [1x1 struct]
Установите частоту дискретизации. Извлеките данные о гироскопе и акселерометр. Установитесь коэффициент децимации на 2. Используйте fuse создать косвенный фильтр cочетания датчиков Кальмана из данных.
accel = ld.sensorData.Acceleration; gyro = ld.sensorData.AngularVelocity; Fs = ld.Fs; decim = 2; fuse = imufilter('SampleRate',Fs,'DecimationFactor',decim);
Получите информацию о положении объединенных данных.
pose = fuse(accel,gyro);
Создайте театральный график. Добавьте в театральный график плоттер ориентации с 'DisplayName' установите на 'Fused Data' и 'LocalAxesLength' установите на 2.
tp = theaterPlot('XLimit',[-2 2],'YLimit',[-2 2],'ZLimit',[-2 2]); op = orientationPlotter(tp,'DisplayName','Fused Data',... 'LocalAxesLength',2);
Цикл через информацию о положении, чтобы анимировать изменяющуюся ориентацию.
for i=1:numel(pose) plotOrientation(op, pose(i)) drawnow end

tp — Театральный графикtheaterPlot объектТеатральный график в виде theaterPlot объект.
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'HistoryDepth',6DisplayName — Постройте имя, чтобы отобразиться в легендеПостройте имя, чтобы отобразиться в легенде в виде разделенной запятой пары, состоящей из 'DisplayName' и вектор символов или строковый скаляр. Если никакое имя не задано, никакую запись не показывают.
Пример: 'DisplayName','Radar Detections'
HistoryDepth — Количество предыдущей дорожки обновляется к отображению (значение по умолчанию) | неотрицательное целое число, меньше чем или равное 100Количество предыдущей дорожки обновляется, чтобы отобразиться в виде разделенной запятой пары, состоящей из 'HistoryDepth' и неотрицательное целое число, меньше чем или равное 100. Если установлено в 0, то никакие предыдущие обновления не представляются.
Marker — Символ маркера'o' (значение по умолчанию) | вектор символов | строковый скалярСимвол маркера в виде разделенной запятой пары, состоящей из 'Marker' и один из этих символов.
| Маркер | Описание | Получившийся маркер |
|---|---|---|
'o' | Круг |
|
'+' | Знак «плюс» |
|
'*' | Звездочка |
|
'.' | Точка |
|
'x' | Крест |
|
'_' | Горизонтальная линия |
|
'|' | Вертикальная линия |
|
's' | Квадрат |
|
'd' | Ромб |
|
'^' | Треугольник, направленный вверх |
|
'v' | Нисходящий треугольник |
|
'>' | Треугольник, указывающий вправо |
|
'<' | Треугольник, указывающий влево |
|
'p' | Пентаграмма |
|
'h' | Гексаграмма |
|
'none' | Никакие маркеры | Не применяется |
MarkerSize — Размер маркера (значение по умолчанию) | положительное целое числоРазмер маркера, заданного в точках как разделенная запятой пара, состоящая из 'MarkerSize' и положительное целое число.
MarkerEdgeColor — Цвет контура маркера'black' (значение по умолчанию) | вектор символов | строковый скаляр | триплет RGB | шестнадцатеричный цветовой кодЦвет контура маркера в виде разделенной запятой пары, состоящей из 'MarkerEdgeColor' и вектор символов, строковый скаляр, триплет RGB или шестнадцатеричный цветовой код. Цветом по умолчанию является 'black'.
MarkerFaceColor — Цвет заливки маркера'none' (значение по умолчанию) | вектор символов | строковый скаляр | триплет RGB | шестнадцатеричный цветовой кодЦвет контура маркера в виде разделенной запятой пары, состоящей из 'MarkerFaceColor' и вектор символов, строковый скаляр, триплет RGB, шестнадцатеричный цветовой код или 'none'. Значением по умолчанию является 'none'.
FontSize — Размер шрифта для маркировки дорожек (значение по умолчанию) | положительное целое числоРазмер шрифта для маркировки дорожек в виде разделенной запятой пары, состоящей из 'FontSize' и положительное целое число, которое представляет размер точки шрифта.
LabelOffset — Разорвите между меткой и позиционной точкой (значение по умолчанию) | трехэлементный вектор-строкаРазорвите между меткой и позиционной точкой, которую она аннотирует в виде разделенной запятой пары, состоящей из 'LabelOffset' и трехэлементный вектор-строка. Задайте [x
y
z] смещение в метрах.
LocalAxesLength — Длина линии (значение по умолчанию) | положительная скалярная величинаДлина линии раньше обозначала каждый локальный x - y - и z - оси данной ориентации в виде разделенной запятой пары, состоящей из 'LocalAxesLength' и положительная скалярная величина. 'LocalAxesLength' исчисляется в метрах.
Tag — Пометьте, чтобы сопоставить с плоттером'PlotterN'
(значение по умолчанию) | вектор символов | строковый скалярПометьте, чтобы сопоставить с плоттером в виде разделенной запятой пары, состоящей из 'Tag' и вектор символов или строковый скаляр. Значением по умолчанию является 'PlotterN', где N является целым числом, которое соответствует N th плоттер, сопоставленный с theaterPlot.
Теги обеспечивают способ идентифицировать объекты плоттера, например, при поиске использования findPlotter.
theaterPlot | plotOrientation | clearData | clearPlotterData
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.