Comments (3)
- The tree, which is not shown here, describes the evolutionary relationship between the clones with each clone annotated with samples where it is present. From your clustering you sent via my email, I can tell that the two clones that are emerged in the relapse are the founding clone 1 and subclone 5. Thus, you'll see in the tree, the founding clone (which you called the ancestor) is annotated with the relapse sample plus any other samples where it is found. In this case, clone 1 is present in only the relapse sample suggesting it is missed by the primary sample (due to intra-tumor heterogeneity).
You should also check if Pyclone CCF is barred by 100% that could hamper clonal fraction estimates. See more here: #4.
- Function plot.clonal.models has many parameters to control how the tree is plotted, particularly relevant ones are:
#' @param mtcab.angle: mtcab branch angle in degree
#' @param mtcab.branch.width: mtcab branch width in points
#' @param mtcab.branch.text.size: mtcab branch text size (cex)
#' @param mtcab.node.size=3: mtcab node size
#' @param mtcab.node.label.size: mtcab node label text size
#' @param mtcab.node.text.size: mtcab node annotation text size
#' @param mtcab.event.sep.char: mtcab event separator (used to break down events
#' @param mtcab.show.event: show mapped events on branches
Just play with them until you get some good plot.
- Each branch represent the evolution path to a clone and its length is scaled by the number of clonal marker mutations of the clone. Its color is matched with the clone node color. The coloring is consistent throughout all types of plots generated by clonevol.
from clonevol.
Thanks for the reply.
I am still confused on the tree.
-
clone1 in primary should be the founding clone, why clone 1 in the relapse was found clone? In primary, there are three clones with about 100% CCF in the cluster plot, i wonder if this is the reason the program doesn't pick clone 1 from primary as founding clone. Another confusion is that cluster 3 in primary shows 100% CCF, but it get to almost 0% in relapse, for this case, the clone 3 is clonal or subclonal?
-
I didn't plot the tree using plot.clonal.model because it is so crowd if there are more samples. I used plot.all.trees.clone.as.branch to generate the tree only, but I don't see branch.angle to adjust the angles between branches. Could you please point me to the parameter or function to do this?
Thanks
from clonevol.
Sorry for late response.
-
Given that you have an evolution tree as: 1-->2-->3-->4, and with a single sample from primary tumor that only captured cells in clone 4. The result is that cluster 1,2,3,4 all have CCF of variants = 100%, but CCF of clones 1,2,3 = 0 while CCF of clone 4 = 100%. It is important to distinguish CCF of clones from CCF of variants when interpreting clonal evolution models and tumor heterogeneity. Our paper describes how CCF of clone and CCF of cluster of variants are related, see https://academic.oup.com/annonc/article/28/12/3076/4110375. The tree is annotated with clones where CCF of the clone (not the cluster) is non-zero.
-
You can try to provide/adjust the following parameters to plot.all.trees.clone.as.branch as:
plot.all.trees.clone.as.branch(..., angle=15,branch.width=1,
branch.text.size=0.3, node.size=3, node.label.size=0.75,
node.text.size=0.5)
or even better, I have created a wrapper for better plotting of the trees but haven't documented in the vignette. Given y is output of infer.clonal.models, you can try:
y = convert.consensus.tree.clone.to.branch(y, branch.scale='sqrt')
y = overlayPrunedTrees(y)
plotTreesBellsCells(y, trees.per.page=3, tree.branch.angle=30,
show.event=T, show.frame=F, tree.branch.width=0.75,
out.pdf.file='trees-fishes-cells.pdf')
from clonevol.
Related Issues (20)
- Can I still use clonevol on my data HOT 4
- infer.clonal.models - bug with alternate cluster column names
- plot.all.trees.clone.as.branch -bug with branches name HOT 2
- estimate.clone.vaf HOT 1
- to repeat the example in the ClonEvol Tutorial by RGui4.0.2
- variants from primary tumors and metastasis tumors without normal controls
- [Help..] Found 0 consensus model(s) HOT 2
- PyClone-vi output HOT 1
- Error in Generating consensus clonal evolution trees across samples HOT 1
- cancer.initiation.model parameter in infer.clonal.models() HOT 1
- Data visualization when inferring a polyclonal model
- infer.clonal.models() no rows to aggregate HOT 2
- Error in merge.clone.trees HOT 2
- build_tree/infer.clonal.models unused argument error
- could not find "'tree.tsv' and 'variants.tsv' these two files
- Questions about data input
- No consensus multi-sample models provided.
- error in convert.consensus.tree.clone.to.branch HOT 3
- driver annotations on fishplot
- Example trees.tsv and variants.tsv files
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from clonevol.