<h3 dir="auto">Bug summary</h3>
<p dir="auto">When animating a scatter changing only the azimuth the plot will not be updated unless the mouse is clicked on the plot.<br>
Might be platform specific on a apple silicon version 3.5.1</p>
<h3 dir="auto">Code for reproduction</h3>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

data = [np.random.random_sample((300, 3)) for _ in range(10)]
x, y, z = data[0][:, 0], data[0][:, 1], data[0][:, 2]


def update_pov(num):
    ax.view_init(elev=10., azim=num % 360)
    
    return graph,


fig = plt.figure(figsize=(5, 5))
ax = fig.add_subplot(111, projection=&quot;3d&quot;)
graph = ax.scatter(x, y, z, color='orange')

ax.set_xlim3d(0, 1)
ax.set_ylim3d(0, 1)
ax.set_zlim3d(0, 1)

ani = animation.FuncAnimation(fig, update_pov, frames=200, interval=50, blit=False)
plt.show()"><pre class="notranslate"><span class="pl-k">import</span> <span class="pl-s1">numpy</span> <span class="pl-k">as</span> <span class="pl-s1">np</span>
<span class="pl-k">import</span> <span class="pl-s1">matplotlib</span>.<span class="pl-s1">pyplot</span> <span class="pl-k">as</span> <span class="pl-s1">plt</span>
<span class="pl-k">import</span> <span class="pl-s1">matplotlib</span>.<span class="pl-s1">animation</span> <span class="pl-k">as</span> <span class="pl-s1">animation</span>

<span class="pl-s1">data</span> <span class="pl-c1">=</span> [<span class="pl-s1">np</span>.<span class="pl-s1">random</span>.<span class="pl-en">random_sample</span>((<span class="pl-c1">300</span>, <span class="pl-c1">3</span>)) <span class="pl-k">for</span> <span class="pl-s1">_</span> <span class="pl-c1">in</span> <span class="pl-en">range</span>(<span class="pl-c1">10</span>)]
<span class="pl-s1">x</span>, <span class="pl-s1">y</span>, <span class="pl-s1">z</span> <span class="pl-c1">=</span> <span class="pl-s1">data</span>[<span class="pl-c1">0</span>][:, <span class="pl-c1">0</span>], <span class="pl-s1">data</span>[<span class="pl-c1">0</span>][:, <span class="pl-c1">1</span>], <span class="pl-s1">data</span>[<span class="pl-c1">0</span>][:, <span class="pl-c1">2</span>]


<span class="pl-k">def</span> <span class="pl-en">update_pov</span>(<span class="pl-s1">num</span>):
    <span class="pl-s1">ax</span>.<span class="pl-en">view_init</span>(<span class="pl-s1">elev</span><span class="pl-c1">=</span><span class="pl-c1">10.</span>, <span class="pl-s1">azim</span><span class="pl-c1">=</span><span class="pl-s1">num</span> <span class="pl-c1">%</span> <span class="pl-c1">360</span>)
    
    <span class="pl-k">return</span> <span class="pl-s1">graph</span>,


<span class="pl-s1">fig</span> <span class="pl-c1">=</span> <span class="pl-s1">plt</span>.<span class="pl-en">figure</span>(<span class="pl-s1">figsize</span><span class="pl-c1">=</span>(<span class="pl-c1">5</span>, <span class="pl-c1">5</span>))
<span class="pl-s1">ax</span> <span class="pl-c1">=</span> <span class="pl-s1">fig</span>.<span class="pl-en">add_subplot</span>(<span class="pl-c1">111</span>, <span class="pl-s1">projection</span><span class="pl-c1">=</span><span class="pl-s">"3d"</span>)
<span class="pl-s1">graph</span> <span class="pl-c1">=</span> <span class="pl-s1">ax</span>.<span class="pl-en">scatter</span>(<span class="pl-s1">x</span>, <span class="pl-s1">y</span>, <span class="pl-s1">z</span>, <span class="pl-s1">color</span><span class="pl-c1">=</span><span class="pl-s">'orange'</span>)

<span class="pl-s1">ax</span>.<span class="pl-en">set_xlim3d</span>(<span class="pl-c1">0</span>, <span class="pl-c1">1</span>)
<span class="pl-s1">ax</span>.<span class="pl-en">set_ylim3d</span>(<span class="pl-c1">0</span>, <span class="pl-c1">1</span>)
<span class="pl-s1">ax</span>.<span class="pl-en">set_zlim3d</span>(<span class="pl-c1">0</span>, <span class="pl-c1">1</span>)

