Mercurial > repos > immport-devteam > fcs_scatterplot
annotate getDensityPlots.R @ 1:413f3e610295 draft default tip
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
author | azomics |
---|---|
date | Thu, 16 Jul 2020 08:00:52 -0400 |
parents | |
children |
rev | line source |
---|---|
1
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
1 #!/usr/bin/Rscript --vanilla |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
2 # Density Plot Module for Galaxy |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
3 # FlowDensity |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
4 ###################################################################### |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
5 # Copyright (c) 2016 Northrop Grumman. |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
6 # All rights reserved. |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
7 ###################################################################### |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
8 # |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
9 # Version 1 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
10 # Cristel Thomas |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
11 # |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
12 # |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
13 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
14 library(flowCore) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
15 library(flowDensity) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
16 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
17 generateGraph <- function(input, channels, output, plot_default=TRUE, |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
18 flag_pdf=FALSE) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
19 fcs <- read.FCS(input, transformation=F) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
20 ## marker names |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
21 markers <- colnames(fcs) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
22 print_markers <- as.vector(pData(parameters(fcs))$desc) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
23 # Update print_markers if the $P?S not in the FCS file |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
24 for (i in 1:length(print_markers)) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
25 if (is.na(print_markers[i])) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
26 print_markers[i] <- markers[i] |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
27 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
28 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
29 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
30 if (plot_default) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
31 channels <- c(grep(colnames(fcs), pattern="Forward scatter", ignore.case=TRUE), |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
32 grep(colnames(fcs), pattern="Side scatter", ignore.case=TRUE)) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
33 if (length(channels) == 0){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
34 channels <- c(grep(colnames(fcs), pattern="FSC"), |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
35 grep(colnames(fcs), pattern="SSC")) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
36 if (length(channels) > 2) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
37 #get first FSC and corresponding SSC |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
38 channels <- c(grep(colnames(fcs), pattern="FSC-A"), |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
39 grep(colnames(fcs), pattern="SSC-A")) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
40 if (length(channels) == 0) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
41 channels <- c(grep(colnames(fcs), pattern="FSC-H"), |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
42 grep(colnames(fcs), pattern="SSC-H")) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
43 if (length(channels) == 0) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
44 channels <- c(grep(colnames(fcs), pattern="FSC-W"), |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
45 grep(colnames(fcs), pattern="SSC-W")) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
46 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
47 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
48 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
49 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
50 if (length(channels) == 0) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
51 warning('No forward/side scatter channels found, no plots will be generated.') |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
52 quit(save = "no", status = 10, runLast = FALSE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
53 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
54 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
55 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
56 nb_markers <- length(channels) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
57 if (nb_markers == 1) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
58 warning('There is only one marker selected to plot.') |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
59 quit(save = "no", status = 12, runLast = FALSE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
60 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
61 for (j in nb_markers) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
62 if (channels[j] > length(markers)){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
63 warning('Please indicate markers between 1 and ', length(markers)) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
64 quit(save = "no", status = 10, runLast = FALSE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
65 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
66 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
67 nb_rows <- ceiling(((nb_markers-1)*nb_markers)/4) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
68 h <- 400 * nb_rows |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
69 if (flag_pdf) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
70 pdf(output, useDingbats=FALSE, onefile=TRUE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
71 par(mfrow=c(2,2)) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
72 for (m in 1:(nb_markers - 1)) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
73 for (n in (m+1):nb_markers) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
74 plotDens(fcs, c(channels[m],channels[n]), xlab = print_markers[channels[m]], ylab = print_markers[channels[n]]) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
75 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
76 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
77 dev.off() |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
78 } else { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
79 png(output, type="cairo", height=h, width=800) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
80 par(mfrow=c(nb_rows,2)) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
81 for (m in 1:(nb_markers - 1)) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
82 for (n in (m+1):nb_markers) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
83 plotDens(fcs, c(channels[m],channels[n]), xlab = print_markers[channels[m]], ylab = print_markers[channels[n]]) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
84 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
85 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
86 dev.off() |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
87 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
88 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
89 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
90 checkFCS <- function(input_file, channels, output_file, plot_default=TRUE, |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
91 flag_pdf=FALSE){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
92 isValid <- F |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
93 # Check file beginning matches FCS standard |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
94 tryCatch({ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
95 isValid <- isFCSfile(input_file) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
96 }, error = function(ex) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
97 print (paste(" ! Error in isFCSfile", ex)) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
98 }) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
99 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
100 if (isValid) { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
101 generateGraph(input_file, channels, output_file, plot_default, flag_pdf) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
102 } else { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
103 print (paste(input_file, "does not meet FCS standard")) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
104 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
105 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
106 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
107 args <- commandArgs(trailingOnly = TRUE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
108 channels <- list() |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
109 flag_default <- FALSE |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
110 flag_pdf <- FALSE |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
111 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
112 if (args[2]=="None" || args[2]== "" || args[2] == "i.e.:1,3,4") { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
113 flag_default <- TRUE |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
114 } else { |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
115 channels <- as.numeric(strsplit(args[2], ",")[[1]]) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
116 for (channel in channels){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
117 if (is.na(channel)){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
118 quit(save = "no", status = 11, runLast = FALSE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
119 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
120 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
121 if (length(channels) == 1){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
122 warning('Please indicate more than one marker to plot.') |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
123 quit(save = "no", status = 10, runLast = FALSE) |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
124 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
125 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
126 |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
127 if (args[4] == "PDF"){ |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
128 flag_pdf <- TRUE |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
129 } |
413f3e610295
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_scatterplot commit 82365bd2b90a783f84f497afbb29b435cd25cf9d"
azomics
parents:
diff
changeset
|
130 checkFCS(args[1], channels, args[3], flag_default, flag_pdf) |