Imported as pytrsplat, this Python library is an extension of the
pyTRS library
that generates customizable plats from
Public Land Survey System (PLSS)
land descriptions (or "legal descriptions").
Directly from the GitHub repo:
pip install git+https://github.com/JamesPImes/pyTRSplat
Python 3.9 or newer
A quickstart guide is provided here.
Documentation is provided on ReadTheDocs.
Processing the following example PLSS land description...
Township 154 North, Range 97 West
Section 1: Lots 1 - 3, S/2N/2
Section 5: Lot 4, The South Half of the Northwest Quarter, and The Southwest Quarter
Section 6: Lots 1 - 7, S/2NE/4, SE/4NW/4, E/2SW/4, SE/4
Section 13: That portion of the E/2 lying north of the river and west of the private road right-of-way as more particularly described in Book 1234 / Page 567, recorded on January 1, 1964 in the records of Example County, as amended in that Right-of-Way Amendment Agreement dated December 10, 1987, recorded on December 11, 1987 as Document No. 1987-1234567 of the records of Example County.
Section 14: NE/4, NE/4NW/4, S/2NW/4NW/4
...results in the following square plat:
...or the following letter-sized page, with tracts written at the end (click for full size):
...or could be configured any number of ways for different sizes, fonts, colors, page size/shape, etc.
See release v0.4.2 for the desktop application.
(No longer maintained as part of this library; removed as of v0.5.0.)
The following code generates the letter-size plat shown in the examples above. It assumes that the sections along the north and west boundaries of the township have the 'usual' ~40-acre lots.
import pytrsplat
land_description = '''Township 154 North, Range 97 West
Section 1: Lots 1 - 3, S/2N/2
Section 5: Lot 4, The South Half of the Northwest Quarter, and The Southwest Quarter
Section 6: Lots 1 - 7, S/2NE/4, SE/4NW/4, E/2SW/4, SE/4
Section 13: That portion of the E/2 lying north of the river and west of the private road right-of-way as more particularly described in Book 1234 / Page 567, recorded on January 1, 1964 in the records of Example County, as amended in that Right-of-Way Amendment Agreement dated December 10, 1987, recorded on December 11, 1987 as Document No. 1987-1234567 of the records of Example County.
Section 14: NE/4, NE/4NW/4, S/2NW/4NW/4'''
plat_group = pytrsplat.PlatGroup()
plat_group.settings = pytrsplat.Settings.preset('letter')
plat_group.lot_definer.allow_defaults = True
plat_group.lot_definer.standard_lot_size = 40
# Add lands. (`config` tells the pyTRS library how best to parse this land description.)
plat_group.add_description(land_description, config='n,w')
plat_group.execute_queue()
# Save as PNG inside a .zip file.
plat_group.output(fp=r'C:\land plats\sample_plats.zip', image_format='png')
# Or as a PDF.
plat_group.output(fp=r'C:\land plats\sample_plats.pdf')