在基本图形中它只是:
image(x, col=c("red","blue")[1+(x>50)] )
Run Code Online (Sandbox Code Playgroud)
要添加网格使用:
grid(nx=100, ny=100, lty=1)
Run Code Online (Sandbox Code Playgroud)
我不能 100% 确定您的数据是否在矩阵中并且您想要热图类型图。或者,如果它采用其他形式,并且您想要像您链接到的散点图一样。我只是假设您的数据如所描述的那样并且您想要一个热图。我想它是这样的:
x=abs(rnorm(100*100,50,25))
x=matrix(x,nrow=100)
Run Code Online (Sandbox Code Playgroud)
所以我会重塑数据,使其看起来像 xy 坐标:
require(reshape2)
require(ggplot2)
x1=melt(x)
names(x1)=c("x","y","color")
Run Code Online (Sandbox Code Playgroud)
然后我会将我的截止值变成一个因素:
x1$color=factor(x1$color>50)
levels(x1$color)=c("lessthan50","more than 50")
Run Code Online (Sandbox Code Playgroud)
然后调用 ggplot:
qplot(x, y, fill=color, data=x1,geom='tile')
Run Code Online (Sandbox Code Playgroud)
