Open jrchudy opened 1 year ago
Issue #150 handles support for queryPattern for all plot types. (completed) Issue #121 handles support for hovertemplate display. (completed)
Issue #172 handles adding support for a single selector that shows above the heatmap (complete)
Description
As part of Smite project, we would like to show a graph as described below:
z
values for different experiments maybe. Something like the following where x=[A, B, C, D], y=[1, 2, 3, 4] and z1 is every combination of the 2 sets and their counts. z2 and z3 are the same combination of data but under a different scope/experiment:Some of the requirements include:
In this issue, we will go over ways that we can achieve this and changes that are needed.
Plot app (2D Heatmap in plotly)
Using
plot_type='heatmap'
, we can create our a 2d heatmap with our own supplied data. Pros:hoverinfo: 'text'
and setting a `text: [[], [], ... ] property that maps similar to the z valuesCons:
Heatmap app (Series of 1D Heatmaps in plotly)
Example: https://dev.atlas-d2k.org/deriva-webapps/heatmap/#2/Gene_Expression:Array_Data_view/NCBI_GeneID=11682
Similar to the 2D heatmap above. All functionality ends up being the same. There isn't a reason to use a series of 1D heatmaps instead of 1 2D heatmap.
Matrix app
The matrix app shows the different
z
s for a combination ofx
andy
values. In this case, there will be just onez
value for each cell, so while we could use the matrix app, it's not something that the app is designed for.Other than that, the following are the other changes required to make this feature work in the matrix app:
z
. The logic should be straightforward.While the matrix app is not designed for such a use case, the required changes to make it work in this scenario should be simple. The only downside of using a matrix app is that we cannot have multiple matrices in the same app, which is supported out of the box in the plot app.