Animation keeps changing xlims ylims

Greetings,

I have been struggling for hours to create an animation (particles in a box) where the xlims and ylims of the plot window remain fixed during the run.

@userplot SystemPlot  

@recipe function f(sp::SystemPlot)
    
   # Data frame holding x and y coordinates of N particles.
    frame_data = sp.args[1]   # Index necessary because sp.args is a tuple.

    # Some attributes because particles are plotted as filled circles.
    radius = get(plotattributes, :radius, 0.5)       
    cos_theta = get(plotattributes, :cos_theta, nothing)
    sin_theta = get(plotattributes, :sin_theta, nothing)


    # Axis limits. They should remain fixed!
    xlims --> get(plotattributes, :xlims, nothing)
    ylims --> get(plotattributes, :ylims, nothing)
    
    aspect_ratio --> :equal
    legend --> false
    xlabel --> "x"
    ylabel --> "y"
    title --> "Frame $(frame_data.Frame[1])"

    for i in 1:nrow(frame_data)

        # some function to create circle shapes.
        x, y = draw_circle(frame_data.x[i], frame_data.y[i], radius, cos_theta, sin_theta)  
        shape = Shape(x, y)
        
        @series begin
            seriestype := :shape
            fillcolor  := :blue
            alpha      := 0.5
            linecolor  := :black
            shape
         end
    end

But if I call this thing with

    x_lims =  # some given tupel, e.g., (0,10)
    y_lims =  # some given tupel, e.g., (0,10)

    anim = @animate for idx in frame_idx
        frame_data = frames[idx]
        systemplot(frame_data; 
                   cos_theta=cos_theta, 
                   sin_theta=sin_theta, 
                   radius=radius, 
                   xlims=x_lims, 
                   ylims=y_lims)  
    end

the xlims and ylims of the resulting plot window change from frame to frame.
What am I doing wrong? It looks like the recipe does not properly process the limits.

Regards!

You don’t need these two lines, this behavior should be the default?

1 Like

I see, did not know.
I deleted them, but the issue remains.