Skip to main content

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

Project description

para español

NOTE 2026

pozo_bugfix_fork was forked from pozo on 30 March 2026, in order to fix a number of minor bugs which prevented the use of the current version and release of pozo. The reason it was created was that there was no released version of pozo which worked with current major dependencies, particularly IPython.

pozo_bugfix_fork was created from the last licensed release of pozo (June 21 2024: f2a9c5d). The MIT license was removed in the following commit b8951f8. Subsequent commits made here were to fix the bugs described above and create a renamed release "pozo_bugfix_fork". No further development is expected to occur on pozo_bugfix_fork other than for support (if even that); please refer back to the original pozo repository.

🐰 pozo_bugfix_fork Well Visualizer

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

$ pip install pozo_bugfix_fork

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_bugfix_fork
import lasio
las = lasio.read("SALADIN.LAS")

# You can specify the data you are interested in
myGraph = pozo_bugfix_fork.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_bugfix_fork.Graph is made up of pozo_bugfix_fork.Track, which is made up of pozo_bugfix_fork.Axis, which is made up of pozo_bugfix_fork.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_bugfix_fork.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_bugfix_fork.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


Release history Release notifications | RSS feed

This version

1.0

Download files

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

Source Distribution

pozo_bugfix_fork-1.0.tar.gz (43.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pozo_bugfix_fork-1.0-py3-none-any.whl (44.2 kB view details)

Uploaded Python 3

File details

Details for the file pozo_bugfix_fork-1.0.tar.gz.

File metadata

  • Download URL: pozo_bugfix_fork-1.0.tar.gz
  • Upload date:
  • Size: 43.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pozo_bugfix_fork-1.0.tar.gz
Algorithm Hash digest
SHA256 51b489bb14a0bd0ab4152492cab4e085d5b376a0b748918d4e9ba3fb8026810c
MD5 a2790d83dc1198416a70c4d63c05d9db
BLAKE2b-256 aa67d8f913da8d64bad73dc8572759fd2cf8dacdcc352a2e8631035b18a6b659

See more details on using hashes here.

File details

Details for the file pozo_bugfix_fork-1.0-py3-none-any.whl.

File metadata

  • Download URL: pozo_bugfix_fork-1.0-py3-none-any.whl
  • Upload date:
  • Size: 44.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pozo_bugfix_fork-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ec6d061e3787d7c06da82fcbef30ee37d5b3385292309cad2d36ae63a4315dd4
MD5 e3e60440320233f8bc25c6f4dd83dfe9
BLAKE2b-256 b0e7c98bd2d1b49ae09b8f9d5b41934ab723b00a3e720b5baf57b0e30beecffd

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