Skip to main content

A package for plotting clusters in a simple "pseudo-temporal-ordering", like a clock face.

Project description

What is a "clockplot?"

The clockplot is designed to help visualize how subgroups of a population are arranged over time, while maintaining a metric of for the heterogeneity or purity of that subgroup.

defining populations and subpopulations

How are populations and subpopulations defined for a clockplot?

This visualization was designed with biology in mind. For example, given a cell population defined by a particular CD marker, we might be want to define subpopulations by the different combinations of other markers expressed by those cells, and see when those phenotypes might appear. The clockplot lets you arrange the stages or time points like hours on a clock, and then the subpopulations are "pulled" towards each time point based on their percentage component of that timepoint (this algorithm is partially inspired by tracking how the center of mass along a frequency wave moves during a Fourier transform).

Essentially, the angle starting from 12 o'clock indicates how much time has passed in the experiment before a given population appeared. The population's proximity to the center of the clockplot indicates the heterogeneity of the population with respect to time. For instance, a population in the center of the plot indicates that the population is equally likely to appear at all time points of the experiment, while a population near the periphery has a stronger association to a given time point.

That said, this way of visualizing data could be applied to other data driven fields as well. Consider examining how the content of different stock portfolios changes over time, or looking at which times during the year we see more action versus ciné art movies are released?

Example with the included lineardemo data, which is simulated data made by "rolling" a population bolus across a series of time points. We can then order the populations based on their angle from 12 o'clock: 2, 4, 3, 8, 9, 12, 5, 7, 6, 11, 10.

A sample clockplot using the built-in lineardemo data

Please see demo.ipynb for a demonstration of the usage.

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

ptoclockplot-0.0.1.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

ptoclockplot-0.0.1-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file ptoclockplot-0.0.1.tar.gz.

File metadata

  • Download URL: ptoclockplot-0.0.1.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.29.1 CPython/3.7.1

File hashes

Hashes for ptoclockplot-0.0.1.tar.gz
Algorithm Hash digest
SHA256 16d685d31178d794ca987c2e748fc41cf47baccaad22d5ec42781a25fc78c410
MD5 023a1320f1663409e2f0c36b44c3d601
BLAKE2b-256 ab706a9955bb26ec06eb5944d8016fba99bc34946fcb681bbabceedb2dd152bc

See more details on using hashes here.

File details

Details for the file ptoclockplot-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: ptoclockplot-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.29.1 CPython/3.7.1

File hashes

Hashes for ptoclockplot-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9344d0d80e2a7c7f154e2a4b5ff3f8ed37600ccd725ae69d4d2e5d7a97cb0eb2
MD5 48983de10bc56b69d937c7f0cbe08a3f
BLAKE2b-256 f383f253f94e8b4415b81a3da77dfe1c759d9584cffe12aa685755e4030a71e6

See more details on using hashes here.

Supported by

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