Skip to content
Snippets Groups Projects
Commit b7314a6b authored by Yineth Melissa Pérez Ayala's avatar Yineth Melissa Pérez Ayala
Browse files

Add new file

parent 01cbbaac
No related branches found
No related tags found
No related merge requests found
#Ejercicio 2, clase 3. Melissa Pérez
#En este ejercicio se intenta realizar una animación a partir del diagrama de Hertzprung-Russell.
import matplotlib.pyplot as plt
import matplotlib.animation as animation
%matplotlib notebook
import matplotlib.pyplot as plt
import matplotlib.animation as animation
%matplotlib notebook
#Se importan las librerías necesarias para la animación.
import pandas
data = pandas.read_csv("data_dwarfs.csv")
j
lum = list(data["lum"])
temp = list(data["temp"])
radius = list(data["radius"])
colores = []
for j in range(len(temp)):
colores.append(2**13)
data = pandas.read_csv("data_ms.csv")
lum = lum + list(data["lum"])
temp = temp + list(data["temp"])
radius = radius + list(data["radius"])
colores = colores + list(data["temp"])
data = pandas.read_csv("data_supergiants.txt", sep=" ")
lum = lum + list(data["lum"])
temp = temp + list(data["temp"])
radius = radius + list(data["radius"])
colores = colores + list(data["temp"])
data = pandas.read_csv("data_giants.txt", sep=" ")
lum = lum + list(data["lum"])
temp = temp + list(data["temp"])
radius = radius + list(data["radius"])
colores = colores + list(data["temp"])
#Con la librería pandas se hace la lectura de datos y se guardan en 3 listas como en el ejercicio 1. También se crea una lista colores, de nuevo, como #en el ejercicio 1. Con ella se define el c del cmap.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
fig.figsize=(12,10)
#ax.scatter(temp, lum, s=radius, c=colores, cmap = 'coolwarm_r',alpha=1)
ax.scatter([],[])
def init():
line = ax.scatter([],[])
plt.show()
return line
def animate(i):
lum2 = lum[:i+1]
temp2 = temp[:i+1]
radius2 = radius[:i+1]
colores2 = colores[:i+1]
line = ax.scatter(temp2, lum2, s=radius2, c=colores2, cmap = 'coolwarm_r',alpha=1)
plt.show()
return line
ax.set_xlabel("Temperatura", fontsize=15)
ax.set_ylabel("Luminosidad", fontsize=15)
ax.set_xlim(15000, 3000)
ax.set_ylim(0.00001, 10000000)
plt.xscale("log", base=2)
plt.yscale("log")
ax.set_title('HRD')
plt.xticks([12000,9000,6000,3000],[12000,9000,6000,3000])
plt.yticks([10**-5,10**-2,10**1,10**4,10**7])
ax.grid(True)
fig.tight_layout()
anim = FuncAnimation(fig, animate, init_func=init, frames=len(lum),interval=40)
anim.save('prueba.gif')
#plt.show()
Figure 1
MovieWriter ffmpeg unavailable; using Pillow instead.
#Se crea una animación, sin embargo no es la deseada ya que no aparecen una a una las estrellas, sino que van alternando de color.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment