PyEpchem i Python
-
jacek
08/10/2019
- Programowanie
- 1556 czytań 0 komentarzy
PyEphem. Centrum Astronomii UMK. Krzysztof Katarzyński.
#!/usr/bin/python3 #------------------------------------------------------------------------------- # Name: Księżyce Jowisza - ephem v.2 # Purpose: python 3.7 i 3.6 # # Author: Jacek Patka # # Created: 08-10-2019 # Copyright: (c) astronom 2019 # Licence: Jacek Patka - jpatka@wp.pl #------------------------------------------------------------------------------- # -*- coding: UTF-8 -*- # Importujemy potrzebne moduły import matplotlib.pyplot as plt import ephem as ep import numpy as np # Tworzymy obiekty - księżyce Io = ep.Io() Eu = ep.Europa() Ga = ep.Ganymede() Ca = ep.Callisto() # PUSTE LISTY DO KTÓRYCH BĘDZIEMY # DOPISYWAĆ KOLEJNE WSPÓŁRZĘDNE y = [] # wspólna wsp. y xIo = [] # współrzędna x dla xEu = [] # każdego księżyca xGa = [] # osobno xCa = [] # krok czasowy - godzina dt = ep.hour # czas początkowy ts = ep.now() # czas aktualny tm = ts # GŁÓWNA PĘTLA OBLICZENIOWA for i in range (2*24): # obliczamy wsp. y-ową y.append((tm-ts)*24.0) # obliczamy wsp. x-owe Io.compute(tm) Eu.compute(tm) Ga.compute(tm) Ca.compute(tm) # dodajemy wyliczenia do list xIo.append(Io.x) xEu.append(Eu.x) xGa.append(Ga.x) xCa.append(Ca.x) # zwiększamy czas o godzinę tm += dt # rysujemy wynik fig,ax = plt.subplots(figsize=(12,9), dpi=150) ax.plot(xIo, y, marker="o", markersize=5, markerfacecolor="orange", markeredgewidth="1", markeredgecolor="black", label="Io") ax.plot(xEu, y, marker="o", markersize=5, markerfacecolor="white", markeredgewidth="1", markeredgecolor="black", label="Eu") ax.plot(xGa, y, marker="o", markersize=5, markerfacecolor="brown", markeredgewidth="1", markeredgecolor="black",label="Gan") ax.plot(xCa, y, marker="o", markersize=5, markerfacecolor="gray", markeredgewidth="1", markeredgecolor="black", label="Cal") ax.plot(np.zeros(len(y)), y, marker="o", markersize=8, markerfacecolor="black", markeredgewidth="1", markeredgecolor="black", label="Jowisz", alpha=0.5) # opis rysunku ax.legend(loc=4) ax.set_xlabel(u"pozycja względem Jowisza") ax.set_ylabel("czas od chwili obecnej\n(UT:%s)"%ts) ax.set_title(u"Ruch księżyców galileuszowych") fig.savefig("KsiezyceJowisza-ax.pdf", dpi=200) ##możłiwe formaty PNG ## JPG EPS SVG PGF PDF fig.savefig("KsiezyceJowisza-ax.png", dpi=200) plt.show()
Dodaj komentarz
Zaloguj się, aby móc dodać komentarz.
Oceny
Tylko zarejestrowani użytkownicy mogą oceniać zawartość strony
Zaloguj się , żeby móc zagłosować.
Zaloguj się , żeby móc zagłosować.
Brak ocen. Może czas dodać swoją?