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

How to handle 60+ unstitched tiles for a single CODEX Assay? #489

Closed
mccalluc opened this issue Mar 3, 2020 · 7 comments
Closed

How to handle 60+ unstitched tiles for a single CODEX Assay? #489

mccalluc opened this issue Mar 3, 2020 · 7 comments
Assignees
Labels
feature New feature or request

Comments

@mccalluc
Copy link
Collaborator

mccalluc commented Mar 3, 2020

User story
The CODEX data will be unstitched, so for each details page, there with be 60+ images, each covering a separate region, each with 2000+ cells. Having 60 image panes will not work.

Proposed solution
Right now, the CELLS_ADD / CLUSTERS_ADD / etc. events are only published by the invisible LayerPublisher component on load... but it doesn't seem unreasonable to have a visible component the user could interact with which would publish *_ADD events.

(I'm not sure right now what would happen if a component received an ADD after it has already been initialized. The name of the event is not quite right: We are actually adding and replacing, but ADD is concise, and clear enough for now.)

As far as UI, I think the radiobutton idiom we already have could be extended, so it would be something like:

◉ Row 1, Column 1
◎ Row 1, Column 2
◎ Row 1, Column 3
◎ Row 2, Column 1
...


@ngehlenborg / @ilan-gold / @manzt : Please review, and add a comment below or let me know in person what you think of this.
@mccalluc mccalluc added the feature New feature or request label Mar 3, 2020
@manzt
Copy link
Member

manzt commented Mar 3, 2020

I think this is a good solution. We could think of other UI components to interact with the data described as well, (ie discrete slider for row and discrete slider for column).

@ngehlenborg
Copy link
Member

Regarding the UI: while the above would work, I think we should move away from the radio button lists and replace them with tables that have a selection control (radio button or check box) because they afford sorting on different attributes (here: row, column) and searching across labels (very useful in the context of the gene list that we are currently using and I anticipate we will see many other scenarios in which that list gets quite long and where the entities in the list might have multiple attributes). I see that the downside of this approach is that we need to associate attributes (here: row, column) with the data sets (sub data sets?) that we load.

Regarding the data management: Would a selection view as described above be controlling all other views in the view configuration? In the context of CODEX I anticipate having views for:

  • spatial data (i.e. images and overlaid segmented cells)
  • channel mixing controller for the spatial view
  • heatmap for antigen levels per cell (or other "abundance profile view" for selected cells)
  • possibly other utility views such as a heatmap for the channel covariance matrix that Ted mentioned

Since each of these views is associated with one of the ~60 multi-channel images (i.e. tiles), each of them would need to update when a different tile is selected. Is that the plan?

@ngehlenborg
Copy link
Member

ngehlenborg commented Mar 3, 2020

Here is a graphical summary of what I described above:

image

(source: https://docs.google.com/presentation/d/1qwnhh5SY1lrdyc2mGcJuNYKvzKhqqKsURI61eQP5HsY/edit#slide=id.p)

@ngehlenborg
Copy link
Member

Per discussion about CODEX/SPRM outputs (https://docs.google.com/presentation/d/1jRepy954XTmXrqiyneue1pdlUHgw1SIczNBwrz4aWTQ/edit#slide=id.g70e6c261c9_4_27): in addition to the X and Y, there can also be an R (region), which could be another column in the table described above.

@ilan-gold
Copy link
Collaborator

An option I had brought up a while ago in a conversation would be to use sliders for the xy positions of the tiles - I don't think the tile names are very important and this would save us from building a giant table with radio buttons and the like.

@ngehlenborg
Copy link
Member

I spoke to @keller-mark and we agreed to discuss this issue (#489) in the team meeting on Friday. We need to address both UI and data management.

@mccalluc
Copy link
Collaborator Author

@ilan-gold : We got something up for the portal demo to handle the multiple tiles. I'll close this... but open a new focussed issue if you think there is still work to do? (Or reopen this if I'm confused about what work is already done.)

Harvard HIVE automation moved this from Backlog to Done May 26, 2020
@keller-mark keller-mark removed this from Done in Harvard HIVE Dec 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants