Seismic viewer for numpy
Project description
EasyQC
Seismic Viewer for numpy arrays using pyqtgraph.
Usage Instructions
The goal is to provide an interactive seismic viewer at the python prompt.
NB: if you use ipython
use the %gui qt
magic command before !
Keyboard Shortcuts
- ctrl + A: increase display gain by +3dB
- ctrl + Z: deacrease display gain by +3dB
- ctrl + P: take screenshot to clipboard
- ctrl + P: propagates display accross all windows (same window size, same axis, same gain)
- ctrl + S: captures screenshot of the plot area in the clipboard
- up/down/right/left arrows: pan using keyboard
Minimum working example to display a numpy array.
import numpy as np
import scipy.signal
from easyqc.gui import viewseis
ntr, ns, sr, dx, v1 = (500, 2000, 0.002, 5, 2000)
data = np.zeros((ntr, ns), np.float32)
data[:, 500:600] = scipy.signal.ricker(100, 4)
# create a record with 400 traces and 2500 samples
noise = np.random.randn(ntr, ns) / 10
# create an arbitrary layout of 2 receiver lines of 200 sensors
a, b = np.meshgrid(np.arange(ntr / 2) * 8 + 2000, np.arange(2) * 50 + 5000)
# the header is a dictionary of numpy arrays, each entry being the same length as the number of traces
header = {'receiver_line': b.flatten(), 'receiver_number': a.flatten()}
# show the array with the header
fig0 = viewseis(data, si=.002, h=header, title='clean')
fig1 = viewseis(data + noise, si=.002, h=header, title='noisy')
Install Instructions
1) From pypi using pip:
pip install easyqc
2) From sources using pip:
I suggest to use a virtual environment and install in development mode (in-place)
git clone https://github.com/oliche/easyqc.git
cd easyqc
pip install -e .
3) From sources using anaconda
I suggest to install a conda environment and run from sources in development mode.
Installation
git clone https://github.com/oliche/easyqc.git
conda env create -f conda_easyqc.yaml
conda activate iblenv
conda develop ./easyqc
Update
conda env update --file conda_easyqc.yaml --prune
Or for a complete clean-up:
conda env list
conda env remove -n easyqc
And follow the install instructions above.
Contribution
Pypi Release checklist:
flake8
rm -fR dist
rm -fR .pdm-build
pdm publish
Test wheel:
virtualenv easyqc --python=3.11
source ./easyqc/bin/activate
pip install easyqc
#pip install -i https://test.pypi.org/simple/ easyqc # doesnt' seem to install deps
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
easyqc-1.0.0.tar.gz
(17.3 kB
view details)
Built Distribution
easyqc-1.0.0-py3-none-any.whl
(18.7 kB
view details)
File details
Details for the file easyqc-1.0.0.tar.gz
.
File metadata
- Download URL: easyqc-1.0.0.tar.gz
- Upload date:
- Size: 17.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.18.1 CPython/3.11.9 Linux/6.8.0-40-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ea03b99d570614fabf85a8f43bb86924d84f9b7543f3277af424ae6f33dd515 |
|
MD5 | 900e877f86358bf7ff60b92afa055f82 |
|
BLAKE2b-256 | ba0f5c66b06ef150c00b2e5b76777e49efe186d4469947a33f2e24738aa8f1a3 |
File details
Details for the file easyqc-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: easyqc-1.0.0-py3-none-any.whl
- Upload date:
- Size: 18.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.18.1 CPython/3.11.9 Linux/6.8.0-40-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b1c3c8d135e768a5cd0beac661aa81c8e8f27025d7805f72a5c0a670ac14cfa |
|
MD5 | 196ea8b5945e135f8b85da51535ce971 |
|
BLAKE2b-256 | e667d4471f3f0230f70c0595cf81ff1774ea30b30bddea6ae7df519a77172985 |