I have 3d plot surface. And I want disable vertical camera rotation for this plot.
3 Answers
By default you may only disable mouse for your plot:
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
X, Y, Z = axes3d.get_test_data(0.1)
# disable mouse
ax.disable_mouse_rotation()
ax.plot_wireframe(X, Y, Z, rstride=5, cstride=5)
# set start rotation
ax.view_init(30, 120)
plt.show()
Comments
This may be relevant:
https://matplotlib.org/stable/api/toolkits/mplot3d/view_angles.html#rotation-with-mouse
I found that using the azel mouse rotation style would constraint the plot to stay upright. If that's what you meant by disabling vertical camera rotation.