Comment rechercher à l'aide de l'Astroquery de Python et obtenir des images ajustées avec Skyview

Je veux rechercher avec une requête et enregistrer l'image d'ajustement

astroquery

Comme point de départ, utilisez astroquery pour trouver les données et les corps célestes souhaités. Pour savoir comment l'utiliser, reportez-vous à Recherche dans le catalogue astronomique de l'espace en utilisant l'astroquery de python et la méthode de traçage simple utilisant des galaxies.

changer de nom

Skyview ne peut pas distinguer NGC uniquement par "N", mais selon le catalogue, NGC est souvent omis et seul N est utilisé. Dans ce qui suit, N est changé en NGC et I est changé en IC pour générer une liste de noms.

skyview

skyview d'astroquery fournit des images à l'adresse https://astroquery.readthedocs.io/en/latest/skyview/skyview.html. Ici, un exemple est montré dans lequel la radiographie est une image de HRI de Rosat et visible est un exemple de téléchargement d'une image DSS et de l'enregistrer par ajustements.

Exemple de code

Ici, un catalogue de rayons X et un atlas des galaxies. (Fabbiano +,) à http://vizier.u-strasbg.fr/viz-bin/VizieR-3?-source=J/ApJS/80/531/gxfluxes 1992) est un exemple de référence.

python


#!/usr/bin/env python

from astroquery.vizier import Vizier 
v = Vizier(catalog="J/ApJS/80/531/gxfluxes",columns=['Name',"logLx","Bmag","dist","type"],row_limit=-1)
data = v.query_constraints()
sname = data[0]["Name"] 
namelist = []

olist=["HRI","DSS"]

def save(p,name,obs):
    for onep,oneo in zip(p,obs):
        onep.writeto(name+"_"+oneo+".fits",overwrite=True)

for one in sname:
    name=one.strip().split()[0]
    name=name.replace("N","NGC").replace("I","IC")
    namelist.append(name)

from astroquery.skyview import SkyView
for i,name in enumerate(namelist):
    print(i,name)
    try:
        paths = SkyView.get_images(position=name, survey=olist)
        save(paths,name,olist)
    except:
        print("..... ERROR ",i,name)


Méthode de tracé

Comment tracer l'image d'ajustement téléchargée de cette manière Il est résumé dans Comment tracer plusieurs images ajustées côte à côte en utilisant python. Des outils astronomiques tels que ds9 peuvent être utilisés, mais le traitement par lots est souvent gênant avec ds9.

Version avancée

Comment obtenir une image d'une épave de supernova

La base de données est https://vizier.u-strasbg.fr/viz-bin/VizieR?-source=VII/272 Un catalogue de restes de supernova galactique (Green, 2014) Un catalogue de restes de supernova galactique (Green, 2014) Semble être le dernier, donc je vais l'utiliser.

Code et notes

C'est fondamentalement le même que ci-dessus, mais le nom donné à la position de SkyView doit être un nom reconnu par SIMBAD ou NED, donc par exemple, G016.2-02.7 n'est pas suffisant, et SNR est ajouté avant. Je dois.

En dehors de cela, dans le cas des rayons X et de la lumière visible de galaxies éloignées, les diamètres visuels sont presque les mêmes, mais comme les débris de supernova sont un corps céleste intrasystème, les diamètres visuels varient considérablement, de sorte que l'image optimale est automatiquement acquise avec ce qui suit Pas vraiment (sera révisé quelque part).

python


#!/usr/bin/env python

from astroquery.vizier import Vizier 

v = Vizier(catalog="VII/272/snrs",columns=["SNR","type","S","Names"],row_limit=-1)
#https://vizier.u-strasbg.fr/viz-bin/VizieR?-source=VII/272
#A catalogue of Galactic supernova remnants (Green, 2014) A catalogue of Galactic supernova remnants (Green, 2014)
data = v.query_constraints()

sname = data[0]["SNR"] 
namelist = []

olist=["HRI","DSS","Fermi 5"]

def save(p,name,obs):
    for onep,oneo in zip(p,obs):
        onep.writeto(name+"_"+oneo+".fits",overwrite=True)

for one in sname:
    name=one.strip().split()[0]
    namelist.append(name)

from astroquery.skyview import SkyView
for i,name in enumerate(namelist):
    print(i,name)
    try:
        paths = SkyView.get_images(position="SNR " + name, survey=olist)

Recommended Posts

