Why do I receive default error callback warning while running a loop?

34 vues (au cours des 30 derniers jours)
Dru
Dru le 12 Avr 2023
Commenté : Dru le 12 Avr 2023
I'm coding a loop that creates a plot with a moving animation. The animation has a pause function (line 64), and I get this warning every iteration of the loop. xdata and ydata are scalar values used to plot the point on the graph.
> In defaulterrorcallback (line 12)
In ActiveAnimation (line 64)
Warning: Error creating or updating Line
Error in value of one or more of the following properties: XData YData
Array is wrong shape or size

Réponses (1)

Walter Roberson
Walter Roberson le 12 Avr 2023
Your animation is extending XData by one (or more) points, and then extending YData by the same number of points, but as different operations. For example,
h = plot(1:10, 1:10)
h =
Line with properties: Color: [0 0.4470 0.7410] LineStyle: '-' LineWidth: 0.5000 Marker: 'none' MarkerSize: 6 MarkerFaceColor: 'none' XData: [1 2 3 4 5 6 7 8 9 10] YData: [1 2 3 4 5 6 7 8 9 10] Show all properties
h.XData(end+1) = 11
h =
Line with properties: Color: [0 0.4470 0.7410] LineStyle: '-' LineWidth: 0.5000 Marker: 'none' MarkerSize: 6 MarkerFaceColor: 'none' XData: [1 2 3 4 5 6 7 8 9 10 11] YData: [1 2 3 4 5 6 7 8 9 10] Show all properties
%XData is now 11 but YData is still 10
h.YData(end+1) = 11
h =
Line with properties: Color: [0 0.4470 0.7410] LineStyle: '-' LineWidth: 0.5000 Marker: 'none' MarkerSize: 6 MarkerFaceColor: 'none' XData: [1 2 3 4 5 6 7 8 9 10 11] YData: [1 2 3 4 5 6 7 8 9 10 11] Show all properties
Warning: Error creating or updating Line
Error in value of one or more of the following properties: XData YData
Array is wrong shape or size
%now they are the same length again
The warning shows up at rendering time.
There are two possible solutions:
  1. use set() to change the XData and YData calls in the same call; or
  2. use animatedline() and addpoints() which is designed for these kinds of situations
  1 commentaire
Dru
Dru le 12 Avr 2023
I was trying to use .set but was using it wrong. I figured it out now

Connectez-vous pour commenter.

Catégories

En savoir plus sur Animation dans Help Center et File Exchange

Produits


Version

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by