Skip to main content

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')

alt text

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)

alt text

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')

alt text

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)

alt text

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)
  • axis_subtitle: axis subtitle (str, optional)
  • zlog: z axis type (bool, optional)
  • z_range: z axis range (list, optional)
  • z_label: z axis label (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)

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')

alt text

Overplotting

Give the list of variables to be overplotted as a list of lists.

mp([['fc', '05fc']])

alt text

mp([['fc', 'erg_pwe_ofa_l2_spec_B_spectra_132'], 'fc'], var_label='erg_orb_l2_pos_rmlatmlt')

alt text

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stpp_tplot-0.2.3.tar.gz (11.9 kB view details)

Uploaded Source

File details

Details for the file stpp_tplot-0.2.3.tar.gz.

File metadata

  • Download URL: stpp_tplot-0.2.3.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for stpp_tplot-0.2.3.tar.gz
Algorithm Hash digest
SHA256 720377351d57728bf7d9b2a1e2b906e4e7105e42abda3dc0c1b15ce52423a8be
MD5 9d1035a3ba76baac1c323fe57c4369e5
BLAKE2b-256 218cffe08a38aa95a3d77238d54991445332e18622a9e083b0164147424634cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page