PCA visualization parameters

Hi everyone,
I am working with the GPA module from slicermorph and I noticed some changes which are most likely intentional and for good reasons but I need to ask.

When you have a PCA showing segregation thanks to multiple axes such as here (not the best significant example I guess), the Interactive 3D visualization tab from the GPA module would allow you to play with two PCs simultaneously. This has changed in the latest version I think and I can only use one at a time. I suppose I can show the effect of one composant on one axis (show a distance to distance map for small values on PC1 vs high values and then do the same on the second axis (pc2). More work but possibly more accurate to describe what may be going on ? Conceptually, though, combining PC1 and PC2 absolutely makes sense when data separate “diagonally”. but a scaled displacements along PC1 and PC2 is not really like applying two transforms in sequence, is it ?
Is this why this approach was removed. What should we do in these cases ?
My apologies if this was discussed elsewhere

Yes, that is normally how most PC visualization are done; by reconstructing min and max of the specific PC and providing them as visuals on the corresponding side of the PCA plot. One slider is enough to do that.

Where two slider was marginally useful was for a specific PC value in one slider, you can add the other one (stacking the PCs). But then why two? Why not five? We can’t possibly add all PCs as sliders, this is better done programmatically (a case of scripting is being much more simple than trying to accomplish the same thing via UI).

As for visualizing the diagonal transects, that’s never possible with the old interface, because that means you have to simultaneously increase the both sliders. this is now replaced with much easier way of achieving the same thing via clicking the PCA plot. First enable, 3D visualization, then choose the option “Drive 3D model from PCA scatter plot” and then click anywere on the PCA plot. The model (or the point cloud) in Viewer 2 will dynamically change based on the PC coordinates (aka value) of you clicked. So you can do diagonal or any angle.

This is a new change, that I introduced recently to the preview version. I will be talking more about it in the SlicerMorph office hour on the June 3rd.

1 Like

Fantastic and thank you, that makes sense and sounds exactly like what I need !

Just to make sure I understand correctly: when using “Drive 3D model from PCA scatter plot”, clicking a point on the PCA plot reconstructs the model using the PC coordinates of that point, so for a PC1–PC2 plot this effectively gives a combined PC1 + PC2 shape rather than a sequential application of two transforms ?

ON my graph, for a DEL vs WT contrast where the groups separate diagonally, would you recommend clicking representative points near the DEL and WT group centroids and using those two reconstructed shapes for visualization? Also, is there a way to input exact PC coordinates or export/save the reconstructed model at a clicked location, so the visualization can be reproduced precisely for figures? And will you also include a factor to extrapolate shape changes ?

Thanks again — this is very helpful.

Also, can we attend slicermorph meetings ?

Just tried “Drive 3D model from PCA scatter plot”,
great work Murat !

1 Like

Yep.

Of course. If you are on SlicerMorph mailing list, you should get a note today with the zoom link and the time.