Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
更改tmap map R中数据类别的打印顺序_R_Sp_Tmap - Fatal编程技术网

更改tmap map R中数据类别的打印顺序

更改tmap map R中数据类别的打印顺序,r,sp,tmap,R,Sp,Tmap,我正在使用tmap包在R中绘制一些空间数据。我在tm_dots函数中定义中断和打印颜色。我希望能够定义类别的绘图顺序,以便它们由类别定义(最高类别在顶部,第二高类别在其下方,等等)。我需要能够清楚地看到最高分类点在哪里。我知道这可以通过多个空间点数据帧来实现,但还有其他不那么笨重的方法吗?下面是使用meuse数据的示例。我把这些点做得很大,这样它们就重叠了。因此,理想情况下,在绘图中,绘图顺序是:蓝色、绿色、橙色、红色 libary(tmap) library(sp) data("meuse"

我正在使用
tmap
包在R中绘制一些空间数据。我在
tm_dots
函数中定义中断和打印颜色。我希望能够定义类别的绘图顺序,以便它们由类别定义(最高类别在顶部,第二高类别在其下方,等等)。我需要能够清楚地看到最高分类点在哪里。我知道这可以通过多个空间点数据帧来实现,但还有其他不那么笨重的方法吗?下面是使用meuse数据的示例。我把这些点做得很大,这样它们就重叠了。因此,理想情况下,在绘图中,绘图顺序是:蓝色、绿色、橙色、红色

libary(tmap)
library(sp)

data("meuse")

coordinates(meuse) <- c("x","y")

tm_layout() +
  tm_shape(meuse) + tm_dots("cadmium", breaks = c(1,2,3,4,Inf), palette = "-Spectral", auto.palette.mapping = FALSE,
                            size = 1) + 
  tm_legend(legend.outside = TRUE)
libary(tmap)
图书馆(sp)
数据(“meuse”)

坐标(meuse)显示默认的打印顺序是原始数据帧行顺序。为了使类别以正确的顺序绘制,我为类别创建了一个数字因子变量,并按它对原始数据帧进行排序

libary(tmap)
library(sp)
library(dplyr)

data("meuse")

meuse <- meuse %>% 
         mutate(cat = base::cut(cadmium, breaks = c(-Inf,1,2,3,4,Inf), 
                         labels = c(1,2,3,4,5))) %>% 
         arrange(cat)

coordinates(meuse) <- c("x","y")

tm_layout() +
  tm_shape(meuse) + tm_dots("cadmium", breaks = c(1,2,3,4,Inf), palette = "-Spectral", auto.palette.mapping = FALSE,
                            size = 1) + 
  tm_legend(legend.outside = TRUE)
libary(tmap)
图书馆(sp)
图书馆(dplyr)
数据(“meuse”)
默兹%
突变(cat=base::cut(镉,断裂=c(-Inf,1,2,3,4,Inf),
标签=c(1,2,3,4,5))%>%
安排(猫)
坐标(默兹)