Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ws2021:raketenbahn:gestaltung [2021/04/07 03:55] konstantinflorian |
ws2021:raketenbahn:gestaltung [2021/04/07 17:00] (aktuell) konstantinflorian |
||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
Die erste Ausarbeitung des Projekts geschah zweidimensional. Genutzt wurde das Modul Matplotlib, da wir schon eine gewisse Erfahrung damit hatten.\\ | Die erste Ausarbeitung des Projekts geschah zweidimensional. Genutzt wurde das Modul Matplotlib, da wir schon eine gewisse Erfahrung damit hatten.\\ | ||
- | Nach der Entscheidung NASA HORIZONS zu nutzen und der relativ simplen Umgestaltung unserer zwei-dimensionalen Berechnung in eine drei-dimensionale haben wir Plotly aufgrund der doch einfachen Bedienung für die Visualisierung gewählt. | + | Nach der Entscheidung NASA HORIZONS zu nutzen und der relativ simplen Umgestaltung unserer zwei-dimensionalen Berechnung in eine drei-dimensionale haben wir Plotly aufgrund der doch einfachen Bedienung gewählt. |
__Wichtig für den Plot ist__:\\ | __Wichtig für den Plot ist__:\\ | ||
Zeile 11: | Zeile 11: | ||
- flüssige Animationen\\ | - flüssige Animationen\\ | ||
- eine schnelle Umsetzung der Daten in einen Plot\\ | - eine schnelle Umsetzung der Daten in einen Plot\\ | ||
+ | |||
+ | =====Plot===== | ||
+ | |||
+ | |||
+ | <file python> | ||
+ | def plot(): | ||
+ | size = 30 | ||
+ | fig = px.scatter_3d(data, x="x", y="y", z="z", | ||
+ | color="Object", | ||
+ | size="size", | ||
+ | range_x=[-size, size], | ||
+ | range_y=[-size, size], | ||
+ | range_z=[-size, size], | ||
+ | animation_group="Object", | ||
+ | animation_frame="date", | ||
+ | size_max=100, | ||
+ | text="Object", | ||
+ | color_discrete_map={"Sonne": "#fcf695", | ||
+ | "Merkur": "#465b73", "Venus": "#ffffa0", "Erde": "#567ace", | ||
+ | "Mars": "#ff8000", "Jupiter": "#c39595", | ||
+ | "Saturn": "#cace88", "Uranus": "#b7d3e9", "Neptun": "#567ace", | ||
+ | "Tesla-Starman": "#fff"}, | ||
+ | opacity=0.9, | ||
+ | hover_name="Object", | ||
+ | hover_data={"date": False, "size": False} | ||
+ | ) | ||
+ | fig.show() | ||
+ | </file> | ||
+ | |||
+ | Die Funktion plot() legt die Grundlage für das visualisieren der simulierten Daten. | ||
+ | Hierbei wird ein Plot der Art scatter_3d erstellt. Parameter wie range_x oder opacity definieren generelle Eigenschaften. Das Auslesen des data Dictionarys geschieht mithilfe der ersten sechs Zuweisungen.\\ | ||
+ | animation_group und animation_frame gibt dem Plot die benötigten Variablen für die Animation. | ||
+ | |||
+ | =====Gestaltung des Plots===== | ||
+ | |||
+ | weitere Anpassungen: | ||
+ | |||
+ | <file python> | ||
+ | fig.update_layout(margin_l=10, margin_r=10, margin_t=10, paper_bgcolor="#333333", | ||
+ | margin_b=10, | ||
+ | font_family="Times New Roman", | ||
+ | font_color="#fff", | ||
+ | title_font_family="Arial", | ||
+ | title_font_color="#fff", | ||
+ | title_font_size=24, | ||
+ | legend_title_font_color="#fff", | ||
+ | title = { | ||
+ | 'text': "Raumflug", | ||
+ | 'y': 0.95, | ||
+ | 'x': 0.1, | ||
+ | 'xanchor': 'center', | ||
+ | 'yanchor': 'top'}) | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | fig.update_scenes(bgcolor="#333333", | ||
+ | aspectmode="manual", | ||
+ | xaxis_showbackground=False, xaxis_color="#fff", xaxis_tickfont_family="Courier New", | ||
+ | xaxis_ticksuffix="AU", xaxis_zerolinewidth=3, | ||
+ | yaxis_showbackground=False, yaxis_color="#fff", yaxis_tickfont_family="Courier New", | ||
+ | yaxis_ticksuffix="AU", yaxis_zerolinewidth=3, | ||
+ | zaxis_showbackground=False, zaxis_color="#fff", zaxis_tickfont_family="Courier New", | ||
+ | zaxis_ticksuffix="AU", zaxis_zerolinewidth=3 | ||
+ | |||
+ | ) | ||
+ | |||
+ | |||
+ | |||
+ | </file> | ||
+ | |||
+ | |||
+ | |||
+ | |||