Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.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 - Fatal编程技术网

R 二维直方图的平均线?

R 二维直方图的平均线?,r,R,我是“R”的一个新用户,有一个问题。我目前正在制作R上的二维直方图。材料不一定重要,但我如何在二维直方图上绘制平均线。我运行的代码如下所示: load("mydatabin.RData") # Color housekeeping library(RColorBrewer) rf <- colorRampPalette(rev(brewer.pal(11,'Spectral'))) r <- rf(32) # Create normally distributed data for

我是“R”的一个新用户,有一个问题。我目前正在制作R上的二维直方图。材料不一定重要,但我如何在二维直方图上绘制平均线。我运行的代码如下所示:

load("mydatabin.RData")
# Color housekeeping
library(RColorBrewer)
rf <- colorRampPalette(rev(brewer.pal(11,'Spectral')))
r <- rf(32)

# Create normally distributed data for plotting
x <- mydata$AGE
y <- mydata$BP
df <- data.frame(x,y)

# Plot
plot(df, pch=16, col='black', cex=0.5)
load(“mydatabin.RData”)
#色彩管理
图书馆(RColorBrewer)

rf您可以在
ggplot2
中使用
geom\u hline
geom\u vline
,将y/xintercept作为参数传递以绘制线。在您的情况下,该参数可以是一列的平均值,以绘制平均线。有关示例,请参见代码。 我还尝试了两种不同的方法来绘制二维直方图。虽然我去掉了colorBrewer,但你的看起来更好更精确

library(ggplot2)

# Create normally distributed data for plotting
x <- rnorm(10000)
y <- rnorm(10000)
df <- data.frame(x,y)

# stat_density2d way, with average lines
p1 <- ggplot(df,aes(x=x,y=y))+
  stat_density2d(aes(fill=..level..), geom="polygon") +
  scale_fill_gradient(low="navy", high="yellow") +
  # Here go average lines
  geom_hline(yintercept = mean(df$y), color = "red") +
  geom_vline(xintercept = mean(df$x), color = "red") +
  # Just to remove grid and set background color
  theme(line = element_blank(),
        panel.background = element_rect(fill = "navy"))
p1
库(ggplot2)
#创建用于打印的正态分布数据

x您可以在
ggplot2
中使用
geom\u hline
geom\u vline
,将y/xintercept作为参数传递以绘制线。在您的情况下,该参数可以是一列的平均值,以绘制平均线。有关示例,请参见代码。 我还尝试了两种不同的方法来绘制二维直方图。虽然我去掉了colorBrewer,但你的看起来更好更精确

library(ggplot2)

# Create normally distributed data for plotting
x <- rnorm(10000)
y <- rnorm(10000)
df <- data.frame(x,y)

# stat_density2d way, with average lines
p1 <- ggplot(df,aes(x=x,y=y))+
  stat_density2d(aes(fill=..level..), geom="polygon") +
  scale_fill_gradient(low="navy", high="yellow") +
  # Here go average lines
  geom_hline(yintercept = mean(df$y), color = "red") +
  geom_vline(xintercept = mean(df$x), color = "red") +
  # Just to remove grid and set background color
  theme(line = element_blank(),
        panel.background = element_rect(fill = "navy"))
p1
库(ggplot2)
#创建用于打印的正态分布数据

你所说的“平均线”到底是什么意思?这条线的属性是什么?我所说的平均线有点像这个链接的图片:''但只是2D直方图。就像我说的,我对R很陌生,所以我不确定它应该有什么属性。你说的“平均线”到底是什么意思?这条线的属性是什么?我所说的平均线有点像这个链接的图片:''但只是2D直方图。就像我说的,我对R很陌生,所以我不确定它应该有什么属性。非常感谢!!这真的很有帮助!!我是否可以更改x和y的标签,以显示我想要的任何标题?当然可以。这是ggplot2的基本功能,因此您可能需要阅读介绍,例如:在标题上,只需将代码
+xlab(“您的x轴标题”)+ylab(“Y轴标题”)+ggtitle(label=“YOLO”)
添加到ggplot作品中即可。阅读更多:再次感谢,我一直在尽可能多地阅读R。我的问题在于申请。谢谢你的帮助和教程,我一定会看的。非常感谢!!这真的很有帮助!!我是否可以更改x和y的标签,以显示我想要的任何标题?当然可以。这是ggplot2的基本功能,因此您可能需要阅读介绍,例如:在标题上,只需将代码
+xlab(“您的x轴标题”)+ylab(“Y轴标题”)+ggtitle(label=“YOLO”)
添加到ggplot作品中即可。阅读更多:再次感谢,我一直在尽可能多地阅读R。我的问题在于申请。谢谢你的帮助和教程,我一定会看的。
library(ggplot2)

# Create normally distributed data for plotting
x <- rnorm(10000)
y <- rnorm(10000)
df <- data.frame(x,y)

# stat_density2d way, with average lines
p1 <- ggplot(df,aes(x=x,y=y))+
  stat_density2d(aes(fill=..level..), geom="polygon") +
  scale_fill_gradient(low="navy", high="yellow") +
  # Here go average lines
  geom_hline(yintercept = mean(df$y), color = "red") +
  geom_vline(xintercept = mean(df$x), color = "red") +
  # Just to remove grid and set background color
  theme(line = element_blank(),
        panel.background = element_rect(fill = "navy"))
p1
# stat_bin2d way, with average lines
p2  <- ggplot(df, aes(x,y)) +
  stat_bin2d(bins=50) +
  scale_fill_gradient(low="navy", high="yellow") +
  # Here go average lines
  geom_hline(yintercept = mean(df$y), color = "red") +
  geom_vline(xintercept = mean(df$x), color = "red") +
  # Just to remove grid and set background color
  theme(line = element_blank(),
        panel.background = element_rect(fill = "navy"))
p2