Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 40d1844

Browse filesBrowse files
3d plot view angle documentation
1 parent 9b1fcf6 commit 40d1844
Copy full SHA for 40d1844

File tree

Expand file treeCollapse file tree

4 files changed

+46
-2
lines changed
Filter options
Expand file treeCollapse file tree

4 files changed

+46
-2
lines changed
144 KB
Loading

‎doc/_static/mplot3d_view_angles.png

Copy file name to clipboard
78.2 KB
Loading

‎doc/api/toolkits/mplot3d.rst

Copy file name to clipboardExpand all lines: doc/api/toolkits/mplot3d.rst
+4-2Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,15 @@ more information.
2020

2121
The interactive backends also provide the ability to rotate and zoom the 3D
2222
scene. One can rotate the 3D scene by simply clicking-and-dragging the scene.
23-
Zooming is done by right-clicking the scene and dragging the mouse up and down
24-
(unlike 2D plots, the toolbar zoom button is not used).
23+
Panning is done by clicking the middle mouse button, and zooming is done by
24+
right-clicking the scene and dragging the mouse up and down. Unlike 2D plots,
25+
the toolbar pan and zoom buttons are not used.
2526

2627
.. toctree::
2728
:maxdepth: 2
2829

2930
mplot3d/faq.rst
31+
mplot3d/view_angles.rst
3032

3133
.. note::
3234
`.pyplot` cannot be used to add content to 3D plots, because its function
+42Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
.. _toolkit_mplot3d-view-angles:
2+
3+
*******************
4+
mplot3d View Angles
5+
*******************
6+
7+
How to define the view angle
8+
============================
9+
10+
The position of the viewport "camera" in a 3D plot is defined by three angles:
11+
elevation, azimuth, and roll. From the resulting position, it always points
12+
towards the center of the plot box volume. The angle direction convention is
13+
shared with
14+
`PyVista <https://docs.pyvista.org/api/core/camera.html>`_ and
15+
`MATLAB <https://www.mathworks.com/help/matlab/ref/view.html>`_
16+
(though MATLAB lacks a roll angle). Note that a positive roll angle rotates the
17+
viewing plane clockwise, so the 3d axes will appear to rotate
18+
counter-clockwise.
19+
20+
.. image:: /_static/mplot3d_view_angles.png
21+
:align: center
22+
:scale: 50
23+
24+
Rotating the plot using the mouse will control only the azimuth and elevation,
25+
but all three angles can be set programmatically::
26+
27+
import matplotlib.pyplot as plt
28+
ax = plt.figure().add_subplot(projection='3d')
29+
ax.view_init(elev=30, azim=45, roll=15)
30+
31+
32+
Primary view planes
33+
===================
34+
35+
To look directly at the primary view planes, the required elevation, azimuth,
36+
and roll angles are shown in the diagram of an "unfolded" plot below. You could
37+
print out this image and fold it into a box where each plane forms a side of
38+
the box. These are further documented in the `.mplot3d.axes3d.Axes3D.view_init`
39+
API.
40+
41+
.. image:: /_static/mplot3d_primary_view_planes.png
42+
:align: center

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.