如果你看一下下面的图(Y轴),你会发现,比例尺为0
至0.20
.我有其他的直方图,其中范围是从0
到0.4
.我想让所有这些从一致0
到1
并显示y
轴0
到1
.
conne <- file("C:Aisdefined.bin","rb")
sd <- readBin(conne, numeric(), size=4, n=1440*720, signed=TRUE)
y <- t(matrix((data=sd), ncol=1440, nrow=720))
r <- raster(y)
f <- hist(y, breaks=10,main="sm")
f$counts <- f$counts/sum(f$counts)
dat <- data.frame(counts= f$counts,breaks = f$mids)
ggplot(dat, aes(x = breaks, y = counts, fill =counts)) +
geom_bar(stat = "identity",alpha = 0.8) +
xlab("Pearson correlation")+ ylab("Frequency") +
scale_x_continuous(breaks = seq(-1,1,0.250), labels = seq(-1,1,0.250)) +
ggtitle("2011") + theme(axis.title.x …
Run Code Online (Sandbox Code Playgroud) 我想要操作几个光栅文件,然后再次写入它们.
rasterfiles <- list.files("C:\\data", "*.envi", full.names = TRUE)
d1 <- overlay(stack(rasterfiles ),
fun=function(x) movingFun(x, fun=mean, n=3, na.rm=TRUE))
d2=unstack(d1)
Run Code Online (Sandbox Code Playgroud)
我很感激我们如何写d2
(栅格)
我有一个光栅文件,我想绘制为直方图,我使用hist()进行绘制,如下所示.但我想使用ggplot2进行绘图,以更好的方式绘制它.
conne <- file("C:\\fined.bin","rb")
r = raster(y)
hist(r, breaks=30, main="SMD_2010",
xlab="Pearson correlation", ylab="Frequency", xlim=c(-1,1))
Run Code Online (Sandbox Code Playgroud)
我试过这个:
qplot(rating, data=r, geom="histogram")
Run Code Online (Sandbox Code Playgroud)
错误:
ggplot2 doesn't know how to deal with data of class RasterLayer
Run Code Online (Sandbox Code Playgroud)
我需要绘制类似的东西:
我有一个netcdf
文件从中提取一些变量.提供者告诉我时间变量(A)是几小时以来1900-01-01 00:00:0.0
.我需要将此变量转换为正常日期并写入另一个txt文件.
f1 <- open.ncdf("C:\\Users\\data.nc")
# [1] "file C:\\Users\\data.nc has 3 dimensions:"
# [1] "longitude Size: 2"
# [1] "latitude Size: 2"
# [1] "time Size: 2920"
# [1] "file C:\\Users\\data.nc has 5 variables:"
# [1] "short stm[longitude,latitude,time] Longname:soil textre Missval:-32767"
Run Code Online (Sandbox Code Playgroud)
时间:
A <- get.var.ncdf(nc=f1,varid="time")
head(A)
## [1] 990552 990558 990564 990570 990576 990582
Run Code Online (Sandbox Code Playgroud)
另一个变量:
B1 <- get.var.ncdf(nc=f,varid="stm")
write.table(t(rbind(A,B1)),file="output.txt")
Run Code Online (Sandbox Code Playgroud)
在写入文本输出文件之前,我需要您的帮助将时间变量转换为正常日期.
我有一个二进制文件,昏暗的1440*720,等于1036800像素.
我想知道:
像素总数超过0.5的像素数中有多少像素?
这是我从二进制文件中读取的代码:
conne <- file("C:fined.bin","rb")
sd<- readBin(conne, numeric(), size=4, n=1440*720, signed=TRUE)
y<-t(matrix((data=sd), ncol=1440, nrow=720))
Run Code Online (Sandbox Code Playgroud) 我拥有的所有数据的平均值是0.2.我希望有更多的小数,否则如果我想在两个文件之间进行比较则没有意义.例
summary(f)
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
0.0 0.1 0.2 0.2 0.2 0.7 824982
Run Code Online (Sandbox Code Playgroud)
所以这里的平均值可以是0.29或0.21.任何想法如何知道这个?