Создайте анимированную линию
создает анимированную линию, которая не имеет никаких данных и добавляет его в текущую систему координат. Создайте анимацию путем добавления точек в линию в цикле с помощью an
= animatedlineaddpoints
функция.
задает анимированные свойства линии с помощью одного или нескольких аргументов пары "имя-значение". Например, an
= animatedline(___,Name,Value
)'Color','r'
устанавливает цвет линии на красный. Используйте эту опцию после любой из комбинаций входных аргументов в предыдущих синтаксисах.
Создайте анимированный объект линии начальной буквы. Затем используйте цикл, чтобы добавить 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
Выберите цвет анимированной линии к красному и установите ее ширину линии на 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
Используйте цикл, чтобы добавить 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
Управляйте скоростью анимации путем пробежки нескольких итераций цикла анимации прежде, чем чертить обновления на экране. Используйте этот метод когда 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)
замедлить анимацию.
x
— Начальная буква сначала координирует значения[]
(значение по умолчанию) | скаляр или векторНачальная буква сначала координирует значения для анимированной линии в виде скаляра или вектора. Для Осей декартовой системы координат первая координата является положением оси X. Для географических осей первая координата является широтой в градусах.
Вход x
должно быть равно в размере y
.
Пример: 1:10
Типы данных: double
y
— Начальные вторые координатные значения[]
(значение по умолчанию) | скаляр или векторНачальные вторые координатные значения для анимированной линии в виде скаляра или вектора. Для Осей декартовой системы координат вторая координата является положением оси Y. Для географических осей вторая координата является долготой в градусах.
Вход y
должно быть равно в размере x
.
Пример: 1:10
Типы данных: double
z
— Начальная треть координирует значения[]
(значение по умолчанию) | скаляр или векторНачальная треть координирует значения для анимированной линии в виде скаляра или вектора. Для Осей декартовой системы координат третья координата является положением оси z.
Пример: 1:10
Типы данных: double
ax
— Целевые осиAxes
возразите | GeographicAxes
объектЦелевые оси в виде Axes
объект или GeographicAxes
объект. Если вы не задаете объект осей, то animatedline
использует текущую систему координат.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'Color','red','Marker','o'
Анимированные свойства линии, перечисленные здесь, являются только подмножеством. Для полного списка см. Свойства AnimatedLine.
'Color'
'LineColor'
(значение по умолчанию) | триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
| ...Цвет линии в виде триплета RGB, шестнадцатеричного цветового кода, названия цвета или краткого названия. Значение по умолчанию [0 0 0]
соответствует черный.
Для пользовательского цвета задайте триплет 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' |
'LineStyle'
— Стиль линии'-'
(значение по умолчанию) | '--'
| ':'
| '-.'
| 'none'
Стиль линии в виде одной из опций перечислен в этой таблице.
Стиль линии | Описание | Получившаяся линия |
---|---|---|
'-' | Сплошная линия |
|
'--' | Пунктирная линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-пунктирная линия |
|
'none' | Никакая линия | Никакая линия |
'LineWidth'
'LineWidth'
(значение по умолчанию) | положительное значениеШирина линии в виде положительного значения в точках, где 1 точка = 1/72 дюйма. Если у линии есть маркеры, ширина линии также влияет на края маркера.
Ширина линии не может быть более тонкой, чем ширина пикселя. Если вы устанавливаете ширину линии на значение, которое меньше ширины пикселя в вашей системе, отображения линии как один пиксель шириной.
'Marker'
— Символ маркера'none'
(значение по умолчанию) | 'o'
| '+'
| '*'
| '.'
| ...Символ маркера в виде одного из символов маркера перечислен в этой таблице. По умолчанию анимированный объект линии не имеет маркеров. Определение символа маркера добавляет маркеры в каждой точке данных или вершине.
Значение | Описание |
---|---|
'o' | Круг |
'+' | Знак «плюс» |
'*' | Звездочка |
'.' | Точка |
'x' | Крест |
'square' или 's' | Квадрат |
'diamond' или 'd' | Ромб |
'^' | Треугольник, направленный вверх |
'v' | Нисходящий треугольник |
'>' | Треугольник, указывающий вправо |
'<' | Треугольник, указывающий влево |
'pentagram' или 'p' | Пятиконечная звезда (пентаграмма) |
'hexagram' или 'h' | Шестиконечная звезда (гексаграмма) |
'none' | Никакие маркеры |
'MarkerSize'
'MarkerSize'
(значение по умолчанию) | положительное значениеРазмер маркера в виде положительного значения в точках, где 1 точка = 1/72 дюйма.
'MarkerEdgeColor'
— Цвет контура маркера'auto'
(значение по умолчанию) | триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
Цвет контура маркера в виде 'auto'
, триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию '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' |
'MarkerFaceColor'
— Цвет заливки маркера'none'
(значение по умолчанию) | 'auto'
| Триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
Цвет заливки маркера в виде 'auto'
, триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. 'auto'
опция использует тот же цвет в качестве Color
свойство родительских осей. Если вы задаете 'auto'
и поле графика осей невидимо, цвет заливки маркера является цветом фигуры.
Для пользовательского цвета задайте триплет 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' |
'MaximumNumPoints'
— Максимальное количество точек сохранено и отображено
(значение по умолчанию) | положительное значение | Inf
Максимальное количество точек сохранено и отображенное как часть линии в виде положительного значения или Inf
. По умолчанию значение является одним миллионом точек. Если число точек превышает разрешенное максимальное значение, то анимированная линия сохраняет последний раз добавленные точки и упала на пункты с начала линии. Эти пункты, на которые упали, больше не отображаются на экране и не возвращены при использовании getpoints
.
Используйте это свойство ограничить число точек, появляющееся на экране в любой момент времени или ограничить используемый объем памяти. Если вы задаете значение как Inf
, затем анимированная линия не упала ни на какие пункты, но сохраненное число точек ограничивается доступным объемом памяти.
Пример: 10
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
an
animatedline
объектAnimatedLine
объектAnimatedLine
объект. Используйте an
изменить AnimatedLine
объект после ее созданного, такой как изменение значений свойств или добавление точек к линии. Для списка свойств см. Свойства AnimatedLine.
Анимированные линии не поддерживают всплывающие подсказки.
Указания и ограничения по применению:
Эта функция принимает массивы графического процессора, но не работает на графическом процессоре.
Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox).
Указания и ограничения по применению:
Эта функция работает с распределенными массивами, но выполняет в клиенте MATLAB.
Для получения дополнительной информации смотрите функции MATLAB Запуска с Распределенными Массивами (Parallel Computing Toolbox).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.