Создайте анимированную строку
an = animatedline
an = animatedline(x,y)
an = animatedline(x,y,z)
an = animatedline(___,Name,Value)
an = animatedline(ax,___)
создает анимированную строку, которая не имеет никаких данных и добавляет его к текущей системе координат. Создайте анимацию путем добавления точек к строке в цикле с помощью функции an = animatedline
addpoints
.
создает анимированную строку с точками исходных данных, заданными an = animatedline(x,y)
x
и y
.
создает анимированную строку с точками исходных данных, заданными an = animatedline(x,y,z)
x
, y
и z
.
задает анимированные свойства строки с помощью одного или нескольких аргументов в виде пар "имя-значение". Например, an = animatedline(___,Name,Value)
'Color','r'
устанавливает цвет линии на красный. Используйте эту опцию после любой из комбинаций входных аргументов в предыдущих синтаксисах.
создает строку в осях, заданных an = animatedline(ax,___)
ax
вместо в текущей системе координат (gca
). Опция ax может предшествовать любой комбинации входных аргументов в предыдущих синтаксисах.
Создайте анимированный объект линии начальной буквы. Затем используйте цикл, чтобы добавить 1 000 точек к строке. После добавления каждой новой точки используйте drawnow
, чтобы отобразить новую точку на экране.
h = animatedline; axis([0,4*pi,-1,1]) x = linspace(0,4*pi,1000); y = sin(x); for k = 1:length(x) addpoints(h,x(k),y(k)); drawnow end
Для более быстрого рендеринга добавьте больше чем одну точку к строке каждый раз через цикл или используйте drawnow limitrate
.
Запросите точки строки.
[xdata,ydata] = getpoints(h);
Очистите точки от строки.
clearpoints(h) drawnow
Copyright 2015-2017 The MathWorks, Inc.
Выберите цвет анимированной строки к красному и установите ее ширину линии на 3 точки.
x = [1 2]; y = [1 2]; h = animatedline(x,y,'Color','r','LineWidth',3);
Ограничьте число точек в анимированной строке к 100. Используйте цикл, чтобы добавить одну точку к строке за один раз. Когда строка содержит 100 точек, добавляя новую точку к удалениям строки самая старая точка.
h = animatedline('MaximumNumPoints',100); axis([0,4*pi,-1,1]) x = linspace(0,4*pi,1000); y = sin(x); for k = 1:length(x) addpoints(h,x(k),y(k)); drawnow end
Copyright 2015 The MathWorks, Inc.
Используйте цикл, чтобы добавить 100 000 точек к анимированной строке. Поскольку число точек является большим, добавляя одну точку к строке, каждый раз через цикл может быть медленным. Вместо этого добавьте 100 точек к строке каждый раз через цикл для более быстрой анимации.
h = animatedline; axis([0,4*pi,-1,1]) numpoints = 100000; x = linspace(0,4*pi,numpoints); y = sin(x); for k = 1:100:numpoints-99 xvec = x(k:k+99); yvec = y(k:k+99); addpoints(h,xvec,yvec) drawnow end
Другой метод для создания более быстрых анимаций должен использовать drawnow limitrate
вместо drawnow
.
Используйте цикл, чтобы добавить 100 000 точек к анимированной строке. Поскольку число точек является большим, использование drawnow
, чтобы отобразить изменения может быть медленным. Вместо этого используйте drawnow limitrate
для более быстрой анимации.
h = animatedline; axis([0,4*pi,-1,1]) numpoints = 100000; x = linspace(0,4*pi,numpoints); y = sin(x); for k = 1:numpoints addpoints(h,x(k),y(k)) drawnow limitrate end
Copyright 2015 The MathWorks, Inc.
Управляйте скоростью анимации путем пробежки нескольких итераций цикла анимации прежде, чем чертить обновления на экране. Используйте этот метод, когда drawnow
является слишком медленным, и drawnow limitrate
слишком быстр.
Например, обновите экран каждый 1/30 секунды. Используйте tic
и команды toc
, чтобы отслеживать то, сколько время передает между экранными обновлениями.
h = animatedline; axis([0,4*pi,-1,1]) numpoints = 10000; x = linspace(0,4*pi,numpoints); y = sin(x); a = tic; % start timer for k = 1:numpoints addpoints(h,x(k),y(k)) b = toc(a); % check timer if b > (1/30) drawnow % update screen every 1/30 seconds a = tic; % reset timer after updating end end drawnow % draw final frame
Меньший интервал обновляет экран чаще и приводит к более медленной анимации. Например, используйте b > (1/1000)
, чтобы замедлить анимацию.
Copyright 2015 The MathWorks, Inc.
x
Начальная буква x значения[]
(значение по умолчанию) | скаляр или векторНачальная буква x значения для анимированной строки, заданной как скаляр или вектор. Входной параметр x
должен быть равен в размере y
.
Пример 1: 10
Типы данных: double
y
Начальная буква y значения[]
(значение по умолчанию) | скаляр или векторНачальная буква y значения для анимированной строки, заданной как скаляр или вектор. Входной параметр y
должен быть равен в размере x
.
Пример 1: 10
Типы данных: double
z
Начальная буква z значения[]
(значение по умолчанию) | скаляр или векторНачальная буква z значения для анимированной строки, заданной как скаляр или вектор. Входной параметр z
должен быть равен в размере x
и y
.
Пример 1: 10
Типы данных: double
ax
— Объект осейОбъект осей. Если вы не задаете объект осей, то animatedline
использует текущую систему координат.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Имя
должно появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Цвет', 'красный', 'Маркер', 'o'
Анимированные свойства строки, перечисленные здесь, являются только подмножеством. Для полного списка см. Свойства AnimatedLine.
'Color'
— 'LineColor' [0 0 0]
(значение по умолчанию) | триплет RGB | 'r'
| 'g'
| 'b'
|...Цвет линии, заданный как триплет RGB или один из перечисленных в таблице параметров цвета. Значение по умолчанию [0 0 0]
соответствует черный.
Для пользовательского цвета укажите триплет RGB. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должны быть в диапазоне [0,1]; например, [0,4 0,6 0,7].
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены варианты длинного и краткого наименований цветов и их эквивалентные значения RGB.
Опция | Описание | Эквивалентный триплет RGB |
---|---|---|
'красный' или 'r'
| Красный | [1 0 0] |
'green' или 'g' | Зеленый | [0 1 0] |
'blue' или 'b' | Синий | [0 0 1] |
'yellow' или 'y' | Желтый | [1 1 0] |
'пурпурный' или 'm'
| Пурпурный | [1 0 1] |
'голубой' или 'c'
| Голубой | [0 1 1] |
'white' или 'w' | Белый | [1 1 1] |
'black' или 'k' | Черный | [0 0 0] |
'none' | Нет цвета | Не применяется |
Пример: [0.4 0.6 0.7]
'LineStyle'
— Стиль линии'-'
(значение по умолчанию) | '--'
| ':'
| '-.'
| 'none'
Стиль линии, заданный как одна из опций, перечислен в этой таблице.
Стиль линии | Описание | Получившаяся строка |
---|---|---|
'-' | Сплошная линия |
|
'--' | Пунктирная линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-пунктирная линия |
|
'none' | Никакая строка | Никакая строка |
'LineWidth'
'LineWidth' 0.5
(значение по умолчанию) | положительное значениеШирина линии, заданная в виде положительного значения в точках. Если у линии есть маркеры, ширина линии также влияет на края маркера.
Пример: 0.75
'Marker'
— Символ маркера'none'
(значение по умолчанию) | 'o'
| '+'
| '*'
| '.'
|...Символ маркера, заданный как один из символов маркера, перечислен в этой таблице. По умолчанию анимированный объект линии не имеет маркеров. Определение символа маркера добавляет маркеры в каждой точке данных или вершине.
Значение | Описание |
---|---|
O | Круг |
'+' | Знак «плюс» |
'*' | Звездочка |
'.' | Точка |
X | Крест |
square' или 's'
| Квадрат |
'diamond' или 'd'
| Ромб |
'^' | Треугольник, направленный вверх |
V | Нисходящий треугольник |
'>' | Треугольник, указывающий вправо |
'<' | Треугольник, указывающий влево |
pentagram' или 'p'
| Пятиконечная звезда (пентаграмма) |
'hexagram' or 'h'
| Шестиконечная звезда (гексаграмма) |
'none' | Никакие маркеры |
'MarkerSize'
'MarkerSize' 6
(значение по умолчанию) | положительное значениеРазмер маркера, заданный как положительное значение в точках.
Пример: 10
MarkerEdgeColor
Цвет контура маркера'auto'
(значение по умолчанию) | триплет RGB | 'r'
| 'g'
| 'b'
Цвет контура маркера, заданный как 'auto'
, триплет RGB или один из перечисленных в таблице параметров цвета. Значение по умолчанию 'auto'
использует тот же цвет в качестве свойства Color
.
Для пользовательского цвета укажите триплет RGB. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должны быть в диапазоне [0,1]; например, [0,4 0,6 0,7].
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены варианты длинного и краткого наименований цветов и их эквивалентные значения RGB.
Опция | Описание | Эквивалентный триплет RGB |
---|---|---|
'красный' или 'r'
| Красный | [1 0 0] |
'green' или 'g' | Зеленый | [0 1 0] |
'blue' или 'b' | Синий | [0 0 1] |
'yellow' или 'y' | Желтый | [1 1 0] |
'пурпурный' или 'm'
| Пурпурный | [1 0 1] |
'голубой' или 'c'
| Голубой | [0 1 1] |
'white' или 'w' | Белый | [1 1 1] |
'black' или 'k' | Черный | [0 0 0] |
'none' | Нет цвета | Не применяется |
Пример: [0.5 0.5 0.5]
Пример: 'blue'
'MarkerFaceColor'
Цвет заливки маркера'none'
(значение по умолчанию) | 'auto'
| триплет RGB | 'r'
| 'g'
| 'b'
Цвет заливки маркера, заданный как 'auto', триплет RGB или один из цветовых параметров, перечисленных в таблице.
Значение 'auto'
использует тот же цвет в качестве Свойства цвета
для осей.
Для пользовательского цвета укажите триплет RGB. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должны быть в диапазоне [0,1]; например, [0,4 0,6 0,7].
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены варианты длинного и краткого наименований цветов и их эквивалентные значения RGB.
Опция | Описание | Эквивалентный триплет RGB |
---|---|---|
'красный' или 'r'
| Красный | [1 0 0] |
'green' или 'g' | Зеленый | [0 1 0] |
'blue' или 'b' | Синий | [0 0 1] |
'yellow' или 'y' | Желтый | [1 1 0] |
'пурпурный' или 'm'
| Пурпурный | [1 0 1] |
'голубой' или 'c'
| Голубой | [0 1 1] |
'white' или 'w' | Белый | [1 1 1] |
'black' или 'k' | Черный | [0 0 0] |
'none' | Нет цвета | Не применяется |
Example: [0.3 0.2 0.1]
Пример: 'green'
MaximumNumPoints
Максимальное количество точек сохранено и отображено 1000000
(значение по умолчанию) | положительное значение | Inf
Максимальное количество точек сохранено и отображенное как часть строки, заданной как положительное значение или Inf
. По умолчанию значение является одним миллионом точек. Если число точек превышает разрешенное максимальное значение, то анимированная строка сохраняет последний раз добавленные точки и упала на пункты с начала строки. Эти пункты, на которые упали, больше не отображаются на экране и не возвращены при использовании getpoints
.
Используйте это свойство ограничить число точек, появляющееся на экране в любой момент времени или ограничить используемый объем памяти. Если вы задаете значение как Inf
, то анимированная строка не упала ни на какие пункты, но сохраненное число точек ограничивается доступным объемом памяти.
Пример: 10
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
an
— AnimatedLine
AnimatedLine
Объект AnimatedLine
. Используйте an
, чтобы изменить объект AnimatedLine
после ее созданного, такой как изменение значений свойств или добавление точек к строке. Для списка свойств см. Свойства AnimatedLine.
Анимированные строки не поддерживают советы данных.
Указания и ограничения по применению:
Эта функция принимает массивы GPU, но не работает на GPU.
Для получения дополнительной информации смотрите функции MATLAB Выполнения на GPU (Parallel Computing Toolbox).
Указания и ограничения по применению:
Эта функция работает с распределенными массивами, но выполняет в клиенте MATLAB®.
Для получения дополнительной информации смотрите функции MATLAB Выполнения с Распределенными Массивами (Parallel Computing Toolbox).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.