Difference between revisions of "Tutorial:How to contribute to the flare wiki pages"
Line 1: | Line 1: | ||
− | Flare wiki pages are created by the flare data processing pipeline using [https://www.mediawiki.org/wiki/API:Edit |WIKI APIs] | + | Flare wiki pages are created by the flare data processing pipeline, by using [https://www.mediawiki.org/wiki/API:Edit |WIKI APIs]. |
− | |||
− | |||
If you wish to contribute code to the pipeline, please prepare plugins similar to the template below and send them to [mailto:hualin.xiao@fhnw.ch Hualin Xiao] | If you wish to contribute code to the pipeline, please prepare plugins similar to the template below and send them to [mailto:hualin.xiao@fhnw.ch Hualin Xiao] | ||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
Line 46: | Line 44: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Note that it is also possible to attach plots to flare wiki pages |
Revision as of 11:50, 14 May 2021
Flare wiki pages are created by the flare data processing pipeline, by using |WIKI APIs. If you wish to contribute code to the pipeline, please prepare plugins similar to the template below and send them to Hualin Xiao
#import module_name
def plugin_name(flare_id, start_utc, end_utc, flare_peak_utc):
#Flare ID, start UTC, end UTC and peak UTC values will be provided by the pipeline
# A plugin usually consist of blocks as below:
# - data retrieving, for example using sunpy Fido
# - data processing
# - plotting
# - save plot to file
return plot_filename
Below is a plugin example.
import astropy.units as u
from matplotlib import pyplot as plt
from sunpy.net import Fido, attrs as a
from sunpy.map import Map
def plot(folder,flare_id , start_utc, end_utc, peak_utc, wavelen=131, overwrite=False):
sdo_query = Fido.search(a.Time(utc_start, utc_end), a.Instrument('AIA'),
a.Wavelength(wavelen* u.angstrom))
sdo_res = Fido.fetch(sdo_query[0], progress=False, path=folder)
if not sdo_res:
print('AIA data not available')
return None
if sdo_res:
sdo = Map(sdo_res[0])
fig = plt.figure(figsize=(6, 6), dpi=100)
ax = fig.add_subplot(projection=sdo)
sdo.plot(clip_interval=[1, 100] * u.percent, axes=ax)
fname=os.path.join(folder, f'AIA_{wavelen}_{flare_id}.png')
plt.savefig(fname, dpi=100)
return fname
return None
if __name__=='__main__':
#for test only
plot('.',0,'2021-04-01T00:00:00', '2021-04-01T00:10:00', '2021-04-01T00:05:00' )
Note that it is also possible to attach plots to flare wiki pages