Lithologies
Note
Run sp.update_lithologies(...) before any plotting.
Restarting the Python kernel resets lithologies to defaults.
Lithological patterns are customised using a dictionary which is passed to the sp.update_lithologies() function.
What to pass to sp.update_lithologies()
Each entry is:
key: name used in your input file (e.g. in
rockcolumn)- value:
(pattern, colour, legend_label) pattern= existing lithology name (e.g.'sandstone'), image filename (e.g.'my_pattern.png'), or''(blank) for solid colour fillscolour= hex, named colour, RGB tuple, or RGBA tuplelegend_label= text shown in legend
- value:
Quick Template
import stratapy as sp
sp.update_lithologies({
"input_name": ("pattern_or_image_or_empty", "colour", "Legend Label")
})
Solid-fill Lithologies
import stratapy as sp
sp.update_lithologies({
"mud": ("", 'brown', "Mud"),
"clay": ("", "#A53535", "Clay"),
"silt": ("", (50, 150, 250), "Silt")
})
Use clay in your input file to get a solid red unit with legend label Clay. The mud and silt entries show how to use named colours and RGB tuples, respectively.
New Patterned Lithologies
To use an existing pattern with a new colour and/or name, pass the name or key of the pattern as the first element of the tuple, and your chosen colour and legend label as the second and third elements, respectively.
This is particularly useful for using the unnamed patterns.
import stratapy as sp
sp.update_lithologies({
"my_limestone": ('limestone', '#FFD700', 'My New Limestone')
"packed waste": ('430', 'tan', 'Packed waste'),
})
Use my_limestone in your input file to get the sandstone pattern in gold. The packed waste entry shows how to use one of the built-in unnamed patterns (430) with a new name and colour.
Leaving the colour or name blank will keep the default values, e.g. ("sandstone", "", "My New Sandstone") will give you a new sandstone pattern in the default colour, with a new legend label.
Custom Images
To use your own custom image, pass the filename of the image as the first element of the tuple, along with its label. The colour element can be ignored.
import stratapy as sp
sp.update_lithologies({
"custom_lithology": ("my_pattern.png", "", "Custom Lithology")
})
Image guidance:
square image recommended (about
1000 x 1000px)transparent background preferred (PNG)
tileable/seamless patterns required
The colour acts as a background behind the image pattern when applicable. Note that custom image functionality is not a thoroughly validated feature of stratapy, and may not behave as expected.