这是我在将直方图放入论文时注意到的事情。我注意到频率没有反映图表中显示的正确计数。为了仔细检查,我在 Excel 中尝试了这一点,结果证明使用 ggplot2 在 R 中显示的频率确实不正确。我注意到在我的语法中我应用了 xlim 函数。出于好奇,我删除了它以查看结果,然后 ggplot2 神奇地生成了正确的直方图!
这是我正在使用的代码:
ggplot(data, aes(x = variable) )+
geom_histogram(binwidth = 1) +
xlim(0, 40)
Run Code Online (Sandbox Code Playgroud)
生成正确直方图的图表是这样的:
hist(data$variable, breaks = seq(0, 40, 1), ylim = c(0,700))
Run Code Online (Sandbox Code Playgroud)
有人可以帮我吗?我花了很多时间试图让它发挥作用,但没有成功。任何帮助将不胜感激。
# example data
variable <- c(1L, 1L, 1L, 3L, 4L, 1L, 2L, 1L, 2L, 0L, 1L, 2L, 1L, 1L, 0L,
3L, 1L, 2L, 2L, 3L, 2L, 3L, 2L, 2L, 1L, 0L, 5L, 0L, 0L, 2L, 1L,
1L, 2L, 1L, 3L, 2L, 5L, 4L, 3L, 2L, 3L, …
Run Code Online (Sandbox Code Playgroud) Hello People,我正在尝试使用geom_line函数在R中创建折线图.我想为每一行指定特定颜色,但我无法这样做.当我尝试手动分配颜色时,我将颜色名称作为变量,而在图例中,它们按字母顺序排列.如果我不这样做,我根本就没有任何颜色.我也在网上环顾四周,发现应该有一个分组变量,通过它可以分配颜色.不幸的是,在我的数据集中,每列对应一个不同的变量.我不确定转置数据集是否有效,因为我试图在x轴上对这些变量绘制> 2000个值.我想我在这里错过了一些非常简单的东西.
ggplot(data=data, aes(xvar))+
geom_line(aes(y=var1))+
geom_line(aes(y=var2))+
geom_line(aes(y=var3))+
geom_line(aes(y=var4))
Run Code Online (Sandbox Code Playgroud)
如果之前已经回答过,请随时将其重定向到另一个部分.任何帮助将不胜感激.
我也可以手动完成而不使用ggplot2函数,其代码如下:
plot(data$Wavelength,data$var1,col="green")
par(new=T)
plot(data$wavelength,data$var2,col="red")
par(new=T)
plot(data$wavelength,data$var3,col="purple")
par(new=T)
plot(data$wavelength,data$var4,col="black")
par(new=F)
Run Code Online (Sandbox Code Playgroud)
我无法从 R 中的多边形获取质心。令人困惑的是,它过去可以工作,但突然停止工作了!这是一段代码:
polygon.centroids <- SpatialPointsDataFrame(gCentroid(polygon, byid = TRUE),
polygon@data, match.ID = FALSE)
Run Code Online (Sandbox Code Playgroud)
我还可以确认多边形数据的 proj4string 已经存在,如下所示:
proj4string: +proj=utm +zone=55 +south +ellps=GRS80 +units=m +no_defs
Run Code Online (Sandbox Code Playgroud)
我在执行质心代码时收到的错误消息如下:
Run Code Online (Sandbox Code Playgroud)Error in TopologyFunc(spgeom, id, byid, "rgeos_getcentroid") : no slot of name "proj4string" for this object of class "sf"
知道发生了什么事吗?如前所述,这段代码过去运行良好。
谢谢