Skip to content
Snippets Groups Projects
Commit 9bb2a325 authored by Jesus David Bermudez Sanchez's avatar Jesus David Bermudez Sanchez
Browse files

se agrega bibliografia en la ultima celda usando Markdown

parent 3769eb57
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id: tags:
# *Mi nombre es Jesus David Bermudez Sanchez, soy estudiante de la Maestria en Fisica de la Universidad Nacional de Colombia, Sede Bogotá*
---
%% Cell type:markdown id: tags:
## **Ejercicio No. 1**
+ Investigue sobre el diagrama de Hertzprung-Russell, una herramienta muy
potente en astronomia, y describa un poco al respecto para darle contexto al resto de la tarea.
+ El objetivo es generar un diagrama HR lo más parecido al de esta referencia. No lucirá idéntico por que no se usarán exactamente los mismos datos, y las unidades pueden ser ligeramente distinta. La idea sí es dejar su figura lo más parecida a la de referencia en el estilo: colores, escalas en los ejes, tamaño de los marcadores, leyendas, textos en el gráfico, etc.
+ Los datos para crear la figura están en la carpeta Data. Cada tabla contiene las informaciones sobre un tipo de estrellas según indican los nombres de archivo. La información viene en 3 columnas: luminosidad en luminosidades solares, Temperatura en Kelvin y Radio de la estrella en unidades arbitrarias
+ La idea es que cada estrella en el gráfico tenga un color representativo
de su temperatura (que estrellas frías son rojas y estrellas calientes
son azules) y que el tamaño del símbolo sea representativo del tamaño de
cada estrella para diferenciar entre enanas, gigantes y estrellas de
secuencia principal
+ Busque que su código sea semi automático; es indispensable leer
los datos desde el propio programa, no copiarlos a mano, y hallar una forma
de obtener los tamaños y colores sin declararlos uno a uno
%% Cell type:code id: tags:
``` python
!pwd
```
%% Output
/home/bernmudezj/ejercicios-clase-03-datos
%% Cell type:code id: tags:
``` python
!ls
```
%% Output
data README.md Untitled.ipynb
%% Cell type:code id: tags:
``` python
import numpy as np
import matplotlib.pyplot as plt
```
%% Cell type:code id: tags:
``` python
# Las columnas son Luminosidad, Temperatura, Radio
# Las unidades de estas columnas son
# [Luminosidad]=Luminosidades Solares;
# [Temperatura]=Kelvin;
# [Radio]=Unidades Arbitrarias
data_dwarfs=np.genfromtxt("./data/dwarfs.csv",dtype=float,delimiter=',',skip_header=1)
data_giants=np.genfromtxt("./data/giants.txt",dtype=float,delimiter=' ',skip_header=1)
data_ms=np.genfromtxt("./data/ms.csv",dtype=float,delimiter=',',skip_header=1)
data_supergiants=np.genfromtxt("./data/supergiants.txt",dtype=float,delimiter=' ',skip_header=1)
```
%% Cell type:markdown id: tags:
### Creamos un arreglo de `numpy` que contenga _todos_ los datos que cargamos en el celda anterior
%% Cell type:code id: tags:
``` python
estrellas=np.concatenate((data_dwarfs,data_giants,data_ms,data_supergiants),axis=0)
#estrellas
```
%% Cell type:markdown id: tags:
## Hacemos el grafico de dispersión de los datos
%% Cell type:code id: tags:
``` python
# La luminosidad corresponde a la primera columna del arreglo estrellas,
# la temperatura corresponde a la segunda columna y el radio a la tercera columna.
lumino=estrellas[:,0]
temp=estrellas[:,1]
radio=estrellas[:,2]
fig = plt.figure(figsize=(12,8))
axes=fig.gca()
plt.scatter(temp,lumino,s=radio*10,c=temp,cmap='RdYlBu')
#plt.axis([temp.max(),temp.min(),10**(-5),10**(7)])
axes.invert_xaxis()
plt.yscale("log")
plt.xlabel("Temperatura (K)",fontsize=20)
plt.ylabel(r"Luminosidad ($L_{sun}$)",fontsize=20)
# Las anotaciones se pueden hacer de dos formas:
# La primera es con plt.anotate('text',(x,y))
# La segunda forma es con axes.anotate('text',(x,y))
# Definimos una variable para el tamaño de la letra en las anotaciones de
# la grafica
size_letra=15
# Las coordenadas donde se introducen los textos se ponen a ojo.
axes.annotate('Secuencia Principal',(7700,0.1),fontsize=size_letra)
axes.annotate('Secuencia Principal',(11000,10),fontsize=size_letra)
axes.annotate('Gigantes Rojas',(5000,990),fontsize=size_letra)
axes.annotate('Supergigantes Rojas',(6500,70000),fontsize=size_letra)
axes.annotate('Gigantes Azules',(11000,10**5),fontsize=size_letra)
axes.annotate('Enanas Rojas',(8000,10**(-4)),fontsize=size_letra)
plt.title("Grafica H-R",fontsize=25)
plt.show()
```
%% Output
%% Cell type:markdown id: tags:
## **Bibliografia**
+ Cambiar el tamaño de letra de las anotaciones: https://stackoverflow.com/questions/14643891/different-font-sizes-in-the-same-annotation-of-matplotlib#14659858
%% Cell type:code id: tags:
``` python
```
......
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