EGU General Assembly 2023
© Author(s) 2023. This work is distributed under
the Creative Commons Attribution 4.0 License.

A Python tool to monitor noise characteristics in large seismic data bases

Johanna Lehr and Klaus Stammler
Johanna Lehr and Klaus Stammler
  • Federal Institute for Geosciences and Natural Resources (BGR), Federal Seismological Survey, Nuclear-Test-Ban, Hannover, Germany (

Continuous monitoring of data quality is a major issue in seismology because the achievement of robust scientific results depends on the reliability of the underlying data resources. We present a Python package which provides means to perform a systematic analysis of noise data in the time and frequency domain. The tool is designed to process large amounts of channels and years of data. In a first step, average amplitude levels and power spectral densities are computed for large parts - preferably the whole available time range - of the data of a station. Depending on the size of the data set, this processing takes minutes to hours. Therefore, the results are stored in rapidly accessible HDF5-files. Subsequently, they are visualized using color-coded matrix displays (spectrograms) and interactive 3D-figures. The resulting figures give insight to characteristic noise patterns at the station and possible noise sources, like various forms of anthropogenic noise or wind generated noise. Furthermore, changes in noise levels or noise patterns are easily detectable. Such changes either indicate changes in the environmental conditions at the recording site or changes in the recording hardware improperly reflected by the station metadata, often signaling a problem with the metadata. Furthermore, the processed data can easily be restricted to selected times, e.g. to investigate the influence of day/night cycles or to obtain wind-speed dependent spectrograms. In this manner, a comprehensive picture of relevant characteristics at a station site may be acquired.

The package is build from established Python libraries like obspy, scipy and h5py. Matplotlib and plotly are used for data visualization. The core functionalities are accessible via command line interface while the underlying API allows for more customized workflows.

How to cite: Lehr, J. and Stammler, K.: A Python tool to monitor noise characteristics in large seismic data bases, EGU General Assembly 2023, Vienna, Austria, 24–28 Apr 2023, EGU23-7144,, 2023.