Skip to contents

Most of the plots here related to exploring aspects of a DLP run to help learn how well it may have worked or not!

A good resource of exploring aspects of DLP are these confluence pages:

Chip Layout Plots

The first thing we usually want to check, is how the chip is laid out:

# just some example data from a recent run with lots of experimental conditions
ex_mets <- vroom::vroom(
  "data/ex_metrics.tsv.gz",
  show_col_types = FALSE
)

dlptools::chip_plot(ex_mets, "experimental_condition")



Then often we want to look for spatial effects across the chip.

Such as, quality:

dlptools::chip_plot(ex_mets, "quality")



or perhaps total reads:

dlptools::chip_plot(ex_mets, "total_reads")



GC Correction Plots

Another plot that can be useful is to look at the GC correction for a cell, to see if the values really fall on integers for CNs, or if maybe something seems off about the multiplier HMMcopy chose for the cell.

# standard reads table, really anything with GC, modal_curve, multiplier, and
# cell_id columns should work.
ex_reads <- vroom::vroom(
  "data/example_full_reads.tsv.gz",
  show_col_types = FALSE
)

dlptools::gc_plot(
  ex_reads,
  cellid = "AT21352-A144173A-R03-C32",
  # plot_choice = "both" # the default option
)


Or you can just plot one:

dlptools::gc_plot(
  ex_reads,
  cellid = "AT21352-A144173A-R03-C32",
  plot_choice = "corrected" # or plot_choice = "raw"
)




Cell Copy Profiles

Sometimes you want to show a plot of a cell, or handful of cells, with their copy values and the overlaid state calls.

The Signals package has plotCNprofile which has lots of features.

But if you want a quick and dirt dlptools version, you can do:

dlptools::cell_cn_profile(
  ex_reads,
  cell_ids = unique(ex_reads$cell_id)[1:2],
  # high copy numbers can obscure the plot, so you can set:
  # pseduo_log_y = TRUE
  # and that might help. Or see function help for more ideas
)




If needed, can also change what the y-axis is to other bin-based options:

dlptools::cell_cn_profile(
  ex_reads,
  cell_ids = unique(ex_reads$cell_id)[1:2],
  yaxis = "state"
)