ZenbuReports

From ZENBU documentation wiki
Jump to: navigation, search

Introduction

AML report page.png

Nowadays, scientific publications often times come with dedicated websites that manage and organize the data, showcase the analysis results, and offer tools for additional analysis. This is particularly important for consortia projects that produce atlases of genome-wide data by large-scale data production. Usually, such accompanying websites are constructed manually for each publication separately, which requires the services of a software engineer and increases the maintenance burden as well as data storage needs.

To address this, we developed ZENBU-Reports. ZENBU-Reports which provides the graphical elements that are commonly used in paper figures, such as tables, 2D and 3D scatter plots, network graphs, heatmaps, circos plots, bar/line/pie charts and other scientific visualizations, but as an interactive dynamic web application. The ZENBU genome browser is fully integrated as an element and has been expanded to include new HiC visualization capabilities. Data download functionality is also provided for each element. These elements can be user configured and arranged using graphical interfaces and page layout styling. The elements can be linked to each other, sharing data, selections, and filters allowing dynamic updates to the data presented. ZENBU-Reports is built upon the ZENBU infrastructure and makes use of the same database, so double storage of genome-wide data is prevented. ZENBU-Reports has already been used for several publications within RIKEN IMS and several international collaboration projects.

  • de Rie, Derek et al. “An integrated expression atlas of miRNAs and their promoters in human and mouse.” Nature biotechnology vol. 35,9 (2017): 872-878. doi:10.1038/nbt.3947
  • Alam, Tanvir et al. “Comparative transcriptomics of primary cells in vertebrates.” Genome research vol. 30,7 (2020): 951-961. doi:10.1101/gr.255679.119
  • Ramilowski, Jordan A et al. “Functional annotation of human long noncoding RNAs via molecular phenotyping.” Genome research vol. 30,7 (2020): 1060-1072. doi:10.1101/gr.254219.119
  • Hashimoto Mari et.al. "Combined inhibition of XIAP and BCL2 drives maximal therapeutic efficacy in genetically diverse aggressive Acute Myeloid Leukemia." Nature Cancer in-press (2021)
  • Agrawal Saumya, et al. "Functional annotation of human long noncoding RNAs using chromatin conformation data" bioRxiv 2021.01.13.426305; doi: https://doi.org/10.1101/2021.01.13.426305
  • Severin, J. et al. Interactive visualization and analysis of large-scale sequencing datasets using ZENBU.  Nature Biotechnology 32, 217–219 (2014).

https://fantom.gsc.riken.jp/zenbu/reports

Report Elements

ZenbuReports toolbar.png

In a similar way to how tracks in the ZENBU genome browser are separate entities and organized into a vertical stack, a ZENBU-Reports pages is made up of separate Elements organized into a page layout of rows, columns or hidden tabs. A page is created by selecting new Elements from a toolbar and placing them onto the page

Element Types

Currently the ZENBUReports systems has the following Element Types available. Every Element has a core set of common features: title, framing, data sources, and triggers.

  • Table Element : like a spreadsheet table to displaying raw data values. Also useful for allowing a user to search and select within a large dataset to trigger updates in the page.
  • Chart Element : a basic charting visualization with several different display types: bar, line, 2d scatter, 3d scatter, ternary plots
  • ZENBU genome browser : a fully functioning ZENBU genome browser with the ability to share data from the selected track into other elements on the page.
  • Heatmap :
  • ColorScale :
  • Circos plot :
  • Cytoscape network graph :
  • Genomewide visualization : manhattan plots, whole chromosome views for compact display of data genome wide.
  • TreeList :
  • Category filter :
  • Filter element : an element interface to the signal filter system. allows a page to be setup to prominently show the filter interface rather than rely on the user to realize they need to click on filter widget of the linked element.
  • Search element : provides a search interface for data within a shared element.
  • HTML Element : a blank slate to insert any static HTML content. Also has simple data-injection for displaying attributes of a selected data-entity

Page Layout

ComplexElementLayout.PNG

There are several page layout Element types to help with organizing a page. These include Row, Column and Tabs. The layout Elements can be nested to create complex page layouts: for example a column of several rows or a row of several columns embedded within a tab.

  • Row : allows multiple Elements to be aligned left-to-right in a row. designated with a dark blue title bar when editing.
  • Column : allows multiple Elements to be aligned top-to-bottom in a column: designated with a light blue title bar
  • Tab group : allows multiple tabs to conserve screen space by only displaying the contents of the active tab. a single layout Element can in inserted into each tab.

When editing a page, the layout elements border and widgets are visible, but when the page is active these are hidden. to move a layout element grab the top thick-bar. Along the top there are several colored boxes for certain functions.

  • red box : to delete the layout element
  • yellow box : to center the element left-to-right on the page. Only works elements which are flowed onto the page. Elements which have been placed into a fixed absolute position can not be auto-centered.
  • black box : indicates that the layout element has been placed into a fixed absolute location on the page. pressing the black box will reset to flow

A page is effectively organized with a top level hidden column. As new elements are added to the page flow they are placed at the bottom of this invisible column. The best way to create a page layout is to explicitly choose a single top-level layout element (row, column or tab) and then create your layout structure within that. Although the system does allow for placing Elements at absolute fixed locations, this is mainly useful when first creating and editing a page. It is not Best Practice to use absolute location Elements for a final published page. Please take advantage of nested layout elements to ensure your dynamic page flows and resizes as needed.

Saving and Sharing pages

Since ZENBU-Report pages were designed specifically to be used a supplemental websites for publications, we added a fixed URL page saving-and-naming system. This allows for descriptive, easy readable names to be assigned to the page and included in a publication. The fixed URL system also allows for the page contents to be updated as needed while retaining the same URL.

https://fantom.gsc.riken.jp/zenbu/reports/#Identification_of_therapeutic_targets_in_poor_outcome_AML_patients
https://fantom.gsc.riken.jp/zenbu/reports/#FANTOM6_HiC

As with the rest of the ZENBU system each page configuration is saved into the database with a unique UUID and is never altered. The fixed URL system is effectively an alias like system which allows the fixed URL name to point at a particular configuration UUID. So even when a page is 'edited' the previous version of the page is still in the system, searchable in the DataExplorer and accessible via its UUID.

Anyone can create a new fixed URL name, but once created, it is bound to the user who created it. For example I (jessica severin) owns #FANTOM6. But to enable a more collaborative process in creating pages, a page editors concept was created. For each fixed URL name, there will be the creator (not changeable) and a list of editors. The creator of the fixed URL has control over who they choose to be able to edit the page (ie change which page configuration the alias points at).