- 功能:更新數據並處理回調
- 函數:drawnow 、 drawnow limitrate、 drawnow nocallbacks 、drawnow limitrate nocallbacks 、drawnow update 、drawnow expose
- 介紹
- Drawnow更新數據並處理所有未決的回調。 如果您修改圖形對象並希望立即在屏幕上查看更新,請使用此命令。
創建一條累積2000個數據點的直線動畫。 遍歷循環后,使用drawow在屏幕上顯示更改。 h = animatedline; axis([0 4*pi -1 1]) x = linspace(0,4*pi,2000); for k = 1:length(x) y = sin(x(k)); addpoints(h,x(k),y); drawnow end
- drawow limitrate將更新次數限制為每秒20幀。 如果自上次更新以來不到50毫秒,或者圖形渲染器忙於上一次更改,則drawow丟棄新更新。 如果要循環更新圖形對象,並且不需要在屏幕上看到每個更新,請使用此命令。 跳過更新可以創建更快的動畫。 處理待處理的回調,因此您可以在動畫期間與圖形進行交互。
%創建一條累積了10,000點的直線動畫。 由於有10,000點,因此在屏幕上繪制每個更新速度很慢。
% 通過使用drawow limitrate限制更新次數來創建更快,更流暢的動畫。 然后,在循環結束后,通過調用drawow在屏幕上顯示最終更新。 h = animatedline; axis([0 4*pi -1 1]) x = linspace(0,4*pi,10000); for k = 1:length(x) y = sin(x(k)); addpoints(h,x(k),y); drawnow limitrate end drawnow
%先畫好圖,在動態顯示 h = animatedline; axis([0 4*pi -1 1]) x = linspace(0,4*pi,10000); y = sin(x); for k = 1:length(x) addpoints(h,x(k),y(k)); drawnow limitrate end drawnow
- Drawnow更新數據並處理所有未決的回調。 如果您修改圖形對象並希望立即在屏幕上查看更新,請使用此命令。
