How to make this kind of 3-D plotting for cancer subclones ? (picture attached)
3
0
Entering edit mode
8.7 years ago
newDNASeqer ▴ 750

I am interested in making 3-D plotting like this below picture for illustrating the subclones/clustered mutations of cancer cells. I have exome-seq data and have calculated the VAFs (Variant Allele Frequency), but I have no idea how to do the plotting. Does anyone know what software of package can do this kind of 3-D plotting?

3-D plotting

subclone cancer heterogeneity • 3.8k views
ADD COMMENT
3
Entering edit mode

I question the value of 3D representation in this figure (and more generally). I think you could generate an equally-informative visualization using e.g. R/ggplot2 + facets.

ADD REPLY
0
Entering edit mode
ADD REPLY
0
Entering edit mode
8.7 years ago
Noushin N ▴ 600

In the manuscript, they mention generating this setup of plots in adobe Illustrator, from 2D flat plots generated in R. I know this doesn't really point you any off-the-shelf solution :(

"Variant frequencies extracted from the AmpliSeq validation data were plot-
ted as bar charts for all mutations with a minimum coverage of 100× across all sequenced regions of a tumor using the R software package. These charts were converted into three-dimensional bar charts using Adobe Illustrator."

ADD COMMENT
0
Entering edit mode

thanks Noushin, but that last sentence is too terse for me to repeat how they did it :(

ADD REPLY
0
Entering edit mode

I don't know if it will help you make that nice looking figure, but one other possibility is making a 3D bar plot in your software of choice, then adjusting the distance between bins, and customizing color bars, play with bar depth, etc.

ADD REPLY
0
Entering edit mode
8.7 years ago

I'll put in a plug for our sciClone package, which produces some nice plots, though nothing exactly like you're showing here. https://github.com/genome/sciclone

ADD COMMENT
0
Entering edit mode

@Chris Miller, thanks for your reply.

Yes, I've tried to use your sciClone software, and below is what I got from my preliminary attempts using two of my samples. As you see, the clusters are too close, I was wondering if there's any way to change the scale of the X-axis so that I can make the clusters farther apart?

Another question with sciClone is: if I have 10 samples (Exome-Seq), how do I feed them into sciClone to analyze how many subclones exist in the samples? - Thanks again

ADD REPLY
1
Entering edit mode

- Are your VAFs scaled between 0 and 100 (percentage) and not between 0 and 1 (fraction)?

- If your data really does look like this, you could modify with the sc.plot2d function in the R code to tweak the xlim and ylim.

ADD REPLY
0
Entering edit mode

Thanks Chris for the reply.

I had fractional VAFs (between 0 and 1) in my files for the sciClone plotting posted above this, however, after I converted them to percentage, I think I got better looking plots. I have uploaded two captured plots for you to see, however, I still need your help with interpreting the plotting.

  1. For the clustering plot that shows 3 clusters, I only included two samples, but I have more than 10 samples, how do I tell the sub clonality in all my samples?
  2. The tumor coverage plot shows dots clustered below 20, does this mean my sequencing coverage is only about 20X? is this considered low for sub clone analysis in cancer samples?

Please note that I did not do copy number variation analysis, or should I include it with SNPs for sciClone?

Thanks a lot!

ADD REPLY
0
Entering edit mode
  1. That's not your sequencing coverage, that's the VAF. Seeing the highest clone at sub-20% suggests that your tumor purity is very low.
  2. Those outlier points (and corresponding strange clusters) would almost certainly be cleaned up by adding copy-number information. You can derive it from exome data using VarScan, cn.mops, or other packages.
ADD REPLY
0
Entering edit mode
8.7 years ago

There isn't an isometric projection plotting function in R that I can find. My guess is that you'd have to make it manually, as the authors did.

I'd instead try going with a 2D heatmap (or levelplot, geom_tile, volcano plot, etc.) to show this kind of data. Use multiple colors to categorize data (e.g. blue, yellow, red, etc.) and apply an intensity or saturation adjustment from 0 (no saturation) to 1 (full saturation) for the normalized variant frequency signal. Read ?hsv in R or search on HSV color space in a search engine for more info.

A heatmap of normalized data would readily communicate relative differences in signal, whereas with the authors' figure, the reader is guess-timating differences based on eyeballing relative plot heights. Further, it isn't immediately clear what differentiates column values; there are no tick marks and no labels along the x-axis, so any trends along that axis are also guess-timated. These choices cause communication problems that make this a less than successful design, IMO.

ADD COMMENT

Login before adding your answer.

Traffic: 954 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6