Skip to main content

Tool for creating heatmaps, where rows and columns are organized by hierarchical clusters as seen in http://code.activestate.com/recipes/578175-hierarchical-clustering-heatmap-python/

Project description

# pydendroheatmap - a plotting tool for making heatmaps with hierarchically clustered data in python.

pydendroheatmap is registered as a package on PyPI, so to install, simply type

```bash
pip install pydendroheatmap
```

To install the package from source, download the repository, unpack and open a command line prompt in the unpackaged directory. Then simply type:

```bash
python setup.py install
```


To make a plot, simply import the package, and create a DendroHeatMap object. Data for the heatmap and
dendrogram do not need to be specified at the time of creation, however, if no data is supplied then
the plot for these objects will not be rendered. See example uses below.

The data for the heat map should be either a numpy.ndarray or numpy.matrix object, and the top and left dendrogram
data should be in the form of a (n-1) x 4 linkage matrix used in the scipy hierarchical clustering package.

```python
import pydendroheatmap as pdh
try: import cPickle as pickle
except: import pickle

heatmap_array = pickle.load(open('some_data_file.pickle'))#a numpy.ndarray or numpy.matrix, for this example, let's say mxn array
top_dendrogram = pickle.load(open('another_data_file.pickle'))#a (n-1) x 4 array
side_dendrogram = pickle.load(open('a_third_data_file.pickle'))#a (m-1) x 4 array

heatmap = pdh.DendroHeatMap(heat_map_data=heatmap_array, left_dendrogram=side_dendrogram, top_dendrogram=top_dendrogram)
heatmap.title = 'This is an example'
heatmap.show()

heatmap.colormap = heatmap.yellowBlackBlue

heatmap.show()

heatmap.row_labels = ['some', 'row','labels'] #must have the same number of rows in heat_map_data

heatmap.reset_plot()
heatmap.show()

#excellent, let's export it

heatmap.export('awesome_heatmap_plot.png')
```


To see a built-in example, run these commands in the python interpreter:

```python
from pydendroheatmap import example
example.run()
```

The example should make a plot that will look similar to this:

![Example Image](https://github.com/themantalope/pydendroheatmap/blob/master/pydendroheatmap/exampledata/example.png)


The DendroHeatMap object's `render_plot()` function will generate a heat plot, similar in fashion to the one found here:

http://code.activestate.com/recipes/578175-hierarchical-clustering-heatmap-python/

Each time the DendroHeatMap object's `show()`, `export()`, and `render_plot()` functions are called,
the plot will be reset and any changes that have been made to the plot's instance variables should be taken into account
in the new plot.

A special thanks to [Nathan Salomonis](http://www.cincinnatichildrens.org/bio/s/nathan-salomonis/) for posting the
original example and figuring out much of the parameters for getting the plots in the correct position!


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

pydendroheatmap-1.5.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

pydendroheatmap-1.5-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file pydendroheatmap-1.5.tar.gz.

File metadata

  • Download URL: pydendroheatmap-1.5.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pydendroheatmap-1.5.tar.gz
Algorithm Hash digest
SHA256 90a26faa9f8c786f895b31ded5b887acee0cd52a6ace9c2beda62b01974406a6
MD5 b41c45888e71c8d1e9b8a84e7f0a01bd
BLAKE2b-256 2211217e6d31b059f526484a31ebbe5cf605fd0143dc4d41dbe34263988eba1c

See more details on using hashes here.

File details

Details for the file pydendroheatmap-1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for pydendroheatmap-1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d6ce8f99fd77709f49ba5a00e249adfd2a0963a3ed17c02e4c5fab9092a4a916
MD5 f959d7e4faaff810e3c388af3d626939
BLAKE2b-256 c9daf36f707e0ec9eb4d87efe37384b036310c67fbd84c9c2136e6f655467ff4

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