Skip to main content

A tool to create and visualize sample layouts for multiwell plates.

Project description

PyPI - Version PyPI - Python Version pages-build-deployment .github/workflows/ci-cd.yml

PlatePlannerLogo
  • Dynamic QC Sample Patterns: Create plate layouts with customizable QC sample patterns.
  • Flexible Sample Distribution: Distribute samples within groups across plates, accommodating variable numbers of samples per group.
  • Non-Split/Split Group Handling: Control over distributing samples within groups without splitting them over plates or splitting when necessary.
  • Customizable Run Lists & Plate Visualizations: Generate run lists and visualize plate assignments.
  • Block Randomization: Utilize block randomization to prevent run order bias.
  • Stratified Randomization (Upcoming): This feature, once implemented, will ensure balanced distribution of group attributes across LC-MS plates or batches.

Installation

To install PlatePlanner, simply run:

pip install plate-planner

Documentation

For more detailed documentation, visit PlatePlanner Documentation.

Quick Start Guide

Here's a quick example of how to use PlatePlanner:

from plate_layout import Study, QCPlate

# Create a study and load your file with sample records (csv, xls/xlsx)
study = Study(name="cancer")
study.load_specimen_records(
    records_file="./data/study_samples.csv",
    sample_group_id_column="pair_ID",
    sample_id_column="specimen_ID"
)

# Block randomize groups
study.randomize_order(case_control=True, reproducible=False)

# Distribute samples to a 96-well plate with QC samples as defined in the toml file
qc_plate = QCPlate(plate_dim=(8, 12), QC_config="./data/plate_config_dynamic.toml")
study.distribute_samples_to_plates(plate_layout=qc_plate)

# Create visualization for plate 3
fig = study[3].as_figure(
    color_metadata_key="organ",
    annotation_metadata_key="object",
    rotation=45,
    fontsize=8
)

fig = study[3].to_layout_figures(
    annotation_metadata_key="sample_name",
    color_metadata_key="sample_code",
    file_format="png"
)

Visualization Examples

Here are some examples of plate visualizations created using PlatePlanner:

Alt text

Alt text

Contributing

We welcome contributions to PlatePlanner! Please read our Contributing Guidelines for more information on how to get involved.

License

PlatePlanner is distributed under the terms of the MIT license.

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

plate_planner-0.1.5.tar.gz (2.9 MB view details)

Uploaded Source

Built Distribution

plate_planner-0.1.5-py3-none-any.whl (722.8 kB view details)

Uploaded Python 3

File details

Details for the file plate_planner-0.1.5.tar.gz.

File metadata

  • Download URL: plate_planner-0.1.5.tar.gz
  • Upload date:
  • Size: 2.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for plate_planner-0.1.5.tar.gz
Algorithm Hash digest
SHA256 fcb2f2a08985b911df82f1eb89fb83eddca9bf5ede2dcdb39c2aaf7cf9bd555b
MD5 d8b17ffc32d1c8562ac50204ecaacc29
BLAKE2b-256 0e455f49ba9cfaa8d97db1336cd5d35838e1d5c92c2ff88bab45c42b12e2cbac

See more details on using hashes here.

File details

Details for the file plate_planner-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for plate_planner-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 05b8a2ee821c36c97ce7774a5751c97fdac9d7a6919bc690a61d6ba831dca903
MD5 e47abbe914c4d408e0d8cac6802a162b
BLAKE2b-256 333929b9db11957129ff3e14ec7231efdcffebcc056313e98e6f5d90e7099107

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 Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page