import matplotlib.pyplot as plt
# Datos (Masa en M☉ y Distancia en ly)
datos = [
(1.9, 33.8), (1.1, 36.7), (2.0, 38), (2.6, 43.5), (2.5, 43.5), (1.9, 54.7), (1.6, 57.4),
(1.3, 58.8), (2.0, 62.2), (1.4, 63.3), (1.7, 63.3), (1.9, 63.5), (1.2, 63.7), (1.5, 65.8),
(1.2, 66.6), (1.3, 66.8), (1.5, 71.8), (2.0, 72.7), (1.7, 74.2), (2.6, 76), (1.0, 76.8),
(1.1, 77), (1.1, 80.4), (1.8, 81.5), (1.6, 81.7), (1.8, 83.1), (0.8, 85.1), (1.6, 86.8),
(1.2, 87.9), (0.86, 88), (1.1, 88.4), (1.5, 88.6), (2.6, 91.3), (2.4, 93.2), (1.6, 94.3),
(1.4, 94.9), (1.8, 101), (2.6, 110), (1.3, 125), (1.7, 130), (1.6, 130), (1.1, 138),
(2.1, 141), (1.2, 144), (3.0, 151), (1.7, 154), (1.2, 160), (2.6, 182), (1.4, 187),
(2.5, 197), (1.7, 208), (1.3, 209), (2.3, 223), (1.7, 227), (2.4, 243), (1.5, 244),
(1.1, 248), (2.3, 249), (0.98, 260), (1.3, 261), (1.9, 268), (3.0, 274), (1.6, 294),
(27.9, 294), (1.1, 295), (2.8, 303), (0.97, 308), (8.0, 309), (1.7, 321), (1.2, 328),
(2.0, 331), (1.5, 336), (2.7, 339), (6.3, 339), (1.1, 353), (1.1, 368), (1.5, 397),
(6.0, 403), (2.0, 411), (2.4, 423), (1.6, 424), (3.0, 426), (2.4, 436), (1.3, 462),
(1.4, 483), (2.5, 519), (1.2, 527), (1.5, 527), (1.8, 532), (1.0, 540), (2.7, 548),
(7.9, 573), (1.2, 597), (1.0, 628), (1.1, 693), (4.5, 705), (2.0, 705), (1.3, 710),
(1.8, 721), (1.1, 727), (1.7, 746), (1.8, 768), (0.85, 966), (14.0, 1079), (6.3, 1119),
(9.1, 1217), (1.9, 1246), (1.2, 1294), (1.3, 1302), (8.6, 1417), (1.4, 1497), (1.0, 1677),
(7.9, 1696), (1.7, 1705), (1.3, 1762), (1.9, 1769), (1.2, 1840), (3.0, 2206), (8.8, 2312),
(5.1, 2367)
]
# Filtrar datos: quitar los que tengan masa <= 0
datos_filtrados = [(m, d) for m, d in datos if m > 0]
# Separar en listas
masas = [m for m, d in datos_filtrados]
distancias = [d for m, d in datos_filtrados]
# Crear gráfica
plt.figure(figsize=(10,6))
plt.scatter(distancias, masas, color="blue", alpha=0.7, edgecolors="k")
# Personalización
plt.title("Relación Masa vs Distancia de Estrellas")
plt.xlabel("Distancia (años luz)")
plt.ylabel("Masa (M☉)")
plt.grid(True)
plt.show()
aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKIyBEYXRvcyAoTWFzYSBlbiBN4piJIHkgRGlzdGFuY2lhIGVuIGx5KQpkYXRvcyA9IFsKICAgICgxLjksIDMzLjgpLCAoMS4xLCAzNi43KSwgKDIuMCwgMzgpLCAoMi42LCA0My41KSwgKDIuNSwgNDMuNSksICgxLjksIDU0LjcpLCAoMS42LCA1Ny40KSwKICAgICgxLjMsIDU4LjgpLCAoMi4wLCA2Mi4yKSwgKDEuNCwgNjMuMyksICgxLjcsIDYzLjMpLCAoMS45LCA2My41KSwgKDEuMiwgNjMuNyksICgxLjUsIDY1LjgpLAogICAgKDEuMiwgNjYuNiksICgxLjMsIDY2LjgpLCAoMS41LCA3MS44KSwgKDIuMCwgNzIuNyksICgxLjcsIDc0LjIpLCAoMi42LCA3NiksICgxLjAsIDc2LjgpLAogICAgKDEuMSwgNzcpLCAoMS4xLCA4MC40KSwgKDEuOCwgODEuNSksICgxLjYsIDgxLjcpLCAoMS44LCA4My4xKSwgKDAuOCwgODUuMSksICgxLjYsIDg2LjgpLAogICAgKDEuMiwgODcuOSksICgwLjg2LCA4OCksICgxLjEsIDg4LjQpLCAoMS41LCA4OC42KSwgKDIuNiwgOTEuMyksICgyLjQsIDkzLjIpLCAoMS42LCA5NC4zKSwKICAgICgxLjQsIDk0LjkpLCAoMS44LCAxMDEpLCAoMi42LCAxMTApLCAoMS4zLCAxMjUpLCAoMS43LCAxMzApLCAoMS42LCAxMzApLCAoMS4xLCAxMzgpLAogICAgKDIuMSwgMTQxKSwgKDEuMiwgMTQ0KSwgKDMuMCwgMTUxKSwgKDEuNywgMTU0KSwgKDEuMiwgMTYwKSwgKDIuNiwgMTgyKSwgKDEuNCwgMTg3KSwKICAgICgyLjUsIDE5NyksICgxLjcsIDIwOCksICgxLjMsIDIwOSksICgyLjMsIDIyMyksICgxLjcsIDIyNyksICgyLjQsIDI0MyksICgxLjUsIDI0NCksCiAgICAoMS4xLCAyNDgpLCAoMi4zLCAyNDkpLCAoMC45OCwgMjYwKSwgKDEuMywgMjYxKSwgKDEuOSwgMjY4KSwgKDMuMCwgMjc0KSwgKDEuNiwgMjk0KSwKICAgICgyNy45LCAyOTQpLCAoMS4xLCAyOTUpLCAoMi44LCAzMDMpLCAoMC45NywgMzA4KSwgKDguMCwgMzA5KSwgKDEuNywgMzIxKSwgKDEuMiwgMzI4KSwKICAgICgyLjAsIDMzMSksICgxLjUsIDMzNiksICgyLjcsIDMzOSksICg2LjMsIDMzOSksICgxLjEsIDM1MyksICgxLjEsIDM2OCksICgxLjUsIDM5NyksCiAgICAoNi4wLCA0MDMpLCAoMi4wLCA0MTEpLCAoMi40LCA0MjMpLCAoMS42LCA0MjQpLCAoMy4wLCA0MjYpLCAoMi40LCA0MzYpLCAoMS4zLCA0NjIpLAogICAgKDEuNCwgNDgzKSwgKDIuNSwgNTE5KSwgKDEuMiwgNTI3KSwgKDEuNSwgNTI3KSwgKDEuOCwgNTMyKSwgKDEuMCwgNTQwKSwgKDIuNywgNTQ4KSwKICAgICg3LjksIDU3MyksICgxLjIsIDU5NyksICgxLjAsIDYyOCksICgxLjEsIDY5MyksICg0LjUsIDcwNSksICgyLjAsIDcwNSksICgxLjMsIDcxMCksCiAgICAoMS44LCA3MjEpLCAoMS4xLCA3MjcpLCAoMS43LCA3NDYpLCAoMS44LCA3NjgpLCAoMC44NSwgOTY2KSwgKDE0LjAsIDEwNzkpLCAoNi4zLCAxMTE5KSwKICAgICg5LjEsIDEyMTcpLCAoMS45LCAxMjQ2KSwgKDEuMiwgMTI5NCksICgxLjMsIDEzMDIpLCAoOC42LCAxNDE3KSwgKDEuNCwgMTQ5NyksICgxLjAsIDE2NzcpLAogICAgKDcuOSwgMTY5NiksICgxLjcsIDE3MDUpLCAoMS4zLCAxNzYyKSwgKDEuOSwgMTc2OSksICgxLjIsIDE4NDApLCAoMy4wLCAyMjA2KSwgKDguOCwgMjMxMiksCiAgICAoNS4xLCAyMzY3KQpdCgojIEZpbHRyYXIgZGF0b3M6IHF1aXRhciBsb3MgcXVlIHRlbmdhbiBtYXNhIDw9IDAKZGF0b3NfZmlsdHJhZG9zID0gWyhtLCBkKSBmb3IgbSwgZCBpbiBkYXRvcyBpZiBtID4gMF0KCiMgU2VwYXJhciBlbiBsaXN0YXMKbWFzYXMgPSBbbSBmb3IgbSwgZCBpbiBkYXRvc19maWx0cmFkb3NdCmRpc3RhbmNpYXMgPSBbZCBmb3IgbSwgZCBpbiBkYXRvc19maWx0cmFkb3NdCgojIENyZWFyIGdyw6FmaWNhCnBsdC5maWd1cmUoZmlnc2l6ZT0oMTAsNikpCnBsdC5zY2F0dGVyKGRpc3RhbmNpYXMsIG1hc2FzLCBjb2xvcj0iYmx1ZSIsIGFscGhhPTAuNywgZWRnZWNvbG9ycz0iayIpCgojIFBlcnNvbmFsaXphY2nDs24KcGx0LnRpdGxlKCJSZWxhY2nDs24gTWFzYSB2cyBEaXN0YW5jaWEgZGUgRXN0cmVsbGFzIikKcGx0LnhsYWJlbCgiRGlzdGFuY2lhIChhw7FvcyBsdXopIikKcGx0LnlsYWJlbCgiTWFzYSAoTeKYiSkiKQpwbHQuZ3JpZChUcnVlKQpwbHQuc2hvdygpCg==