<span class="pl-s1">ani</span> <span class="pl-c1">=</span> <span class="pl-s1">animation</span>.<span class="pl-v">FuncAnimation</span>(<span class="pl-s1">fig</span>, <span class="pl-s1">update_pov</span>, <span class="pl-s1">frames</span><span class="pl-c1">=</span><span class="pl-c1">200</span>, <span class="pl-s1">interval</span><span class="pl-c1">=</span><span class="pl-c1">50</span>, <span class="pl-s1">blit</span><span class="pl-c1">=</span><span class="pl-c1">False</span>)
<span class="pl-s1">plt</span>.<span class="pl-en">show</span>()</pre></div>
<h3 dir="auto">Actual outcome</h3>
<p dir="auto"><a href="https://youtu.be/3l7gMHrwkqQ" rel="nofollow">https://youtu.be/3l7gMHrwkqQ</a><br>
in the video it is only animating when I click on the mousepad</p>
<h3 dir="auto">Expected outcome</h3>
<p dir="auto">animations should flow independently of mouse clicks</p>
<h3 dir="auto">Additional information</h3>
<p dir="auto"><em>No response</em></p>
<h3 dir="auto">Operating system</h3>
<p dir="auto">MacOS on Apple silicon</p>
<h3 dir="auto">Matplotlib Version</h3>
<p dir="auto">3.5.1</p>
<h3 dir="auto">Matplotlib Backend</h3>
<p dir="auto">MacOSX</p>
<h3 dir="auto">Python version</h3>
<p dir="auto">Python 3.9.2</p>
<h3 dir="auto">Jupyter version</h3>
<p dir="auto"><em>No response</em></p>
<h3 dir="auto">Installation</h3>
<p dir="auto">pip</p>
<h3 dir="auto">Bug report</h3>
<p dir="auto"><strong>Bug summary</strong></p>
<p dir="auto">Python 2.7.14<br>
Mac OS X El Capitan, v10.11.6<br>
Matplotlib v2.2.2 (same for v2.0.0)</p>
<p dir="auto">I was trying to reproduce the rotating 3D plot from this example:<br>
<a href="https://matplotlib.org/examples/mplot3d/rotate_axes3d_demo.html" rel="nofollow">https://matplotlib.org/examples/mplot3d/rotate_axes3d_demo.html</a><br>
(also copied below)</p>
<p dir="auto">However, the plot displayed the initial view, got stuck, and then finished without any errors.  I later found that if I use another computer with an old matplotlib version (v1.5.3), the code runs correctly.  I used pip to install different versions of matplotlib.</p>
<p dir="auto"><strong>Code for reproduction</strong></p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# load some test data for demonstration and plot a wireframe
X, Y, Z = axes3d.get_test_data(0.1)
ax.plot_wireframe(X, Y, Z, rstride=5, cstride=5)

# rotate the axes and update
for angle in range(0, 360):
    ax.view_init(30, angle)
    plt.draw()
    plt.pause(.001)"><pre class="notranslate"><span class="pl-k">from</span> <span class="pl-s1">mpl_toolkits</span>.<span class="pl-s1">mplot3d</span> <span class="pl-k">import</span> <span class="pl-s1">axes3d</span>
<span class="pl-k">import</span> <span class="pl-s1">matplotlib</span>.<span class="pl-s1">pyplot</span> <span class="pl-k">as</span> <span class="pl-s1">plt</span>

<span class="pl-s1">fig</span> <span class="pl-c1">=</span> <span class="pl-s1">plt</span>.<span class="pl-en">figure</span>()
<span class="pl-s1">ax</span> <span class="pl-c1">=</span> <span class="pl-s1">fig</span>.<span class="pl-en">add_subplot</span>(<span class="pl-c1">111</span>, <span class="pl-s1">projection</span><span class="pl-c1">=</span><span class="pl-s">'3d'</span>)

<span class="pl-c"># load some test data for demonstration and plot a wireframe</span>
<span class="pl-v">X</span>, <span class="pl-v">Y</span>, <span class="pl-v">Z</span> <span class="pl-c1">=</span> <span class="pl-s1">axes3d</span>.<span class="pl-en">get_test_data</span>(<span class="pl-c1">0.1</span>)
<span class="pl-s1">ax</span>.<span class="pl-en">plot_wireframe</span>(<span class="pl-v">X</span>, <span class="pl-v">Y</span>, <span class="pl-v">Z</span>, <span class="pl-s1">rstride</span><span class="pl-c1">=</span><span class="pl-c1">5</span>, <span class="pl-s1">cstride</span><span class="pl-c1">=</span><span class="pl-c1">5</span>)

<span class="pl-c"># rotate the axes and update</span>
<span class="pl-k">for</span> <span class="pl-s1">angle</span> <span class="pl-c1">in</span> <span class="pl-en">range</span>(<span class="pl-c1">0</span>, <span class="pl-c1">360</span>):
    <span class="pl-s1">ax</span>.<span class="pl-en">view_init</span>(<span class="pl-c1">30</span>, <span class="pl-s1">angle</span>)
    <span class="pl-s1">plt</span>.<span class="pl-en">draw</span>()
    <span class="pl-s1">plt</span>.<span class="pl-en">pause</span>(<span class="pl-c1">.001</span>)</pre></div>