Hello All, Recently developed the code below for graphing patterns of chemotherapy administration. As someone just starting to use R in their work, I managed to figure out some parts of the code but needed help with others.
setwd("N:/Regimen Coding/0906/Plots Test") getwd() TestData <- structure(list(profile_key = c(1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3), line = c(1, 1, 2, 2, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1), instance = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2), drug = structure(c(1L, 2L, 1L, 2L, 3L, 1L, 2L, 3L, 4L, 1L, 2L, 2L, 1L, 3L, 4L, 3L), .Label = c("Drug A", "Drug B", "Drug C", "Drug D"), class = "factor"), pattern = structure(c(1L, 1L, 4L, 4L, 4L, 3L, 3L, 3L, 3L, 2L, 2L, 5L, 5L, 5L, 5L, 5L), .Label = c(" Begin (A), Begin (B), End (B), End (A)", " Begin (A, B), End (A, B)", " Begin (A, B), End (A, B), Begin (C), End (C), Begin (D), End (D)", " Begin (A, B, C), End (A, B), End (C)", "Begin (A, B, C), End (A, B, C), Begin (C), Begin (D), End (C, D)" ), class = "factor"), start_drug = c(0, 0.7143, 0, 0, 0, 0, 0, 14.5714, 25.4286, 0, 0, 0, 0, 0, 20, 18), stop_drug = c(21, 18, 20, 20, 36, 7.429, 7.429, 21.857, 231.286, 35.286, 35.286, 17, 17, 17, 32.8571, 32.8571)), .Names = c("profile_key", "line", "instance", "drug", "pattern", "start_drug", "stop_drug"), row.names = c(NA, -16L), class = "data.frame") TestData require(reshape) TestData <- melt(TestData, measure.vars = c("start_drug", "stop_drug")) TestData$drug <- factor(TestData$drug, levels = c("Drug D", "Drug C", "Drug B", "Drug A")) TestData$key_line <- with(TestData,paste(profile_key, line, sep = "")) TestData require(ggplot2) temp <- TestData TempData <- split(TestData, TestData$key_line) for(temp in TempData){ png(filename = paste("plot", unique(temp$key_line), ".png", sep = ""), width=600, height=300) p <- ggplot(temp, aes(value, drug, fill = factor(instance))) + geom_line(size = 6) + xlab("\n Time (Weeks)") + ylab("") + theme_bw() + opts(title = paste("Pattern = ", unique(temp$pattern), " \n (profile_key = ", unique(temp$profile_key), ", line = ", unique(temp$line), ") \n", sep = "")) + opts(legend.position="none") print(p) dev.off() } Would like to add lines for written comments to the bottom of each graph. These would look something like: cat( "Regimen 1: __________________________________________________________", "\n", "\n", "Regimen 2: __________________________________________________________", "\n", "\n", "Regimen 3: __________________________________________________________", "\n", "\n", "Regimen 4: __________________________________________________________", "\n", "\n", "Regimen 5: __________________________________________________________", "\n", "\n", "Rationale: __________________________________________________________", "\n", "\n", " __________________________________________________________", "\n", "\n", " __________________________________________________________", "\n", "\n", " __________________________________________________________", "\n", "\n", " __________________________________________________________", "\n", "\n", sep="" ) Not sure exactly how one ought to approach this in R. Can it be done in one step by adding to my ggplot2 code? Would it be better to do it using some sort of post processing? Is it possible to add the text by placing what would be the equivalent of a SAS put statement before the "dev.off()"? Thanks, Paul ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.