exponenta event banner

Автоматическое обновление графика после изменения данных

При печати данных из переменных рабочего пространства графики содержат копии переменных. В результате при изменении переменной рабочего пространства (например, при добавлении или удалении данных) графики не обновляются автоматически. Если требуется, чтобы график отражал изменение, необходимо выполнить его повторную обработку. Однако можно использовать один из этих методов, чтобы связать графики с представляемыми ими переменными рабочей области. При связывании графиков и переменных рабочей области изменение данных в одном месте также изменяет их в другом.

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

  • Задайте свойства источника данных выводимого на печать объекта (например, XDataSource ) к именам переменных рабочей области. Затем вызовите refreshdata для косвенного обновления свойств данных. Эту технику можно использовать для создания анимаций.

Обновление графика с помощью связывания данных

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

Например, итерационно аппроксимировать pi. Создание переменной x для представления номера итерации и y для представления аппроксимации. Постройте график начальных значений x и y. Включить связывание данных с помощью linkdata on таким образом, график обновляется при изменении переменных. Затем обновите x и y в цикле for. График обновляется с интервалом в полсекунды.

x = [1 2];
y = [4 4];
plot(x,y);
xlim([0 100])
ylim([2.5 4])
xlabel('Iteration')
ylabel('Approximation for \pi')

linkdata on

denom = 1;
k = -1;
for t = 3:100
    denom = denom + 2;
    x(t) = t;
    y(t) = 4*(y(t-1)/4 + k/denom);
    k = -k;
end

Line plot after animation

Обновление печати с использованием свойств источника данных

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

Например, итерационно аппроксимировать pi. Создание переменной x2 для представления номера итерации и y2 для представления аппроксимации. Постройте график начальных значений x2 и y2. Связывание графика с переменными рабочей области путем установки для свойств источника данных выводимого на печать объекта значения 'x2' и 'y2'. Затем обновите x2 и y2 в цикле for. Звонить refreshdata и drawnow каждая итерация для обновления графика на основе обновленных данных.

x2 = [1 2];
y2 = [4 4];
p = plot(x2,y2);
xlim([0 100])
ylim([2.5 4])
xlabel('Iteration')
ylabel('Approximation for \pi')

p.XDataSource = 'x2';
p.YDataSource = 'y2';

denom = 1;
k = -1;
for t = 3:100
    denom = denom + 2;
    x2(t) = t;
    y2(t) = 4*(y2(t-1)/4 + k/denom);
    refreshdata
    drawnow
    k = -k;
end

Line plot after animation

См. также

| | |

Связанные темы