Simple time series plotting library based on pyspedas and matplotlib.
Project description
stpp_tplot
Simple time series plotting library based on pyspedas and matplotlib.
Overview
stpp_tplot is a Python library that provides convenient functions for plotting time series data, especially for space physics data processed by pyspedas. It simplifies the creation of publication-quality plots with features like:
- Multiple panel plots with shared x-axis
- Spectrogram plots with colorbar
- Orbit parameter labels panel
- Customizable plot options
Installation
pip install stpp_tplot
Usage
Plotting with default options: mp
from stpp_tplot import mp, sd, op, xlim
from pyspedas.erg import pwe_ofa, mgf, orb
# Load data
trange = ['2017-03-27', '2017-03-28']
pwe_ofa(trange=trange)
mgf(trange=trange)
orb(trange=trange)
# Plot data
mp(['erg_pwe_ofa_l2_spec_B_spectra_132', 'erg_mgf_l2_mag_8sec_sm'], var_label='erg_orb_l2_pos_rmlatmlt')
If you do not need the orbit parameter labels, var_label can be set to None.
mp(['erg_pwe_ofa_l2_spec_B_spectra_132', 'erg_mgf_l2_mag_8sec_sm'], var_label=None)
Saving plot: mp(save_path='path')
mp(['erg_pwe_ofa_l2_spec_B_spectra_132', 'erg_mgf_l2_mag_8sec_sm'], var_label='erg_orb_l2_pos_rmlatmlt', save_path='my_plot.png')
Setting the time range: mp(tr=time_range), or xlim(time_range)
time_range = ['2017-03-27T21:00:00', '2017-03-27T21:30:00']
mp(['erg_pwe_ofa_l2_spec_B_spectra_132', 'erg_mgf_l2_mag_8sec_sm'], var_label='erg_orb_l2_pos_rmlatmlt', tr=time_range)
or
xlim(time_range)
mp(['erg_pwe_ofa_l2_spec_B_spectra_132', 'erg_mgf_l2_mag_8sec_sm'], var_label='erg_orb_l2_pos_rmlatmlt')
Plotting with custom options: op & mp
op('erg_pwe_ofa_l2_spec_B_spectra_132', ylog=0, zlog=1, z_range=[1e-4, 1e2], colormap='viridis')
mp(['erg_pwe_ofa_l2_spec_B_spectra_132'], var_label=None)
Following are the available options for the op function:
- y_label: y axis label (str, optional)
- ylog: y axis type (bool, optional)
- y_range: y axis range (list, optional)
- y_sublabel: axis subtitle (str, optional)
- zlog: z axis type (bool, optional)
- z_range: z axis range (list, optional)
- z_label: z axis label (str, optional)
- z_sublabel: axis subtitle (str, optional)
- spec: spectrogram (0 or 1, optional)
- colormap: colormap (list, optional)
- legend_names: legend names (list, optional)
- line_color: line color (str, optional)
- line_width: line width (int, optional)
- line_style: line style (str, optional)
Following are the available options for the mp function:
- plot_title: plot title (str, optional)
- plot_title_fontsize: plot title font size (int, optional)
- display: display (bool, optional), if False, the plot will not be displayed
- save_path: save path (str, optional), if provided, the plot will be saved to the specified path
- hspace: height space between panels (float, optional)
- y_tick_step: vertical spacing of the orbit tick marks
- orb_label_height: height of the orbit parameter labels
Storing Data: sd
from pyspedas import data_quants
import numpy as np
magt = data_quants['erg_mgf_l2_magt_8sec']
electron_mass = 9.1094e-31
electron_charge = 1.602e-19
fc = 1 / (2*np.pi) * electron_charge * magt * 1e-9 / electron_mass * 1e-3
sd('fc', data={'x': magt.time, 'y':fc})
sd('05fc', data={'x': magt.time, 'y':fc*0.5})
op('fc', line_color='black')
op('05fc', line_color='red')
mp('fc')
Overplotting
Give the list of variables to be overplotted as a list of lists.
mp([['fc', '05fc']])
mp([['fc', 'erg_pwe_ofa_l2_spec_B_spectra_132'], 'fc'], var_label='erg_orb_l2_pos_rmlatmlt')
mp options
- yauto(bool): if True, the y axis range will be set automatically
- zauto(bool): if True, the z axis range will be set automatically
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file stpp_tplot-0.2.4.tar.gz.
File metadata
- Download URL: stpp_tplot-0.2.4.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2aaa4b8442e90671f4bd6989846a5ee582e18d3c441bda5d33986953db7c81d0
|
|
| MD5 |
9895a65429a6842ea876b0e0a7aab3a9
|
|
| BLAKE2b-256 |
9786150185be03f08b27f543782ebddc98037a0b971caf18d5605d6999212c07
|