plotly / plotly/plotly.py

Orthographic projection prevents scene camera updates

Offen
#2,474 2 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug P3
Vorherrschende Sprache
Python
Sterne
18.8k
Forks
2.8k
Ø Merge
16 Std. 26 Min.
Gemergte PRs (30 T.)
21

Beschreibung

(Plotting offline)

Setting the projection to orthographic seems to prevent scene_camera settings being applied. This creates difficulty in saving as non-png images that aren't the default view.

from random import random
from plotly import __version__
import plotly.graph_objects as go

print('version: ', __version__)

version: 4.7.1

x = [random() for each in range(100)]
y = [random()*0.3 for each in range(100)]
z = [random()*0.05 for each in range(100)]

fig = go.Figure()
fig.add_trace(go.Scatter3d(x=x, y=y, z=z))
fig.layout.scene.camera.projection.type = "orthographic"
fig.show()

image

fig.update_layout(scene_camera=dict(eye=dict(x=5, y=5, z=5)))
fig.show()

image

fig.update_layout(scene_camera=dict(up=dict(x=0, y=0, z=-1)))
fig.show()

image

fig.update_layout(scene_camera=dict(center=dict(x=1, y=1, z=1)))
fig.show()

image
Also, the default view has the plot at a zoom level that crops part of the plot from view for long-shaped plots.

fig.update_layout(scene=dict(aspectmode='data'))
fig.show()

image
Scroll-zooming still works when plotted interactively.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die bereitgestellte Python-Reproduktion mit Plotly 4.7.1 auszuführen, und vergleiche das Verhalten der orthografischen Kamera nach jeder Aktualisierung von scene_camera. Verfolge anschließend den Pfad für den Offline-Bildexport von 3D-Szenen und füge einen Regressionstest hinzu, der Projektionstyp und Kameraeinstellungen abdeckt. Als erledigt gilt die Aufgabe, wenn orthografische Exporte die Einstellungen für eye, up und center anwenden und die beabsichtigte Ansicht beibehalten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
data-visualization
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
40/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.