saeyslab / nichenetr

NicheNet: predict active ligand-target links between interacting cells
467 stars 115 forks source link

Making a ligand-receptor-target circos plot #20

Open abberclark opened 4 years ago

abberclark commented 4 years ago

Thanks for this great package!

I would like to make a ligand-receptor-target circos plot as described in the "circos" vignette and as seen in "B": circos plot with summary

I can make both ligand-target and ligand-receptor circos plots, but it's unclear how to overlay the plots. My question is how do you know which target genes are associated with a particular receptor (i.e., align the target genes and receptors for the receiver cell)?

browaeysrobin commented 4 years ago

Hi @abberclark,

In the example you showed, we plotted the outer layer of receptors without 'really' taking into account the corresponding target genes per receptor. What we did was dividing the target genes in 3 groups: mainly Csf1-regulated targets, Bmp/Dll-regulated targets, and targets of 'other' top-ranked ligands. All Csf1-regulated targets were then plotted under the Csf1 receptor, all Bmp/Notch-regulated targets were plotted under all expressed receptors for the specific Bmps and Dlls, but we do not infer links between specific receptors and specific targets. So if you see that e.g. Myc is under Notch1, this does not mean that the only receptor upstream of Myc is Notch1, but just that Myc was classified to belong to the group of targets genes downstream to the group of ligands of which at least one ligand has Notch1 as receptor. For the third group, there is even less correspondence, here we just plotted all 'other' targets under all 'other' receptors.

So currently, you cannot use this approach to make a ligand-receptor-target plot with real correspondence between receptors and targets. Sorry for not being able to help you really out. To check real correspondence between ligand-receptor-target, I would suggest using the heatmap visualizations.

In the future, I might look for a solution to this because the circos plot is a beautiful visualization, but it seems hard to do and is not really a priority right now.