Skip to main content

Help visualizing well log data - Herramienta para visualizar registros de pozos

Project description

para español

🐰 Pozo Well Visualizer

Pozo is an open source, intuitive api for visualizing well logs. It uses plotly to render interactive graphs.

$ pip install pozo

Don't forget pip install lasio if you're using lasio! If you're using jupyter, pip install ipywidgets nbformat as well.

Simplest Usage

import pozo
import lasio
las = lasio.read("SALADIN.LAS")

# You can specify the data you are interested in
myGraph = pozo.Graph(las, include=["CALI", "CGR", "LLS", "ILD", "LLD", "NPH", "RHOB"])

# This is a good theme
myGraph.set_theme("cangrejo") # recommended theme!

myGraph.render(height=800, depth=[1080, 1180])


Notice the tracks are in the same order as your list include=[...].

We have a new feature! learn about crossplots

Combining Tracks

# Before you render

graph1.combine_tracks("CGR", "CALI") # Also maintains order!

graph1.combine_tracks("LLD","ILD","LLS") 

graph1.combine_tracks("RHOB", "NPHI")

# Notice we change position of depth axis with `depth_position=1`
graph1.render(height=800, depth_position=1, depth=[1080, 1180])

A pozo.Graph is made up of pozo.Track, which is made up of pozo.Axis, which is made up of pozo.Trace, which contains data and depth.

Theming

# Some possible settings:
#  "color": "blue"
#  "scale": "log"
#  "range": [0, 10]
#  "range_unit": "meter"

Themes on more specific items (like Axis) override more general items (like Track). Calling set_theme({}) on a Trace will override any theme on the Axis. If the theme on Trace lacks a key, the renderer will look in the Axis and so on and so forth.

Note: Setting themes on Trace only works for certain keys, e.g. Trace doesn't decide color, Axis or above does

The "cangrejo" theme above is a built-in mnemonic theme, it changes depending on the mnemonic.

# Option One: Set a fallback for everything (only works if theme is set to "cangrejo")
graph.get_theme().set_fallback({"track_width":200})


# Option Two: Set a specific theme on a specific track:
graph.get_tracks("CGR")[0].set_theme({"track_width":200})

learn more about themeing

Selecting Tracks

# Returns list of Track objects
tracks         = graph1.get_tracks("CGR", "MDP") # by name
other_tracks   = graph1.get_tracks(0, 2)         # by position

# Removes AND returns list of Track of objects
popped_tracks  = graph1.pop_tracks("CGR", 3)     # by name or position

# Note: The name is often the mnemonic. But not always, like in combined tracks.
# To search explicitly by mnemonic:
popped_tracks2 = graph1.pop_tracks(pozo.HasLog("CGR"))

Adding Data Manually

Sometimes you want to do your own math and construct your own data:

data = [1, 2, 3]
depth = [1010, 1020, 1030]

new_data=Data(data, depth=depth, mnemonic="LOL!")
graph.add_tracks(new_data)
# all data must have either a mnemonic or a name

You can now call graph.add_tracks(new_data)

But maybe you want to theme it first. Don't theme the "Data" directly, it won't impact much. Instead:

new_tracks = graph.add_tracks(new_data)
new_tracks[0].set_theme({"color":"red", range=[0, 1], range_unit="fraction"})

learn more about internals

Sanitizing Data

Units

pozo.units.check_las(las_object) is a function that can help you verify the validy of LAS data. It will list the units it thinks it is and the ranges of values and number of NaNs.

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

pozo-0.9.29.tar.gz (41.2 kB view details)

Uploaded Source

Built Distribution

pozo-0.9.29-py3-none-any.whl (41.3 kB view details)

Uploaded Python 3

File details

Details for the file pozo-0.9.29.tar.gz.

File metadata

  • Download URL: pozo-0.9.29.tar.gz
  • Upload date:
  • Size: 41.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pozo-0.9.29.tar.gz
Algorithm Hash digest
SHA256 5e482721fb2510b97fac07acb46ca1bdb858d61e5c175fbab9096cc109010450
MD5 4d9b61b88ba92adda3049fbcfb1773d5
BLAKE2b-256 fbe35343e9bb55a47996a9f194b41d14c33d7c7680c3e0151325e2dcb6481ada

See more details on using hashes here.

File details

Details for the file pozo-0.9.29-py3-none-any.whl.

File metadata

  • Download URL: pozo-0.9.29-py3-none-any.whl
  • Upload date:
  • Size: 41.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pozo-0.9.29-py3-none-any.whl
Algorithm Hash digest
SHA256 ad5df4d01e58eaa65ebc67e225d9ed53e51db0269b60fb9dc18c088bd615f67a
MD5 a859c9601c7b9c9a571657abeeef327f
BLAKE2b-256 cf31bfd4386fc034aa046068523d3be10fd771907a6112cf664e476ea360adc7

See more details on using hashes here.

Supported by

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