本篇文章為大家展示了R語(yǔ)言ggplot2怎樣畫(huà)帶有空白格的熱圖,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
在石柱土家族等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需定制設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),營(yíng)銷型網(wǎng)站,外貿(mào)網(wǎng)站建設(shè),石柱土家族網(wǎng)站建設(shè)費(fèi)用合理。
之前有人在公眾號(hào)留言問(wèn)文章開(kāi)頭這幅圖如何實(shí)現(xiàn),下面的B圖是折線圖加柱形圖,相對(duì)比較容易實(shí)現(xiàn),上面的A圖稍微有點(diǎn)復(fù)雜,我想到的辦法是拼圖,圖A可以看成三個(gè)熱圖,然后加一個(gè)堆積柱形圖,最后將四個(gè)圖組合到一起。那就按照這個(gè)思路試一下看能不能實(shí)現(xiàn)。
這個(gè)熱圖和常規(guī)的還稍微有點(diǎn)不太一樣,可以簡(jiǎn)單的理解為帶有缺失值的熱圖,缺失值是空白格,其他值分別填充顏色。
那我們就按照這個(gè)思路來(lái)構(gòu)造數(shù)據(jù)
將數(shù)據(jù)集按照以上格式整理好,存儲(chǔ)在csv文件中。
df<-read.csv("example_data/ggplot2_heatmap.csv",header=T)
df1<-reshape2::melt(df)
library(ggplot2)
ggplot(df1,aes(x=variable,y=A))+
geom_tile(aes(fill=value),color="black")+
theme(panel.background = element_blank())
df1$value1<-ifelse(is.na(df1$value),0,df1$value)
df1$value1<-as.factor(df1$value1)
summary(df1)
ggplot(df1,aes(x=variable,y=A))+
geom_tile(aes(fill=value1),color="black")+
scale_fill_manual(values = c("white","red","red2","red4"))+
theme(panel.background = element_blank())
這樣是不是和文章開(kāi)頭提到的圖有點(diǎn)像了。
df1$A<-factor(df1$A,levels = rev(df$A))
ggplot(df1,aes(x=variable,y=A))+
geom_tile(aes(fill=value1),color="black")+
scale_fill_manual(values = c("white","red","red2","red4"))+
theme(panel.background = element_blank())
ggplot(df1,aes(x=variable,y=A))+
geom_tile(aes(fill=value1),color="black")+
scale_fill_manual(values = c("white","orangered","red2","red4"))+
scale_x_discrete(position = "top")+
theme(panel.background = element_blank(),
axis.title = element_blank(),
axis.ticks = element_blank(),
axis.text.x.top = element_text(angle = 90,
hjust = 0,
vjust= 0.5),
plot.title = element_text(hjust=0.5),
legend.position = "none")+
labs(title = "Plant growth and development")
ggplot(df1,aes(x=variable,y=A))+
geom_tile(aes(fill=value1),color="black")+
scale_fill_manual(values = c("white","orangered","red2","red4"))+
scale_x_discrete(position = "top")+
theme(panel.background = element_blank(),
axis.title = element_blank(),
axis.ticks = element_blank(),
axis.text.x.top = element_text(angle = 90,
hjust = 0,
vjust= 0.5),
plot.title = element_text(hjust=0.5),
legend.position = "none")+
labs(title = "Plant growth and development")+
geom_text(aes(label=value1,color=value1))+
scale_color_manual(values = c("white","black","black","black"))
上述內(nèi)容就是R語(yǔ)言ggplot2怎樣畫(huà)帶有空白格的熱圖,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。