rm(list = ls())
data = dget(url("https://git.io/vCTpG"))
library(ggplot2)
data1 <- data    
dim(data1)
## [1] 100   7
head(data1)
##   sampleB sampleA  ol labelA labelB facetA facetB
## 1    2409    2409 100 2409|B 2409|B      B      B
## 2    2409    2413   0 2413|A 2409|B      A      B
## 3    2409    2414   0 2414|A 2409|B      A      B
## 4    2409    2417   0 2417|C 2409|B      C      B
## 5    2409    2411   0 2411|A 2409|B      A      B
## 6    2409    2418   0 2418|B 2409|B      B      B
str(data1)
## 'data.frame':    100 obs. of  7 variables:
##  $ sampleB: int  2409 2409 2409 2409 2409 2409 2409 2409 2409 2409 ...
##  $ sampleA: int  2409 2413 2414 2417 2411 2418 2416 2412 2415 2410 ...
##  $ ol     : int  100 0 0 0 0 0 0 4 0 19 ...
##  $ labelA : Factor w/ 10 levels "2409|B","2410|A",..: 1 5 6 9 3 10 8 4 7 2 ...
##  $ labelB : Factor w/ 10 levels "2409|B","2410|A",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ facetA : Factor w/ 3 levels "A","B","C": 2 1 1 3 1 2 3 2 3 1 ...
##  $ facetB : Factor w/ 3 levels "A","B","C": 2 2 2 2 2 2 2 2 2 2 ...
data1$facetB <- factor(data1$facetB, levels = c("C", "B", "A"))
ggplot(data = data1, aes(x=labelA, y=labelB,fill=ol)) + 
  geom_tile(color="red", size=0.5) +
  scale_fill_gradient(low = "white", high = "red") + 
  theme(legend.position = "none") +
  theme(axis.text.x = element_text(angle = 90, hjust = 1),
        panel.spacing = unit(0.1, "cm")) + 
 facet_grid(facetB ~ facetA, scales = "free")

ggsave(filename = paste0(Sys.Date(),"-","-heatmap.tif"), 
       plot = last_plot(), device = "tiff", 
       width =10, height = 10, units = "cm",
       dpi = 300, limitsize = TRUE, compression = "lzw")