# QIIME QZA support in iTOL

**URL:** https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824
**Category:** Developer Discussion
**Created:** [February 1, 2018, 2:58pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824 "2018-02-01T14:58:43Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![iletunic](https://forum.qiime2.org/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@iletunic](https://forum.qiime2.org/u/iletunic)
#### Post date: [February 1, 2018, 2:58pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/1 "2018-02-01T14:58:43Z")

</div>

As mentioned in the user support thread, I have now added the initial support for direct upload of QZA files in iTOL. After the initial upload of the tree QZA, further QZA files can be dropped onto the tree display. At the moment, only FeatureData[Taxonomy] is supported, but I can implement other types that can be visualized on the trees...

I was looking at FeatureTable[Frequency] (table.qza from your tutorial). Is there some documentation on the data structure in the .biom file? I see the tree IDs in the 'observation/ids', and sample IDs in the 'sample/ids'...

Your input and ideas are welcome.

---

<div class="post-metadata">

### Author: ![ebolyen](https://forum.qiime2.org/user_avatar/forum.qiime2.org/ebolyen/32/11_2.png) [@ebolyen](https://forum.qiime2.org/u/ebolyen)
#### Post date: [February 1, 2018, 3:17pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/2 "2018-02-01T15:17:14Z")

</div>

What kind of environment does the processing of these files? Does it happen in the browser or on the server?

@wasade is the maintainer of BIOM and can point you in the right direction for parsing. (Although if you are using the browser, there's not really a [good way](https://github.com/biocore/biom-format/issues/699) to read the underlying HDF5 format in JavaScript right now).

---

<div class="post-metadata">

### Author: ![iletunic](https://forum.qiime2.org/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@iletunic](https://forum.qiime2.org/u/iletunic)
#### Post date: [February 1, 2018, 4:06pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/4 "2018-02-01T16:06:37Z")

</div>

Files are processed server side, so parsing/extracting is not a problem... I was thinking more about the structure of the data inside, and how it could be visualized on the tree. Basically, extracting different taxa level mappings, like you do for taxa-bar-plots.qzv in your tutorial.

---

<div class="post-metadata">

### Author: ![wasade](https://forum.qiime2.org/user_avatar/forum.qiime2.org/wasade/32/2317_2.png) [@wasade](https://forum.qiime2.org/u/wasade)
#### Post date: [February 6, 2018, 8:08pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/5 "2018-02-06T20:08:38Z")

</div>

Sorry for the delayed response. @iletunic, if you're able to operate server side via Python, it may be easiest to manipulate the contents of the tables using the [`biom.Table`](http://biom-format.org/documentation/table_objects.html) object. However, if you want to operate directly on the HDF5 structure, you can find a description of the DDL [here](http://biom-format.org/documentation/format_versions/biom-2.1.html).

In terms of mapping to a tree, in QIIME2, the taxonomy information is maintained outside of the `biom.Table` so there shouldn't actually be a need to inspect that artifact unless you wanted to take the relative abundances of features into account. If that is of interest, then I do recommend using the `biom.Table` API as it has methods to support collapsing features by taxonomy, retrieval of data, transformations, etc.

Best,  
Daniel

---

<div class="post-metadata">

### Author: ![iletunic](https://forum.qiime2.org/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@iletunic](https://forum.qiime2.org/u/iletunic)
#### Post date: [February 7, 2018, 2:39pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/6 "2018-02-07T14:39:53Z")

</div>

Thanks... I already implemented it, and FeatureTable[Frequency] files can be dropped onto the trees now as well... A multi value bar chart will be generated from the sample counts inside.

---

<div class="post-metadata">

### Author: ![ebolyen](https://forum.qiime2.org/user_avatar/forum.qiime2.org/ebolyen/32/11_2.png) [@ebolyen](https://forum.qiime2.org/u/ebolyen)
#### Post date: [February 7, 2018, 2:43pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/7 "2018-02-07T14:43:20Z")

</div>

That is super cool @iletunic!!

Something I just want to throw out there:

In case you didn't know, the `metadata.yaml` file in the root of the artifact lists the format which you can expect in the `/data/` directory, that is used for dispatching the relevant code in QIIME 2, and can probably be used the same way in iTOL (if you aren't already using it).

---

<div class="post-metadata">

### Author: ![iletunic](https://forum.qiime2.org/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@iletunic](https://forum.qiime2.org/u/iletunic)
#### Post date: [November 29, 2018, 2:36pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/9 "2018-11-29T14:36:30Z")

</div>

Just FYI, I have added support for QZA FeatureData[AlignedSequence] files. When dropped onto iTOL trees, these will automatically create a multiple sequence alignment dataset. Note that the display of alignments in iTOL is not supported in circular or unrooted modes.

---

<div class="post-metadata">

### Author: ![thermokarst](https://forum.qiime2.org/letter_avatar_proxy/v4/letter/t/8e7dd6/32.png) [@thermokarst](https://forum.qiime2.org/u/thermokarst)
#### Post date: [November 29, 2018, 2:47pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/10 "2018-11-29T14:47:11Z")

</div>

Awesome, thanks @iletunic! I updated the upcoming 2019.1 release's [changelog](https://forum.qiime2.org/t/preview-qiime-2-2019-1-development-changelog/7089) with this information! Feel free to edit that post (or other future changelogs) with any other things you wish to announce! 🦖

---

<div class="post-metadata">

### Author: ![SoilRotifer](https://forum.qiime2.org/user_avatar/forum.qiime2.org/soilrotifer/32/21071_2.png) [@SoilRotifer](https://forum.qiime2.org/u/SoilRotifer)
#### Post date: [November 29, 2018, 3:41pm UTC](https://forum.qiime2.org/t/qiime-qza-support-in-itol/2824/11 "2018-11-29T15:41:36Z")

</div>

This is really great. As per @iletunic's request, I've added a couple of references to this feature within the [q2-phylogeny community tutorial](https://forum.qiime2.org/t/q2-phylogeny-community-tutorial/4455).
