[R-br] Aplicar msm intervalos para 2 rasters

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[R-br] Aplicar msm intervalos para 2 rasters

R-br mailing list
Bom dia pessoal!


Estou gerando mapas de temperaturas mínimas e máximas e gostaria de usar apenas 1 intervalo de valores/escala de cores que se aplique tanto a às mínimas quanto às máximas. 
O problema é que raster é S4 e o intervalo (que criei) é vetor.

A menor temperatura é 3 e a maior é 31.

Alguém pode me ajudar associar os valores do raster ao intervalo que criei?

cols<-colorRampPalette(c("royalblue","springgreen","yellow","orange","red"))(29)

intervalo = seq(from=3, to=31)

# criando o vetor de cores
cores1 <- cols[findInterval(TMin_masked, vec = intervalo)]

Error in as.double(x) : 
  cannot coerce type 'S4' to vector of type 'double'

Obrigado

Jackson

_______________________________________________
R-br mailing list
[hidden email]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.
Reply | Threaded
Open this post in threaded view
|

Re: [R-br] Aplicar msm intervalos para 2 rasters

R-br mailing list
?findInterval

Arguments

x

numeric.

is.numeric(TMin_masked)
class(TMin_masked)
is.numeric(TMin_masked[])

On Mon, Sep 17, 2018 at 9:08 AM Jackson Rodrigues via R-br <[hidden email]> wrote:
Bom dia pessoal!


Estou gerando mapas de temperaturas mínimas e máximas e gostaria de usar apenas 1 intervalo de valores/escala de cores que se aplique tanto a às mínimas quanto às máximas. 
O problema é que raster é S4 e o intervalo (que criei) é vetor.

A menor temperatura é 3 e a maior é 31.

Alguém pode me ajudar associar os valores do raster ao intervalo que criei?

cols<-colorRampPalette(c("royalblue","springgreen","yellow","orange","red"))(29)

intervalo = seq(from=3, to=31)

# criando o vetor de cores
cores1 <- cols[findInterval(TMin_masked, vec = intervalo)]

Error in as.double(x) : 
  cannot coerce type 'S4' to vector of type 'double'

Obrigado

Jackson
_______________________________________________
R-br mailing list
[hidden email]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.


--
###############################################################
##  Jônatan Dupont Tatsch
##  Professor do Departamento de Física
##  Centro de Ciências Exatas e Naturais (CCNE)
##  Universidade Federal de Santa Maria - UFSM
##  Faixa de Camobi, Prédio 13 - Campus UFSM - Santa Maria, RS, Brasil - 97105-900
##  Telefone: +55(55)33012083
###############################################################

_______________________________________________
R-br mailing list
[hidden email]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.
Reply | Threaded
Open this post in threaded view
|

Re: [R-br] Aplicar msm intervalos para 2 rasters

R-br mailing list
In reply to this post by R-br mailing list
Você pode resgatar o intervalo de valores de um raster usando o "cellStats", que já desconsidera os NA's:

ran <- cellStats(Tmin_masked, range)

Depois, pegue o mínimo e o máximo:

min <- min(ran)
max <- max(ran)

Greetings,
 -- Thiago V. dos Santos

Postdoctoral Research Fellow
Department of Climate and Space Science and Engineering
University of Michigan


On Monday, September 17, 2018, 8:09:12 AM EDT, Jackson Rodrigues via R-br <[hidden email]> wrote:


Bom dia pessoal!


Estou gerando mapas de temperaturas mínimas e máximas e gostaria de usar apenas 1 intervalo de valores/escala de cores que se aplique tanto a às mínimas quanto às máximas. 
O problema é que raster é S4 e o intervalo (que criei) é vetor.

A menor temperatura é 3 e a maior é 31.

Alguém pode me ajudar associar os valores do raster ao intervalo que criei?

cols<-colorRampPalette(c("royalblue","springgreen","yellow","orange","red"))(29)

intervalo = seq(from=3, to=31)

# criando o vetor de cores
cores1 <- cols[findInterval(TMin_masked, vec = intervalo)]

Error in as.double(x) : 
  cannot coerce type 'S4' to vector of type 'double'

Obrigado

Jackson
_______________________________________________
R-br mailing list
[hidden email]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.

_______________________________________________
R-br mailing list
[hidden email]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.