Date: Thu, 14 May 2026 13:25:00 %+0000
Mime-Version: 1.0 (Produced by Tiki)
Content-Type: application/x-tikiwiki;
pagename=Profile_r_heatmaps_test;
flags="";
author=xavi;
version=4;
lastmodified=1370937491;
author_id=188.165.197.214;
summary=removed%20sef;
hits=4517;
description="";
charset=utf-8
Content-Transfer-Encoding: binary
Below you should see a heatmap produced if everything (Tiki, R, PluginR, and the required R packages) are successfuly instaled and configured.
You can [tiki-editpage.php?page=HeatMaps Test|edit this page] to tweak some parameters by hand if you wish or needed.
{RR(loadandsave="1", echo="1", svg="1", pdf="1")}
##################################################################
### Chunk 1: Installation of easyHeatMap package and dependencies
##################################################################
##### NOTE:
# * You need a few packages: install the ones you are missing in the central server location for R packages.
# * In this example we install them with this params: lib="/usr/lib/R/site-library", repos="http://ftp.heanet.ie/mirrors/cran.r-project.org/"
# but adapt the server paths or urls to your specific case
# * Remember you can install packages:
# * from the terminal with some command like:
# R CMD INSTALL /home/foo/myPackage.tar.gz --library="/usr/lib/R/site-library"
# * or from an R session with something like:
# install.packages(pkgs="/home/foo/myPackage.tar.gz", lib="/usr/lib/R/site-library", repos="http://ftp.heanet.ie/mirrors/cran.r-project.org/")
cat("Cheacking dependencies:\n")
if (is.na(match("gplots", installed.packages()))) {
install.packages("gplots", repos="http://ftp.heanet.ie/mirrors/cran.r-project.org/")
} else {
cat(" Package gplots is already installed. OK.\n")
}
if (is.na(match("gtools", installed.packages()))) {
install.packages("gtools", repos="http://ftp.heanet.ie/mirrors/cran.r-project.org/")
} else {
cat(" Package gtools is already installed. OK.\n")
}
if (is.na(match("gdata", installed.packages()))) {
install.packages("gdata", repos="http://ftp.heanet.ie/mirrors/cran.r-project.org/")
} else {
cat(" Package gdata is already installed. OK.\n")
}
if (is.na(match("caTools", installed.packages()))) {
install.packages("caTools", repos="http://ftp.heanet.ie/mirrors/cran.r-project.org/")
} else {
cat(" Package caTools is already installed. OK.\n")
}
if (is.na(match("easyHeatMap", installed.packages()))) {
##### Install the package "easyHeatMap"
### for the time being you can fetch it from:
### https://ueb.ir.vhebron.net/files/easyHeatMap_1.18.tar.gz
### or
### http://dl.dropbox.com/u/24830595/easyHeatMap_1.18.tar.gz
cat("Attempting to download easyHeatMaps from http://ueb.ir.vhebron.net/files/easyHeatMap_1.18.tar.gz \n")
download.file("http://ueb.ir.vhebron.net/files/easyHeatMap_1.18.tar.gz", "./easyHeatMap_1.18.tar.gz")
cat("Attempting to install package easyHeatMaps \n")
install.packages(pkgs="easyHeatMap_1.18.tar.gz")
if (is.na(match("easyHeatMap", installed.packages()))) {
cat(" Something must have gone wrong, since the package didn't get successfully installed for some reason")
} else {
cat(" Package easyHeatMaps successfully installed. \n You can now proceed to create some HeatMaps")
}
} else {
cat(" Package easyHeatMap is already installed. OK.\n")
cat("\n You can now proceed to create some HeatMaps\n")
}
#######################################################################################
### Chunk 2: R commands to generate the required files server-side from BioConductor
### "expres.filtered.ALL.txt", "expres.selected.ALL.txt" and "colorsForColumns.txt"
#############################################################################################
##### A few packages are required from Bioconductor to produce HeatMaps with real data
# source("http://www.bioconductor.org/biocLite.R")
# biocLite("ALL", lib="/usr/lib/R/site-library")
# biocLite("genefilter", lib="/usr/lib/R/site-library")
# biocLite("hgu95av2.db", lib="/usr/lib/R/site-library")
# require(ALL)
# require(genefilter)
# require(hgu95av2.db)
# The ALL package contains a sample "ExpressionSet" with expression values form
# 128 samples and 12625 genes
# ("features =probesets, remembering there may be more than one probeset per gene")
# The dataset contains five different genotypes
# ALL1/AF4 BCR/ABL E2A/PBX1 NEG NUP-98 p15/p16
# 10 37 5 74 1 1
# The two example datasets keep only samples from the first and second groups
# To use a small number of genes two standard 'filtering approaches' are tested
# 1) Non specific filtering
# Only most variables are kept. Their expressions are stored in file "expres.filtered.ALL.txt"
# 2) Specific filtering
# We retain genes according to a test comparison between two groups.
# Their expressions are stored in file "expres.selected.ALL.txt"
#
#
# 1- Selecting genes by non-specific filtering
#
# require(ALL)
# data(ALL)
# require(genefilter)
# filtered095 <- nsFilter (ALL, var.cutoff=0.95)
# filtered099 <- nsFilter (ALL, var.cutoff=0.99)
# esetSel095<-filtered095$eset
# esetSel099<-filtered099$eset
# esetSel <- esetSel099
# esetSel<- esetSel[,pData(esetSel)$mol.bio %in% c("ALL1/AF4", "BCR/ABL")]
# colnames(exprs(esetSel))<- paste("X", colnames(exprs(esetSel)), sep="")
# write.exprs(esetSel, file="expres.filtered.ALL.txt")
#
# 2- Selecting genes by specific filtering
# require ("ALL")
# data("ALL")
# eset <- ALL[, ALL$mol.biol %in% c("BCR/ABL", "ALL1/AF4")]
# library("limma")
# f <- factor(as.character(eset$mol.biol))
# design <- model.matrix(~f)
# fit <- eBayes(lmFit(eset,design))
# selected05 <- p.adjust(fit$p.value[, 2]) <0.05
# selected01 <- p.adjust(fit$p.value[, 2]) <0.01
# esetSel <- eset [selected05, ]
# colnames(exprs(esetSel))<- paste("X", colnames(exprs(esetSel)), sep="")
# write.exprs(esetSel, file="expres.selected.ALL.txt")
# #
# # I per crear l'arxiu amb un color diferent per cada grup (basat en la columna "mol.biol")
# #
# write.table(cbind(paste("X",rownames(pData(esetSel)),sep=""),
# as.integer(pData(esetSel)$mol.biol)+1), sep="\t",
# row.names=FALSE, col.names=c("Column", "Group"), quote=FALSE,
# file="colorsForColumns.txt")
#
# #
# # Això és un exemple del que voldríem haver capturat a través del formulari
# # COMPTE perque, en aquesta versió, no considerem la possibilitat de treure
# # - Ni, com paràmetre, la possibilitat d'enviar els gràfics a un arxiu PDF
# # --> toPDF es deixa a FALSE
# # - Ni un arxiu amb els gens de cada cluster
# # --> numClusters es deixa a 0
# # - Ni un arxiu/gràfic amb els perfils de cada cluster
# # --> plotProfiles es deixa a FALSE
# #
#######################################################################################
### Chunk 3: Call to easyHeatMap functions
#############################################################################################
require(easyHeatMap)
download.file("http://ueb.ir.vhebron.net/dl220", "./expres.filtered.ALL.txt")
download.file("http://ueb.ir.vhebron.net/dl221", "./colorsForColumns.txt")
clustPar<-newClustPar(expres = NULL , # We'll give it a file attached to the tracker item
expresFileName ="expres.filtered.ALL",
# For a file "foo.txt", you have to indicate here "foo" (without extension)
fileType = "txt",
comparisonName = "ALL",
Title = "My Plot: BCR/ABL vs ALL1/AF4",
numClusters = 0, # Confirm that with zero nothing is done
plotProfiles=FALSE,
rowDistance = 'cor',
colDistance = 'euclidean',
RowVals = TRUE,
ColVals = TRUE,
escala = "row",
colorsSet = redblue(64), #colors,
colsForGroups = NULL,
colsForGroupsFileName="colorsForColumns",
densityInfo = "density",
cexForColumns = 0.8,
cexForRows = 0.8,
outputDir=".",
toPDF = FALSE,
)
# HeatMap generation
hm.ALL <- doHMAnalysis(clustPar)
# Now it is easy to change paramters and re-draw the heatmap
## We can use a different colorset
#clustPar$colorsSet <- heat.colors(64)
#hm.ALL <- doHMAnalysis(clustPar)
## We can change the distance function for rows and/or columns
#clustPar$rowDistance = 'cor'
#clustPar$colDistance = 'minkowski'
#hm.ALL <- doHMAnalysis(clustPar)
## We can use a different dataset
#clustPar$expresFileName="expres.selected.ALL"
#hm.ALL <- doHMAnalysis(clustPar)
#############################################################
### Optional change 1: PDF generation server side
#############################################################
# # Imprimim a pdf
# # COMPTE: els arxius s'anomenen per defecte
# # el del heatmap: paste(paste("HM", comparisonName, sep=""),"pdf", sep=".")
# # el dels perfils: paste(paste("plotProfiles", comparisonName, sep=""),"pdf", sep=".")
# # el dels gens als clusters: paste(paste("genesInClusters", comparisonName, sep=""),"txt", sep=".")
#
# # Això es important de cara a descarregar-los des de l'aplicatiu web
#
# clustPar$toPDF<-TRUE
# clustPar$plotProfiles <-TRUE
#
# hm.ALL <- doHMAnalysis(clustPar)
#############################################################
### Optional change 2: Changingthecolour palette
#############################################################
# clustPar$toPDF<-FALSE
# clustPar$plotProfiles <-FALSE
#
# # We can try with other colour palettes
# colores1 <- heat.colors(64) # Veure a RColorBrewer altres formes
# colores2 <- redblue(64) # Veure a RColorBrewer altres formes
# colores3 <- greenred(16) # Veure a RColorBrewer altres formes
# colores4 <- topo.colors(64) # Veure a RColorBrewer altres formes
# colores5 <- terrain.colors (64)
# colores6 <- colorpanel(36, "green", "white", "red")
# colores7 <- rainbow(36)
#
# clustPar$toPDF<-FALSE
# clustPar$plotProfiles <-FALSE
# clustPar$colorsSet <-colores2
# hm.ALL <- doHMAnalysis(clustPar)
{RR}