Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dash Bio apps - initial impressions #64

Closed
16 of 20 tasks
jackparmer opened this issue Dec 1, 2018 · 12 comments
Closed
16 of 20 tasks

Dash Bio apps - initial impressions #64

jackparmer opened this issue Dec 1, 2018 · 12 comments
Assignees

Comments

@jackparmer
Copy link
Contributor

jackparmer commented Dec 1, 2018

First-level impressions clicking through Dash Bio gallery beta apps: https://dash-gallery.plotly.host/dash-bio

Header

Would be great to have a GitHub link in the upper-right of the header that links to the code for each app on GitHub.

Dash Circos

  • A lot of stuff in this sidebar. Pretty overwhelming. Maybe try organizing into tabs within the sidebar? Eg perhaps could organize tabs as, Data | Layout | Events | Upload

image

  • Add a dropdown of a few different datasets?

Dash Clustergram

  • Heatmap is a bit small. Maybe put the right-hand column on the left side instead, and try to make the clustergram go full-bleed to the right edge of the screen? Usually sidebars like this are on the left hand side.
  • Would be nice to have a dropdown with a few classic clustergram data sets. Look at what the R clustergram packages and shiny apps use (eg heatmaply). Eg the mtcars dataset is a "classic:"

https://cran.rstudio.com/web/packages/heatmaply/vignettes/heatmaply.html

Dash Ideogram

  • Needs margin on the left-hand side. Bugs me that controls are touching window edge.
  • Make an issue in the original ideogram JS repo with a link to this app, to share and get feedback. Maybe will motivate the PI to address some of the issues you've raised.

Manhattan Plot

  • Hover mode should be closest by default
  • The "Visualize genome wide association studies..." description should should have a top margin so it's not touch the top header.

Sequence Viewer

  • Not sure what "Entry to view" is
  • Might want a dropdown with a few other sequences besides insulin
  • Would be great to combine this with 3d molecule viewer if there's a way that makes sense
  • vertical space between labels
  • Sequence doesn't wrap

image

Dash needle plot

  • Labels such as Stem thickness are too large in font-size IMO.
  • I only see one sample dataset in the dropdown - need to add more. A bunch here:
    https://github.com/jackparmer/react-needle-plot/tree/master/src/data
    On one of the Dash Bio calls I thought you had also found others in a Nature paper.
  • Should be a left-side margin so that controls and labels don't touch the edge of the window

image

Volcano

  • This app doesn't do much. Should maybe reduce the opacity of the points above the threshold? To make it more interesting, could add 2 overlaid histograms to the app - one histogram is all of the data and the other histogram is the data above the threshold. When the threshold is zero, the histograms are the same.
  • Get rid of "Lower effect size" and "Upper effect size" controls. They just reset the x-axis range which I don't think is very interesting.
  • Set default hover mode to closest

Remaining apps

@Bachibouzouk
Copy link
Contributor

Bachibouzouk commented Dec 1, 2018

* I only see one sample dataset in the dropdown - need to add more. A bunch here:
  https://github.com/jackparmer/react-needle-plot/tree/master/src/data

