CSE512-15S / fp-tdurham-ajh24-chiasson-ningli30

EPICViz - http://cse512-15s.github.io/fp-tdurham-ajh24-chiasson-ningli30/
0 stars 3 forks source link

Explore using small multiples of X,Y,and Z views as an alternative to 3D #1

Open andrewhill157 opened 9 years ago

andrewhill157 commented 9 years ago

This came up in classmate feedback. I'm not sure if it would really work all that well for this datatype, but if there is a quick way to try it out, could be interesting to see how it looks. 2D plots would definitely be easier work with in some ways, but the 3D context and flexibility could still be useful in this particular context.

andrewhill157 commented 9 years ago

I tried this out recently and it looked like this (very roughly): screen shot 2015-05-17 at 9 34 14 pm

We all seem to initially agree that a 3D view gives more context for this type of data and that we can improve the utility of the 3D view through strategies such as reducing size of non-highlighted cells, etc. Will leave this open for now until we discuss with Jeff/TAs.

andrewhill157 commented 9 years ago

Sorry for missing class today, Trapnell lab all went to a talk at FHCRC today, so I went with them. Melissa said that Jeff made the suggestion of having small multiples next to the 3D plot. Depending on feedback on Thursday, I think it could be worth considering quickly implementing the small multiples at least as a test. I don't think it would take that much time to make a hacky version for evaluation purposes.

One advantage of small multiples is if you are interested in migrations/locations of a group of cells (provided that they are relatively localized) it would be much much easier to quickly and accurately make judgements with small multiples (especially when modified to avoid occlusion by changing radius, etc.). The 3D plot takes a lot of manipulation to figure out exactly where cells are even if the view is initially more intuitive. I think it could be worth at least quickly making a version of small multiples side by side with 3D that changes with timepoint and has the same highlighting. Maybe we could all try it out and maybe give it to Bob/whoever to test out or something.

Just my two cents, let me know what you think!

andrewhill157 commented 9 years ago

After feedback from our proposal progress update, I took code I used to generate the example above and modified it to fit with some of the changes that Tim made to plotData. There is now a functioning (mostly) set of small multiples next to the 3D plot. Ning, you had offered to help with some of this -- if you are still up for it, the following improvements on this base functionality could use plenty of help/work:

  1. Some sort of labeling of what view is being represented by each small multiple (either with a small very discrete label or popover text)
  2. Better layout. This includes lining up all the small multiples, improving sizing of the 3D plot scene, etc. to make things look nice and take up less space. Widths are currently hardcoded and should likely be set to fill a 1/3 of a parent div height.
  3. Update highlighting when new highlights are selected as is already done with the 3D plot.
  4. Add ability to click on one of these small plots and rotate the 3D view to match (will involve setting viewpoints in x3dom scene
  5. Highlight a user highlighted cell (yellow outline) in these multiples
  6. Performance. Is there anything we can do to boost performance with all these updates?
andrewhill157 commented 9 years ago

Note that the relevant commit is: https://github.com/CSE512-15S/fp-tdurham-ajh24-chaisson-ningli30/commit/50b3a33d706ddf60c7eca1b30ee8fac3c2820523

I added functions:

tdurham86 commented 9 years ago

Making good progress on this one. As we discussed at our meeting earlier today, getting these small multiples fully integrated and polished is one of our top three priorities.

andrewhill157 commented 9 years ago

I made some steps towards fixing the formatting on this. It looks better without the heatmap, which has not yet been styled to fit within the current design.