#######################################################################################################################
library(rworldmap)
## Loading required package: sp
## ### Welcome to rworldmap ###
## For a short introduction type : vignette('rworldmap')
library(ncdf4)
##########################################################PACZKI#######################################################
newmap <- getMap(resolution = "low")
#####################################################
################ZDEFINIOWANIE PLIKU#################
ncin <- nc_open('~/SBCAPE.nc')
###################################################
######################################DLUGOSC I SZEROOSC###############################
lon <- ncvar_get(ncin, "lon")
lat <- ncvar_get(ncin, "lat", verbose = F)
dname="SBCAPE"
dunits <- ncatt_get(ncin, dname, "units")
t <- ncvar_get(ncin, "time")
tunits <- ncatt_get(ncin, "time", "units")
########################################################################################
tmp.array <- ncvar_get(ncin, "SBCAPE")
czas <- as.POSIXct(t, origin="1970-01-01", tz='GMT')
#maxm <- dim(czas)
m <- 10
#for (m in 1550:1600){
tmp.slice <- tmp.array[, , m]
grid <- expand.grid(lon = lon, lat = lat)
#png(filename=paste("pliki/d",m,".png", sep=""), width = 900, height = 650)
colfunc <- colorRampPalette(c("white","cyan","green","yellow","orange", "red", "#600000"))
filled.contour(lon, sort(lat), tmp.slice, color.palette=colfunc, zlim=c(0,5500), ylab="latitude", xlab="longitude",
plot.axes = {plot(newmap,
key.title = title(main = paste(format(czas[m],"%Y-%m-%d %H:%M"),paste("[",dunits$value,"]", sep=""))),
add=T, border="grey")+
contour(nlevels=3,labcex=0.85,sort(lon), sort(lat), tmp.slice, add=T, lwd=0.5, col = par("fg"))})

# dev.off()
# graphics.off()
print(format(czas[m],"%Y-%m-%d %H:%M"))
## [1] "1979-01-03 06:00"
#}
################################################################################
lonlat <- expand.grid(lon, sort(lat))
tmp.vec <- as.vector(tmp.slice)
lonlat$z <- tmp.vec
coordinates(lonlat) <- ~Var1+Var2
library(rasterVis)
## Loading required package: raster
## Loading required package: lattice
## Loading required package: latticeExtra
## Loading required package: RColorBrewer
## proba ze stworzeniem rastra:
X=lon
Y=lat
r <- raster(ncol=length(X)-1, nrow=length(Y)-1, xmn=X[1],
xmx=X[length(X)], ymn=Y[length(Y)], ymx=Y[1]) ## stworzenie obiektu rastrowego
r
## class : RasterLayer
## dimensions : 58, 107, 6206 (nrow, ncol, ncell)
## resolution : 0.75, 0.75 (x, y)
## extent : -27, 53.25, 31.5, 75 (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
#res(r) <- 0.75 # nadanie rozdzielczosci dla siatki
library(maptools)
## Checking rgeos availability: FALSE
## Note: when rgeos is not available, polygon geometry computations in maptools depend on gpclib,
## which has a restricted licence. It is disabled by default;
## to enable gpclib, type gpclibPermit()
europa <- readShapeSpatial("/home/bartosz/Dropbox/Dokumenty/projekty/isok/shp/europa.shp")
## Warning: use rgdal::readOGR or sf::st_read
## Warning: use rgdal::readOGR or sf::st_read
wgs84 = CRS('+init=epsg:4326')
#epsg2180 <- CRS('+init=epsg:2180')
#spplot(pl)
proj4string(lonlat) <- wgs84 # na wszelki wypadek gdyby nie bylo jasne...
proj4string(europa) <- wgs84 # j.w.
#wynik33 <- spTransform(lonlat, CRS("+init=epsg:2180")) # mozna ewentualnie transformowac do innego ukladu wspolrzednych:
warstwa <- rasterize(lonlat, r)
warstwa <- warstwa[[2]]
proj4string(warstwa) <- wgs84
# rozpoczecie rysowania
p <- spplot(warstwa, at=c(0,100,200,400,600), col.regions=c("white","yellow","lightgreen","green"),
scales=list(draw=TRUE), xlab="długość geograficzna", main="PRZYKŁADOWY TYTUŁ MAPY",
ylab="SZEROKOŚĆ GEOGRAFICZNA")
p <- p + layer(sp.polygons(europa, lwd=0.8, col='gray',fill=F))
p <- update(p+contourplot(warstwa, contour=T,
at=c(200,400,600), labels=T,lwd=0.8))
print(p)