Comment rechercher à l'aide de l'Astroquery de Python et obtenir des images ajustées avec Skyview
Comment démarrer avec Scrapy
Comment démarrer avec Python
Comment obtenir des abonnés et des abonnés de Python à l'aide de l'API Mastodon
Comment obtenir l'identifiant du parent avec sqlalchemy
Comment traiter les images de caméra avec Teams et Zoom Volume de l'analyse des émotions avec Tensorflow
Comment obtenir la différence de date et d'heure en secondes avec Python
Recevez des tweets avec la fonction Google Cloud et enregistrez automatiquement les images dans Google Photos
[Python] Essayez de reconnaître les caractères des images avec OpenCV et pyocr
Essayez de le faire avec GUI, PyQt en Python
Essayez d'utiliser pytest-Overview and Samples-
Envoyer des messages et des images à l'aide de LineNotify
Essayez d'utiliser pynag pour configurer Nagios
Essayez d'obtenir des statistiques en utilisant e-Stat
Comment rechercher à l'aide de l'Astroquery de Python et obtenir des images ajustées avec Skyview
Comment démarrer le projet Python en 2020 (Windows WSL et Mac commun)
Comment tracer plusieurs images ajustées côte à côte en utilisant Python
Enregistrez automatiquement les images et les vidéos touchées par la recherche Twitter sur l'iPhone à l'aide de Pythonista3
Comment lire un tableau avec ConfigParser de Python
Comment obtenir des données d'article à l'aide de l'API Qiita
Comment afficher des images en continu avec matplotlib Memo
Comment rechercher des données HTML à l'aide de Beautiful Soup
Télécharger des images sur S3 avec une interface graphique à l'aide de tkinter
[Pour les débutants] Comment afficher des cartes et des champs de recherche à l'aide de l'API Javascript GoogleMap
Comment traiter les images de caméra avec Teams et Zoom
[Rails] Comment obtenir des informations de localisation à l'aide de l'API de géolocalisation
Obtenez des images et des vidéos de la chronologie des médias avec Python + Tweepy
Comment obtenir un utilisateur connecté avec les forms.py de Django
Comment partager des dossiers avec Docker et Windows avec tensorflow
Comment obtenir plus de 1000 données avec SQLAlchemy + MySQLdb
Comment extraire des valeurs Null et des valeurs non Null avec des pandas
Comment boucler et lire une vidéo gif avec openCV
Comment obtenir le verdict de la molette de la souris avec des malédictions Python
Comment analyser avec Google Colaboratory à l'aide de l'API Kaggle
[Comment!] Apprenez et jouez à Super Mario avec Tensorflow !!
Comment obtenir des histogrammes RVB et HSV avec OpenCV
Comment analyser le code source Java avec AST (Abstract Syntax Tree) en utilisant ANTLR et Python
[Python / Ruby] Comprendre le code Comment obtenir des données en ligne et les écrire au format CSV
Comment traiter les images de caméra avec Teams et Zoom Volume de traitement dans le style d'animation
Cloud Functions pour redimensionner les images à l'aide d'OpenCV avec le déclencheur Cloud Storage
[Python] Comment jouer avec les variables de classe avec décorateur et métaclasse
J'ai essayé d'obtenir les informations du Web en utilisant "Requests" et "lxml"
Comment imprimer des caractères sous forme de tableau avec la fonction d'impression de Python
Comment résoudre la protection CSRF lors de l'utilisation d'AngularJS avec Django
Comment ajouter de nouvelles données (lignes droites et tracés) à l'aide de matplotlib
Comment obtenir toutes les clés et valeurs du dictionnaire
Comment mettre à jour le blog FC2, etc. en utilisant XMLRPC avec Python
Comment créer une trame de données et jouer avec des éléments avec des pandas
Comment obtenir la température du thermo-hygromètre SwitchBot à l'aide de Raspberry Pi
Obtenez des données supplémentaires vers LDAP avec python (Writer et Reader)
Comment générer des informations supplémentaires lors de la sortie de journaux avec le module de journalisation de python
[Introduction à Python] Comment obtenir des données avec la fonction listdir
Comment se connecter à AtCoder avec Python et soumettre automatiquement
Comment utiliser la recherche triée
Comment mettre à jour avec SQLAlchemy?
Comment lancer avec Theano
Comment modifier avec SQLAlchemy?
Comment séparer les chaînes avec ','
Comment faire RDP sur Fedora31
Comment supprimer avec SQLAlchemy?
Comment définir un raccourci pour basculer entre pleine largeur et demi-largeur dans IBus