Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在r中的热图单元格中显示数值单元格值_R_Ggplot2_Label_Heatmap - Fatal编程技术网

如何在r中的热图单元格中显示数值单元格值

如何在r中的热图单元格中显示数值单元格值,r,ggplot2,label,heatmap,R,Ggplot2,Label,Heatmap,我试图创建一个热图,显示驱动每个单元格中颜色的值。如果一个单元格是深蓝色的,因为它有5个观察值,我想看到该单元格中的数字5 (目的是建立一个信用评级迁移矩阵,其中一个轴是今年的信用评级,另一个轴是去年的信用评级。输入是一个数据框架,其中每行是一家公司的一个观察值,该公司今年的信用评级,以及去年的it信用评级。该矩阵显示哪些公司的信用评级稳定。)在两年的时间里,被分配到较低的评级,并转移到较高的评级) 这是数据和代码 require(ggplot2) # Create a dataframe m

我试图创建一个热图,显示驱动每个单元格中颜色的值。如果一个单元格是深蓝色的,因为它有5个观察值,我想看到该单元格中的数字5

(目的是建立一个信用评级迁移矩阵,其中一个轴是今年的信用评级,另一个轴是去年的信用评级。输入是一个数据框架,其中每行是一家公司的一个观察值,该公司今年的信用评级,以及去年的it信用评级。该矩阵显示哪些公司的信用评级稳定。)在两年的时间里,被分配到较低的评级,并转移到较高的评级)

这是数据和代码

require(ggplot2)

# Create a dataframe mm where each row is one observation for one company, 
# the company's credit rating this year, and it credit rating last year.  A company ID is 
# provided.  


mm<-data.frame(
    CompamyID = c(1:14),
    CurrentYear =c("Aaa","Aa","B","Baa","C","Aaa","Aa","B","Baa","C","Aa","B","Baa","C"),
    PreviousYear=c("Aaa","Aa","B","Baa","Aa","B","Baa","C","C","Aaa","Aa","B","Baa","C"),
    Count=rep(1,14)
)

# Create heatmap and show the number of observations in each cell.  
# I have used label= # sum() for illustration but it is wrong.  

ggplot(data=mm, aes(x = mm$CurrentYear, y=mm$PreviousYear)) + 
    geom_bin2d() + 
    geom_text(aes(fill = mm$Count, label = sum(mm$Count)))+
    scale_x_discrete(limits =c( "Aaa", "Aa", "A", "Baa", "Ba", "B", "Caa", "Ca", "C")) +
    scale_y_discrete(limits=c("C","Ca","Caa","B","Ba", "Baa", "A", "Aa", "Aaa")) + 
    scale_fill_gradient2() + 
    theme(panel.grid.major = element_line( colour ="white", size = 0.5 ))+ 
    theme(panel.grid.minor = element_line( colour ="black", linetype ="dashed", size = 0.5)) +
    theme(panel.background = element_rect( colour ="black", fill ="white",size = 1.0 )) +
    ggtitle("MIGRATION MATRIX USING geom_bin2d()") +
    xlab("Current Year") +
    ylab("Previous Year")         
require(ggplot2)
#创建一个数据框mm,其中每行是一个公司的一个观察值,
#该公司今年的信用评级和去年的it信用评级
#提供。

mm我会使用
stat\u bin2d
so
ggplot2
内部计算计数,并以
.count..
的名称提供它们

ggplot(data=mm, aes(x = mm$CurrentYear, y=mm$PreviousYear)) + 
  geom_bin2d() + 
  stat_bin2d(geom="text", aes(label=..count..))+
  scale_x_discrete(limits =c( "Aaa", "Aa", "A", "Baa", "Ba", "B", "Caa", "Ca", "C")) +
  scale_y_discrete(limits=c("C","Ca","Caa","B","Ba", "Baa", "A", "Aa", "Aaa")) + 
  scale_fill_gradient2() + 
  theme(panel.grid.major = element_line( colour ="white", size = 0.5 ))+ 
  theme(panel.grid.minor = element_line( colour ="black", linetype ="dashed", size = 0.5)) +
  theme(panel.background = element_rect( colour ="black", fill ="white",size = 1.0 )) +
  ggtitle("MIGRATION MATRIX USING geom_bin2d()") +
  xlab("Current Year") +
  ylab("Previous Year")

我希望这能有所帮助。

如果您对此表示感谢,请不要忘记投票并接受答案。R3.1.1有没有类似于
stat\u bin2d
的东西?我想获得它的独立性,因为我收到了警告
>install.packages(“stat\u bin2d”)将包安装到“/usr/local/lib/R/site library”中(由于“lib”未指定)警告消息:包“stat\u bin2d”不可用(适用于R版本3.3.1)