There is actually two out of the 4 data sets (4 times two files, one for protein domains, the other for mutation data) from your link available in the dropdown (I couldn't tell from which protein the 2 other were and I decided not to trust them). Whenever the dropdown is selected, a scroll bar kicks in and the dropdown expand hidden from view, I was trying to play with the overflow css option for this not happen but I didn't manage yet.

* On one of the Dash Bio calls I thought you had also found others in a Nature paper.

Yes I found the other data sets in the nature paper and this is to retrieve the datasets I spent time coding a parser to download the protein domains of the paper figure (the parser is actually available as the lowest option (UniProt dataset) in the app of the awaiting approval PR #51). I will gather their data and the corresponding protein domains and make them as available choices in the demo dropdown. If I understood correctly, protein domains are always the same and different people publish their mutation data on top of that :).

@Bachibouzouk
Copy link
Contributor

Bachibouzouk commented Dec 1, 2018

Volcano

The data set of interest is the one on the top left or top right of the threshold (they are highlighted in red). We can't get rid of the Upper and Lower effect size as then it would not be a volcano plot anymore. The aim of such a plot is to spot immediately data points which are statistically significant than two thresholds. I have been trying to find different data sets which are "sexier" but I am not a biologist and the datasets are not transparent to me. There are not either to the actual bio-knowledgable people on dash-bio, because they told me they didn't work with volcano plots in the past. @matthewchan15 found this figure , I will try to get the dataset behind it and make the coloring scheme :)

@mtwichan
Copy link
Contributor

mtwichan commented Dec 2, 2018

Circos

Add a dropdown of a few different datasets?

@jackparmer Hey JP, I'm just a little bit confused on this comment. Currently, in this application there are a total of 10 graphs under Select Circos Graph, where Select Data Set displays the tracks and layout (the data sets) corresponding to each graph.

The contents (data sets of the selected graph) of the drop down Select Data Set, is dynamically updated when a new graph is selected in Select Circos Graph.

Are you looking for more graphs, or graphs containing more data sets?

Updated app: https://dash-bio-test-pr-72.herokuapp.com/dash-bio/circos

@mtwichan
Copy link
Contributor

mtwichan commented Dec 2, 2018

Ideogram

Make an issue in the original ideogram JS repo with a link to this app, to share and get feedback. Maybe will motivate the PI to address some of the issues you've raised.

@jackparmer Will do. The creator of this project has been very proactive, and I've been in communication with him. I have been added to the list authors for this project as well 👍. I think he will be excited to see what we came up with!

eweitz/ideogram#123

Updated app: https://dash-bio-test-pr-71.herokuapp.com/dash-bio/ideogram

@shammamah-zz
Copy link
Contributor

@jackparmer I've set up the github links in the header, but the repository will need to be public for people to view them (currently set to private). Let me know if/when I should change the settings for that

@jackparmer
Copy link
Contributor Author

Hey @Bachibouzouk, I still can't get the dropdown to show the 4 dataset options:

image

I would try remove any overriding CSS like overflow on the dropdown component.

@Bachibouzouk
Copy link
Contributor

Bachibouzouk commented Dec 4, 2018

I still can't get the dropdown to show the 4 dataset options

@jackparmer , it is fixed in #51 which is waiting for @shammamah review :). You can preview the new app with the heroku deploy : https://dash-bio-test-pr-51.herokuapp.com/dash-bio/needle-plot

@VeraZab
Copy link
Contributor

VeraZab commented Dec 4, 2018

@jackparmer we're having difficulties with deployment (Heroku and dds) for @nchtra 's app, because she needs a module that requires other modules to be preinstalled (mdtraj), so this requires us to make the conda based workflow to work.

Dds seems to have difficulties with this, we've tried different buildpack urls for conda, that did not work, and @gzork now tried a Docker setup, but that also seems to be having issues: https://github.com/plotly/streambed/issues/10577#issuecomment-443977956

So I've asked Chitra if she could find another module to replace as it looks like it may take some time to fix the conda flow. She's working on that now.

@jackparmer
Copy link
Contributor Author

jackparmer commented Dec 5, 2018 via email

@shammamah-zz
Copy link
Contributor

@matthewchan15 @Bachibouzouk Fernando gave us some great feedback - make sure that the dcc.Upload components have some text on them that clarifies that you'll be able to click on it to open the file browser as well.

@Bachibouzouk
Copy link
Contributor

the feedbacks listed in this issue have been implemented

@deepstqte
Copy link

deepstqte commented Jan 30, 2019

Definitely would like to understand why a conda buildpack isn't working

@jackparmer (I kept this unread to answer with more context). There is more info in this issue https://github.com/plotly/streambed/issues/11803, but TL;DR is basically we have to support different versions of Miniconda, which is not done by the official buildpack (which is deprecated by Heroku), and we need to support Isolated/Airgapped installs, which is specific to our product offering unlike Heroku. but this is a WIP, and we should be able to support conda dash app deployments in DDS in 3.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants