AstroToolkit 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,934 @@
1
+ Metadata-Version: 2.1
2
+ Name: AstroToolkit
3
+ Version: 1.0.0
4
+ Summary: A package for the gathering and plotting of astronomical data.
5
+ Author-email: Ethan Moorfield <ethan.moorfield@hotmail.co.uk>
6
+ Project-URL: Homepage, https://github.com/WD-planets/Toolkit
7
+ Project-URL: Issues, https://github.com/WD-planets/Toolkit/issues
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Operating System :: OS Independent
10
+ Requires-Python: >=3.8
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+
14
+ # Toolkit
15
+ Collection of tools for data fetching, plotting and analysis
16
+
17
+ ## Installation
18
+
19
+ 1. With pip, the package can be installed using:
20
+
21
+ ```
22
+ pip install AstroToolkit
23
+ ```
24
+
25
+ 2. Once this has finished, you should navigate to the package location. This should be in a '.../Lib/site-packages/AstroToolkit' folder where ... is your python install location. If you wish to find this, you can can run the following commands:
26
+
27
+ ```
28
+ python
29
+
30
+ from AstroToolkit.Tools import getztfanalysis
31
+ getztfanalysis(source=6050296829033196032)
32
+ ```
33
+
34
+ As long as there are no issues with ZTF, this **should return an error** which will include the file path.
35
+
36
+ 3. Navigate to this file in any terminal that can access your python environment, and run either buildwin.bat (windows) or build.sh (linux).
37
+
38
+ 4. Re-run the above python commands and the error should no longer appear. The package is now fully installed.
39
+
40
+ ## Usage
41
+
42
+ ### 1. Bokeh
43
+
44
+ The central module within which all functions are found is toolkit.py.
45
+
46
+ ***NOTE***: In this version, Toolkit has been rewritten to use Bokeh as its plotting library. The official documentation can be found at https://bokeh.org/. All plots will be saved as a static .html file, which can be opened in the browser (or from a python script using:
47
+
48
+ ```
49
+ show(plot)
50
+ ```
51
+
52
+ where 'plot' is the name of the parameter that the plot is assigned to.
53
+
54
+ ### 2. Importing Tools
55
+
56
+ **All Tools in the package are located in AstroTools.Tools**
57
+
58
+ ### 3. Input
59
+
60
+ ***All Toolkit functions require atleast one input from:***
61
+ 1. source = ...
62
+
63
+ where source is a Gaia source_id (string)
64
+
65
+ 2. pos = ...
66
+
67
+ where pos is a 1D list with two elements: [ra,dec] in units of degrees
68
+
69
+ <br>
70
+
71
+ **For example:**
72
+
73
+ when trying to obtain a panstarrs image, there are therefore two options:
74
+
75
+ ```
76
+ getpanstarrsimage(source=...)
77
+ ````
78
+
79
+ and
80
+
81
+ ```
82
+ getpanstarrsimage(pos=...)
83
+ ```
84
+
85
+ The key difference between these input formats is the way that proper motion is handled. Given coordinates (pos), the results retrieved by any Toolkit function are simply the raw data obtained from that location
86
+ in Gaia's epoch of Jan 2016, with no proper motion correction. The one exception for this is detection overlays in imaging functions, as these are still possible without an initial reference proper motion (i.e. a
87
+ specific object in Gaia).
88
+
89
+ In contrast to this, any Toolkit functions called using a Gaia source_id as input will correct for any proper motion of that object between the time at which the data was taken and Gaia's epoch of Jan 2016, *pre-execution*. An
90
+ example of this difference is seen in imaging functions for objects with a large proper motion. Here, using a source as input will result in an image that is centred on the object, regardless of the magnitude of its
91
+ proper motion.
92
+
93
+ Using a position as input may still produce an image which contains the object, but it is unlikely to be centred as the focus of the image has not accounted for the proper motion of the object.
94
+
95
+
96
+ <br>
97
+
98
+ *Note*: As the functions need to sort between the different input formats, explicit declaration is required, i.e.:
99
+
100
+ ```
101
+ getpanstarrsimage(6050296829033196032)
102
+ ```
103
+
104
+ will fail.
105
+
106
+ Instead, use:
107
+
108
+ ```
109
+ getpanstarrsimage(source=6050296829033196032)
110
+ ```
111
+
112
+ # Toolkit Functions
113
+
114
+ ## Imaging functions
115
+
116
+ These functions produce images of objects from supported surveys.
117
+
118
+ *Note*: When not using source mode, some detections can be missing for high proper motion objects. When using a source_id as input, this is no longer an issue as 'adaptive' proper motion correction is used. Here, the search radius for detections is increased to include the maximum distance that the object could have travelled in the gap between the epoch of the image and the epoch of the detection coordinates so that it is still picked up.
119
+
120
+ ### 1. getpanstarrsimage
121
+ Retrieves Pan-STARRS image
122
+
123
+ ```
124
+ getpanstarrsimage(source=None,pos=None,image_size=60,band='g',overlay=['gaia'])
125
+ ```
126
+
127
+ where:
128
+ ```
129
+ source = integer/string
130
+ = Gaia source_id (e.g. 6050296829033196032).
131
+ ```
132
+ ```
133
+ pos = 1D tuple of two integers
134
+ = [ra,dec], object coordinates in degrees.
135
+ ```
136
+ ```
137
+ image_size = integer
138
+ = size of image in arcseconds (maximum = 1500).
139
+ ```
140
+ ```
141
+ band = string
142
+ = list of all filters to include (e.g. for all filters, use band='grizy').
143
+ ```
144
+ ```
145
+ overlay = 1D tuple of strings
146
+ = for example, for Gaia and ZTF overlays, use overlay=['gaia','ztf']. Note, only supported for fits output_format.
147
+ ```
148
+
149
+ returns: Bokeh figure or None (if no data retrieved).
150
+
151
+ ### 2. getskymapperimage
152
+
153
+ ```
154
+ getskymapperimage(source=None,pos=None,image_size=60,band='g',output_format='fits',contrast=50,overlay=['gaia'],ax=None)
155
+ ```
156
+
157
+ where:
158
+ ```
159
+ source = integer/string
160
+ = Gaia source_id (e.g. 6050296829033196032).
161
+ ```
162
+ ```
163
+ pos = 1D tuple of two integers
164
+ = [ra,dec], object coordinates in degrees.
165
+ ```
166
+ ```
167
+ image_size = integer
168
+ = size of image in arcseconds (maximum = 600).
169
+ ```
170
+ ```
171
+ band = string
172
+ = string of filter to use (supported filters are: 'g','r','i','z','u','v'
173
+ ```
174
+ ```
175
+ overlay = 1D tuple of strings
176
+ = for example, for Gaia and ZTF overlays, use overlay=['gaia','ztf']. Note, only supported for fits output_format.
177
+ ```
178
+
179
+ returns: Bokeh figure or None (if no data retrieved).
180
+
181
+ ### 3. getdssimage
182
+
183
+ ```
184
+ getdssimage(source=None,pos=None,image_size=60,contrast=50,overlay=['gaia'],ax=None)
185
+ ```
186
+
187
+ where:
188
+ ```
189
+ source = integer/string
190
+ = Gaia source_id (e.g. 6050296829033196032).
191
+ ```
192
+ ```
193
+ pos = 1D tuple of two integers
194
+ = [ra,dec], object coordinates in degrees.
195
+ ```
196
+ ```
197
+ image_size = integer
198
+ = size of image in arcseconds (maximum = 600).
199
+ ```
200
+ ```
201
+ overlay = 1D tuple of strings
202
+ = for example, for Gaia and ZTF overlays, use overlay=['gaia','ztf']. Note, only supported for fits output_format.
203
+ ```
204
+
205
+ returns: Bokeh figure or None (if no data retrieved).
206
+
207
+ ## Data queries
208
+
209
+ These functions return all raw data retrieved from various surveys.
210
+
211
+ ### 1. panstarrsquery
212
+
213
+ ```
214
+ panstarrsquery(source=None,pos=None,radius=3)
215
+ ```
216
+
217
+ where:
218
+ ```
219
+ source = integer/string
220
+ = Gaia source_id (e.g. 6050296829033196032).
221
+ ```
222
+ ```
223
+ pos = 1D tuple of two integers
224
+ = [ra,dec], object coordinates in degrees.
225
+ ```
226
+ ```
227
+ radius = integer
228
+ = search radius of query in arcseconds.
229
+ ```
230
+
231
+ returns: pandas dataframe or None (if no data retrieved).
232
+
233
+ ### 2. skymapperquery
234
+
235
+ ```
236
+ skymapperquery(source=None,pos=None,radius=3)
237
+ ```
238
+
239
+ where:
240
+ ```
241
+ source = integer/string
242
+ = Gaia source_id (e.g. 6050296829033196032).
243
+ ```
244
+ ```
245
+ pos = 1D tuple of two integers
246
+ = [ra,dec], object coordinates in degrees.
247
+ ```
248
+ ```
249
+ radius = integer
250
+ = search radius of query in arcseconds.
251
+ ```
252
+
253
+ returns: pandas dataframe or None (if no data retrieved).
254
+
255
+ ### 3. gaiaquery
256
+
257
+ ```
258
+ gaiaquery(source=None,pos=None,radius=3,catalogue='dr3')
259
+ ```
260
+
261
+ where:
262
+ ```
263
+ source = integer/string
264
+ = Gaia source_id (e.g. 6050296829033196032).
265
+ ```
266
+ ```
267
+ pos = 1D tuple of two integers
268
+ = [ra,dec], object coordinates in degrees.
269
+ ```
270
+ ```
271
+ radius = integer
272
+ = search radius of query in arcseconds.
273
+ ```
274
+ ```
275
+ catalogue = string
276
+ = 'dr2' or 'dr3'. Determines the data release from which the data is retrieved.
277
+ ```
278
+
279
+ returns: pandas dataframe or None (if no data retrieved).
280
+
281
+ ### 4. galexquery
282
+
283
+ ```
284
+ galexquery(source=None,pos=None,radius=3)
285
+ ```
286
+
287
+ where:
288
+ ```
289
+ source = integer/string
290
+ = Gaia source_id (e.g. 6050296829033196032).
291
+ ```
292
+ ```
293
+ pos = 1D tuple of two integers
294
+ = [ra,dec], object coordinates in degrees.
295
+ ```
296
+ ```
297
+ radius = integer
298
+ = search radius of query in arcseconds.
299
+ ```
300
+
301
+ returns: pandas dataframe or None (if no data retrieved).
302
+
303
+ ### 5. rosatquery
304
+
305
+ ```
306
+ rosatquery(source=None,pos=None,radius=3)
307
+ ```
308
+
309
+ where:
310
+ ```
311
+ source = integer/string
312
+ = Gaia source_id (e.g. 6050296829033196032).
313
+ ```
314
+ ```
315
+ pos = 1D tuple of two integers
316
+ = [ra,dec], object coordinates in degrees.
317
+ ```
318
+ ```
319
+ radius = integer
320
+ = search radius of query in arcseconds.
321
+ ```
322
+
323
+ returns: pandas dataframe or None (if no data retrieved).
324
+
325
+ ### 6. ztfquery
326
+
327
+ ```
328
+ ztfquery(source=None,pos=None,radius=3)
329
+ ```
330
+
331
+ where:
332
+ ```
333
+ source = integer/string
334
+ = Gaia source_id (e.g. 6050296829033196032).
335
+ ```
336
+ ```
337
+ pos = 1D tuple of two integers
338
+ = [ra,dec], object coordinates in degrees.
339
+ ```
340
+ ```
341
+ radius = integer
342
+ = search radius of query in arcseconds.
343
+ ```
344
+
345
+ returns: pandas dataframe or None (if no data retrieved).
346
+
347
+ ### 7. sdssquery
348
+
349
+ ```
350
+ sdssquery(source=None,pos=None,radius=3)
351
+ ```
352
+
353
+ where:
354
+ ```
355
+ source = integer/string
356
+ = Gaia source_id (e.g. 6050296829033196032).
357
+ ```
358
+ ```
359
+ pos = 1D tuple of two integers
360
+ = [ra,dec], object coordinates in degrees.
361
+ ```
362
+ ```
363
+ radius = integer
364
+ = search radius of query in arcseconds.
365
+ ```
366
+
367
+ returns: pandas dataframe or None (if no data retrieved).
368
+
369
+ ### 8. wisequery
370
+
371
+ ```
372
+ wisequery(source=None,pos=None,radius=3)
373
+ ```
374
+
375
+ where:
376
+ ```
377
+ source = integer/string
378
+ = Gaia source_id (e.g. 6050296829033196032).
379
+ ```
380
+ ```
381
+ pos = 1D tuple of two integers
382
+ = [ra,dec], object coordinates in degrees.
383
+ ```
384
+ ```
385
+ radius = integer
386
+ = search radius of query in arcseconds.
387
+ ```
388
+
389
+ returns: pandas dataframe or None (if no data retrieved).
390
+
391
+ ### 9. twomassquery
392
+
393
+ ```
394
+ twomassquery(source=None,pos=None,radius=3)
395
+ ```
396
+
397
+ where:
398
+ ```
399
+ source = integer/string
400
+ = Gaia source_id (e.g. 6050296829033196032).
401
+ ```
402
+ ```
403
+ pos = 1D tuple of two integers
404
+ = [ra,dec], object coordinates in degrees.
405
+ ```
406
+ ```
407
+ radius = integer
408
+ = search radius of query in arcseconds.
409
+ ```
410
+
411
+ returns: pandas dataframe or None (if no data retrieved).
412
+
413
+
414
+ ## Photometry queries
415
+
416
+ These functions return only the photometry retrieved from various surveys.
417
+
418
+ ### 1. getpanstarrsphot
419
+
420
+ ```
421
+ getpanstarrsphot(source=None,pos=None,radius=3)
422
+ ```
423
+
424
+ where:
425
+ ```
426
+ source = integer/string
427
+ = Gaia source_id (e.g. 6050296829033196032).
428
+ ```
429
+ ```
430
+ pos = 1D tuple of two integers
431
+ = [ra,dec], object coordinates in degrees.
432
+ ```
433
+ ```
434
+ radius = integer
435
+ = search radius of query in arcseconds.
436
+ ```
437
+
438
+ returns: pandas dataframe or None (if no data retrieved).
439
+
440
+ ### 2. getskymapperphot
441
+
442
+ ```
443
+ getskymapperphot(source=None,pos=None,radius=3)
444
+ ```
445
+
446
+ where:
447
+ ```
448
+ source = integer/string
449
+ = Gaia source_id (e.g. 6050296829033196032).
450
+ ```
451
+ ```
452
+ pos = 1D tuple of two integers
453
+ = [ra,dec], object coordinates in degrees.
454
+ ```
455
+ ```
456
+ radius = integer
457
+ = search radius of query in arcseconds.
458
+ ```
459
+
460
+ returns: pandas dataframe or None (if no data retrieved).
461
+
462
+ ### 3. getgaiaphot
463
+
464
+ ```
465
+ getgaiaphot(source=None,pos=None,radius=3)
466
+ ```
467
+
468
+ where:
469
+ ```
470
+ source = integer/string
471
+ = Gaia source_id (e.g. 6050296829033196032).
472
+ ```
473
+ ```
474
+ pos = 1D tuple of two integers
475
+ = [ra,dec], object coordinates in degrees.
476
+ ```
477
+ ```
478
+ radius = integer
479
+ = search radius of query in arcseconds.
480
+ ```
481
+
482
+ returns: pandas dataframe or None (if no data retrieved).
483
+
484
+ ### 4. getgalexphot
485
+
486
+ ```
487
+ getgalexphot(source=None,pos=None,radius=3)
488
+ ```
489
+
490
+ where:
491
+ ```
492
+ source = integer/string
493
+ = Gaia source_id (e.g. 6050296829033196032).
494
+ ```
495
+ ```
496
+ pos = 1D tuple of two integers
497
+ = [ra,dec], object coordinates in degrees.
498
+ ```
499
+ ```
500
+ radius = integer
501
+ = search radius of query in arcseconds.
502
+ ```
503
+
504
+ returns: pandas dataframe or None (if no data retrieved).
505
+
506
+ ### 5. getsdssphot
507
+
508
+ ```
509
+ getsdssphot(source=None,pos=None,radius=3)
510
+ ```
511
+
512
+ where:
513
+ ```
514
+ source = integer/string
515
+ = Gaia source_id (e.g. 6050296829033196032).
516
+ ```
517
+ ```
518
+ pos = 1D tuple of two integers
519
+ = [ra,dec], object coordinates in degrees.
520
+ ```
521
+ ```
522
+ radius = integer
523
+ = search radius of query in arcseconds.
524
+ ```
525
+
526
+ returns: pandas dataframe or None (if no data retrieved).
527
+
528
+ ### 6. getwisephot
529
+
530
+ ```
531
+ getwisephot(source=None,pos=None,radius=3)
532
+ ```
533
+
534
+ where:
535
+ ```
536
+ source = integer/string
537
+ = Gaia source_id (e.g. 6050296829033196032).
538
+ ```
539
+ ```
540
+ pos = 1D tuple of two integers
541
+ = [ra,dec], object coordinates in degrees.
542
+ ```
543
+ ```
544
+ radius = integer
545
+ = search radius of query in arcseconds.
546
+ ```
547
+
548
+ returns: pandas dataframe or None (if no data retrieved).
549
+
550
+ ### 4. gettwomassphot
551
+
552
+ ```
553
+ gettwomassphot(source=None,pos=None,radius=3)
554
+ ```
555
+
556
+ where:
557
+ ```
558
+ source = integer/string
559
+ = Gaia source_id (e.g. 6050296829033196032).
560
+ ```
561
+ ```
562
+ pos = 1D tuple of two integers
563
+ = [ra,dec], object coordinates in degrees.
564
+ ```
565
+ ```
566
+ radius = integer
567
+ = search radius of query in arcseconds.
568
+ ```
569
+
570
+ returns: pandas dataframe or None (if no data retrieved).
571
+
572
+ ## Photometry bulk search
573
+
574
+ This function returns all retrieved photometry for all supported surveys for a given object.
575
+
576
+ ### 1. getbulkphot
577
+
578
+ ```
579
+ getbulkphot(source=None,pos=None,radius=3)
580
+ ```
581
+
582
+ where:
583
+ ```
584
+ source = integer/string
585
+ = Gaia source_id (e.g. 6050296829033196032).
586
+ ```
587
+ ```
588
+ pos = 1D tuple of two integers
589
+ = [ra,dec], object coordinates in degrees.
590
+ ```
591
+ ```
592
+ radius = integer
593
+ = search radius of query in arcseconds.
594
+ ```
595
+
596
+ returns: dictionary in format: 'survey':pandas dataframe or None (if no data retrieved).
597
+
598
+ ## Timeseries queries
599
+
600
+ These functions create light curves from supported surveys.
601
+
602
+ ### 1. getztflc
603
+
604
+ ```
605
+ getztflc(source=None,pos=None,radius=3)
606
+ ```
607
+
608
+ where:
609
+ ```
610
+ source = integer/string
611
+ = Gaia source_id (e.g. 6050296829033196032).
612
+ ```
613
+ ```
614
+ pos = 1D tuple of two integers
615
+ = [ra,dec], object coordinates in degrees.
616
+ ```
617
+ ```
618
+ radius = integer
619
+ = search radius of query in arcseconds.
620
+ ```
621
+
622
+ returns: Bokeh figure or None (if no data retrieved).
623
+
624
+ ## SED queries
625
+
626
+ This function creates a spectral energy distribution from all supported surveys.
627
+
628
+ ### 1. getsed
629
+
630
+ ```
631
+ getsed(source=None,pos=None)
632
+ ```
633
+
634
+ where:
635
+ ```
636
+ source = integer/string
637
+ = Gaia source_id (e.g. 6050296829033196032).
638
+ ```
639
+ ```
640
+ pos = 1D tuple of two integers
641
+ = [ra,dec], object coordinates in degrees.
642
+ ```
643
+
644
+ returns: matplotlib axis or None (if no data retrieved).
645
+
646
+ ## Spectra queries
647
+
648
+ These functions retrieve spectra from supported surveys.
649
+
650
+ ### 1. getsdssspectrum
651
+
652
+ ```
653
+ getsdssspectrum(source=None,pos=None,radius=3)
654
+ ```
655
+
656
+ where:
657
+ ```
658
+ source = integer/string
659
+ = Gaia source_id (e.g. 6050296829033196032).
660
+ ```
661
+ ```
662
+ pos = 1D tuple of two integers
663
+ = [ra,dec], object coordinates in degrees.
664
+ ```
665
+ ```
666
+ radius = integer
667
+ = search radius of query in arcseconds.
668
+ ```
669
+
670
+ returns: Bokeh figure or None (if no data retrieved).
671
+
672
+ ## HR diagram function
673
+
674
+ ### 1. gethrd
675
+
676
+ ```
677
+ gethrd(source=None)
678
+ ```
679
+
680
+ where:
681
+ ```
682
+ source = integer/string
683
+ = Gaia source_id (e.g. 6050296829033196032).
684
+ ```
685
+
686
+ returns: Bokeh figure or None (if no data retrieved).
687
+
688
+ ## Timeseries analysis tools
689
+
690
+ ### 1. getztfanalysis
691
+
692
+ Allows for timeseries analysis of ZTF data for a given object.
693
+
694
+ ```
695
+ getztfanalysis(source=None,pos=None)
696
+ ```
697
+
698
+ where:
699
+ ```
700
+ source = integer/string
701
+ = Gaia source_id (e.g. 6050296829033196032).
702
+ ```
703
+ ```
704
+ pos = 1D tuple of two integers
705
+ = [ra,dec], object coordinates in degrees.
706
+ ```
707
+
708
+ ### 2. getps
709
+
710
+ Produces a power spectrum using ZTF data for a given object.
711
+
712
+ ```
713
+ getps(source=None,pos=None)
714
+ ```
715
+
716
+ where:
717
+ ```
718
+ source = integer/string
719
+ = Gaia source_id (e.g. 6050296829033196032).
720
+ ```
721
+ ```
722
+ pos = 1D tuple of two integers
723
+ = [ra,dec], object coordinates in degrees.
724
+ ```
725
+
726
+ returns: Bokeh figure or None (if no data retrieved).
727
+
728
+ ## Miscellaneous tools
729
+
730
+ ### 1. correctPM
731
+
732
+ ```
733
+ correctPM(input,target,ra,dec,pmra,pmdec)
734
+ ```
735
+
736
+ where:
737
+ ```
738
+ input = 1D tuple of integers in form [year, month]
739
+ = current epoch of coordinates
740
+ ```
741
+ ```
742
+ output = 1D tuple of integers in form [year, month]
743
+ = target epoch of coordinates
744
+ ```
745
+ ```
746
+ ra = float
747
+ = right ascension of object in degrees
748
+ ```
749
+ ```
750
+ dec = float
751
+ = declination of object in degrees
752
+ ```
753
+ ```
754
+ pmra = float
755
+ = right ascension component of proper motion in milli-arcseconds/year
756
+ ```
757
+ ```
758
+ pmdec = float
759
+ = declination component of proper motion in milli-arcseconds/year
760
+ ```
761
+
762
+ returns: ra (float), dec (float).
763
+
764
+ ### 2. getgaiacoords
765
+
766
+ ```
767
+ getgaiacoords(source,catalogue='dr3')
768
+
769
+ ```
770
+
771
+ where:
772
+ ```
773
+ source = integer/string
774
+ = Gaia source_id (e.g. 6050296829033196032).
775
+ ```
776
+ ```
777
+ catalogue = string
778
+ = 'dr2' or 'dr3'. Determines the data release from which the data is retrieved.
779
+ ```
780
+
781
+ returns: 1D tuple of floats in format [ra,dec] or None (if no data retrieved).
782
+
783
+ ### 3. getgaiasource
784
+
785
+ ```
786
+ getgaiasource(pos,radius=3,catalogue='dr3')
787
+ ```
788
+
789
+ where:
790
+ ```
791
+ pos = 1D tuple of two integers
792
+ = [ra,dec], object coordinates in degrees.
793
+ ```
794
+ ```
795
+ radius = integer
796
+ = search radius of query in arcseconds.
797
+ ```
798
+ ```
799
+ catalogue = string
800
+ = 'dr2' or 'dr3'. Determines the data release from which the data is retrieved.
801
+ ```
802
+
803
+ returns: string or None (if no data retrieved)
804
+
805
+ ### 4. getsources
806
+
807
+ ```
808
+ getsources(file_name)
809
+ ```
810
+
811
+ where:
812
+ ```
813
+ file_name = string
814
+ = .fits file containing a column 'source_id' of Gaia source IDs
815
+ ```
816
+
817
+ returns: list of source_id's.
818
+
819
+ ### 5. getpositions
820
+
821
+ ```
822
+ getpositions(file_name)
823
+ ```
824
+
825
+ where:
826
+ ```
827
+ file_name = string
828
+ = .fits file containing two columns 'ra' and 'dec'
829
+ ```
830
+
831
+ returns: list of 'pos' objects, i.e. a list of lists with each 'pos' = [ra,dec].
832
+
833
+ ## Datapage functions
834
+
835
+ This function produces a datapage using all available data for an object, given its position or Gaia source_id.
836
+
837
+ ### 1. getdatapage
838
+
839
+ ```
840
+ getdatapage(source=None,pos=None,prefs=None)
841
+ ```
842
+
843
+ where:
844
+ ```
845
+ source = integer/string
846
+ = Gaia source_id (e.g. 6050296829033196032).
847
+ ```
848
+ ```
849
+ pos = 1D tuple of two integers
850
+ = [ra,dec], object coordinates in degrees.
851
+ ```
852
+ ```
853
+ prefs = dictionary
854
+ = preferences for datapage functionality (see below)
855
+ ```
856
+
857
+ ## Datapage elements
858
+
859
+ 1 - 1 | 2 - 2 | 3 - 3
860
+
861
+ 1 - 1 | 2 - 2 | 4 - 4
862
+
863
+ 5 | 6 - 6 - 6 | 7 - 7
864
+
865
+ where:
866
+ ```
867
+ 1: Image with survey preference according to: PanSTARRS > SkyMapper > DSS
868
+ 2: HR Diagram
869
+ 3: SED plot with any photometry obtained from all supported surveys
870
+ 4: Spectrum
871
+ 5: SIMBAD/Vizier Buttons
872
+ 6: ZTF Lightcurves
873
+ 7: Power Spectrum
874
+ ```
875
+
876
+ ## Datapage preferences
877
+
878
+ The argument 'prefs' in the above allows for the user to modify various aspects of datapages. It takes the form of a dictionary, i.e.:
879
+
880
+ ```
881
+ prefs={}
882
+ ```
883
+
884
+ with the below accepted parameters:
885
+
886
+ ```
887
+ band : string
888
+ = string containing bands to use for image datapage element (see format and accepted filters in imaging functions above). Default = 'g'.
889
+ ```
890
+ ```
891
+ overlay : list
892
+ = list of overlays to use in image datapage element (see below for suppported overlays). Default = ['gaia'].
893
+ ```
894
+ ```
895
+ image_size : integer
896
+ = size of image datapage element in arcseconds. Default = 20".
897
+ ```
898
+ ```
899
+ lc_radius : integer
900
+ = radius in arcseconds to use when looking for avaialble lightcurve data. Default = 3".
901
+ ```
902
+ ```
903
+ sed_radius : integer
904
+ = radius in arcseconds to use when looking for available photometry for use in SED datapage element. Default = 3".
905
+ ```
906
+ ```
907
+ spec_radius : integer
908
+ = radius in arcseconds to use when looking for available specta. Default = 3".
909
+ ```
910
+ ```
911
+ simbad_radius : integer
912
+ = radius to use in a SIMBAD query when 'SIMBAD' button is clicked. Default = 3".
913
+ ```
914
+ ```
915
+ vizier_radius : integer
916
+ = provides an override to the radius used in a Vizier query when the 'Vizier' button is clicked. Default = See below.
917
+ ```
918
+
919
+ ***NOTE***: by default, the Vizier radius scales with proper motion (i.e. adpative pm correction, see above) to include all images in the image datapage element. I.e. if the image_size is set to 30, then the Vizier radius will likely be approximately 30", but will be scaled to include possible proper motion of the object.
920
+
921
+ ```
922
+ grid_size : integer
923
+ = size of overall datapage (i.e. every datapage element scales with this parameter). Default = 300.
924
+ ```
925
+
926
+ # Currently supported overlays
927
+
928
+ 1. gaia (default)
929
+ 2. galex_nuv
930
+ 3. galex_fuv
931
+ 4. ztf
932
+ 5. rosat
933
+
934
+ *Note*: all overlays are proper motion corrected except rosat in all imaging functions. ZTF detections are particularly expensive, but can be useful in 'tracking' high proper motion objects through time.