R:shapefile 上的梯度图

2023-11-23

我目前有一个英国的形状文件,并绘制了英国不同地区的物种数量。到目前为止,我刚刚绘制了 3 个物种种群水平,并将它们着色为红色=高、橙色=中、绿色=低。但我想做的是绘制一个渐变图,而不是仅受 3 种颜色的限制。 到目前为止,我有一个名为“计数”的表,其中将区域作为列名称,然后是下面每个区域的物种计数。我的最低计数为 0,最高计数约为 2500,并且计数中的区域与我的 shapefile 中的区域相匹配。我有一个函数可以根据您自己输入的级别确定高、中、低

    High<-colnames(Count)[which(Count>'input value here')]

然后将它们绘制到 shapefile 上,如下所示:

    plot(ukmap[(ukmap$Region %in% High),],col='red',add=T)

不幸的是,我无法真正安装任何软件包,我正在考虑使用 colorRamp,但我不太确定该怎么做?

编辑:我的数据看起来像这样

      Wales   Midlands North Scotland South East South West
 1        551       32      124        1         49         28
 3         23       99      291      152        164        107
 4          1        7       17       11         21         14
 7        192       32       12        0          1          9
 9         98       97        5        1         21          0

第一列只是一个代表物种的数字,目前我有一个函数可以将计数绘制到英国形状文件上,但基于高、中和低的边界。上面的数据没有附加到我的形状文件中。然后,我循环遍历数据集的每一行(物种),并为每一行(物种)绘制一个新地图。


好吧,我咬一下。我不会使用基础 R 因为plot对我来说太难理解了,所以我们将使用ggplot2.

# UK shapefile found via http://www.gadm.org/download
uk.url <- "http://www.filefactory.com/file/s3dz3jt3vr/n/GBR_adm_zip"

# replace following with your working directory - no trailing slash
work.dir <- "C:/Temp/r.temp/gb_map"

# the full file path for storing file
file.loc <- paste0(work.dir, "/uk.zip")

download.file (uk.url, destfile = file.loc, mode = "wb")
unzip(file.loc, exdir = work.dir)

# open the shapefile
require(rgdal)
require(ggplot2)
uk <- readOGR(work.dir, layer = "GBR_adm2")

# use the NAME_2 field (representing counties) to create data frame
uk.map <- fortify(uk, region = "NAME_2")

# create fake count data...
uk.map$count <- round(runif(nrow(uk.map), 0, 2500), 0)

# quick visual check
ggplot(uk.map, aes(x = long, y = lat, group = group, fill = count)) +
    geom_polygon(colour = "black", size = 0.5, aes(group = group)) +
    theme()

这会生成以下输出,可能与您需要的类似。

screenshot

请注意,在这种情况下我们没有明确指定梯度 - 我们只是将其保留为ggplot。如果您希望指定这些详细信息,这是可能的,但会涉及更多。如果您沿着这条路线走,您应该在中创建另一列uk.map使用以下方法将每个计数分配到(例如)10 个 bin 之一cut功能。这uk.map数据框如下所示:

> str(uk.map)
'data.frame':   427339 obs. of  8 variables:
 $ long : num  -2.05 -2.05 -2.05 -2.05 -2.05 ...
 $ lat  : num  57.2 57.2 57.2 57.2 57.2 ...
 $ order: int  1 2 3 4 5 6 7 8 9 10 ...
 $ hole : logi  FALSE FALSE FALSE FALSE FALSE FALSE ...
 $ piece: Factor w/ 234 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ group: Factor w/ 1136 levels "Aberdeen.1","Aberdeenshire.1",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ id   : chr  "Aberdeen" "Aberdeen" "Aberdeen" "Aberdeen" ...
 $ count: num  1549 1375 433 427 1282 ...
> 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R:shapefile 上的梯度图 的相关文章

  • decompose() 的周期太少[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 错误看起来像这样 decompose
  • 基于服务器中的条件逻辑呈现闪亮的用户输入

    我正在尝试设置一个闪亮的导航栏面板页面 其中用户控制我根据一组单选按钮中所做的初始选择来显示更改 我直接在 ui 中渲染单选按钮 然后在 Server r 中的 观察到的 逻辑控制结构内构建条件控件 弹出错误是因为我的初始 if 语句计算结
  • ggplot2可以在一个图例中分别控制点大小和线大小(线宽)吗?

    一个使用的例子ggplot2绘制数据点组和连接每组均值的线 并使用相同的映射aes for shape并为linetype p lt ggplot mtcars aes gear mpg shape factor cyl linetype
  • 更改焦点上可点击的 TextView 颜色并点击?

    我有一个可点击的 TextView 我想给它一些颜色 但我不知道怎么办 以下是我正在使用的两个文件中的相关代码片段 TextView title new TextView this title setLayoutParams new Lay
  • 基于另一个数据集获取数据集的子集

    假设我有一个数据集 即 dat1 ID block plot SPID TotHeight 1 1 1 4 44 5 2 1 1 4 51 3 1 1 4 28 7 4 1 1 4 24 5 5 1 1 4 27 3 6 1 1 4 20
  • 如何在 ggplot 中保持配色方案,同时删除每个图中未使用的级别?

    我想比较一个图中的数据的一些子组和另一图中的一些其他子组 如果我绘制一个图 其中绘制了所有子组 那么这个数字将是巨大的 并且每个单独的比较都会变得困难 我认为如果给定的子组在所有图中都具有相同的颜色 这对读者来说会更有意义 这是我尝试过的两
  • LDA with topicmodels,如何查看不同文档属于哪些主题?

    我正在使用 topicmodels 包中的 LDA 我已经在大约 30 000 个文档上运行它 获取了 30 个主题 并获得了主题的前 10 个单词 它们看起来非常好 但我想看看哪些文档属于哪个主题的概率最高 我该怎么做 myCorpus
  • 删除ggplot2中的负图区域[重复]

    这个问题在这里已经有答案了 如何删除 ggplot2 中 x 轴和 y 轴下方的绘图区域 请参见下面的示例 我尝试了几个主题元素 panel border panel margin plot margin 但没有任何运气 p lt ggpl
  • R中的一元加/减是什么?

    来自 R 的详细信息部分Syntax http stat ethz ch R manual R patched library base html Syntax html帮助页面 定义了以下一元和二元运算符 他们被列出 在优先级组中 从最高
  • 如何删除箱线图上的刻度线

    我试图从箱线图中删除 x 轴刻度线 但保留与刻度线关联的标签 这在基础 R 中可能吗 colors lt c lightskyblue3 gray78 gold1 wheat1 boxplot avgscore module data mi
  • 正则表达式字符串中第一个和最后一个非点的位置

    我希望找到字符串的第一个和最后一个非点元素的位置 理想情况下我想这样做regex在基地R 我已经写过R解决问题的代码 不过 我对一个感兴趣regex解决方案 感谢您的任何建议 这是一个示例数据集和R代码以获得所需的结果 此代码拆分字符串并使
  • 使用 purrr 迭代替换数据帧列中的字符串

    我想用purrr使用以下命令在数据框列上迭代运行多个字符串替换gsub 功能 这是示例数据框 df lt data frame Year 2019 Text c rep a aa 5 rep a bb 3 rep a cc 2 gt df
  • 选择 R 中的数据表中隐藏时(在绿色加号下方)列的显示顺序

    Context 使用 DataTables 库制作交互式表格时 当屏幕宽度对于列的数量和宽度来说太窄时 列将隐藏在绿色 号下 我有一个非常宽的表格 有 20 多列 其中一些内容非常冗长 因此某些列在所有屏幕宽度下总是隐藏的 每次隐藏新列时
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr
  • kernlab 中 SVM 训练之外的核矩阵计算

    我正在开发一种新算法 该算法可以生成修改后的核矩阵以用于 SVM 训练 但遇到了一个奇怪的问题 出于测试目的 我比较了使用 kernelMatrix 接口和普通内核接口学习的 SVM 模型 例如 Model with kernelMatri
  • 更改自动插入 tkinter 小部件的文本颜色

    我有一个文本框小部件 其中插入了三条消息 一条是开始消息 一条是结束消息 一条是在 单位 被摧毁时发出警报的消息 我希望开始和结束消息是黑色的 但被毁坏的消息 参见我在代码中评论的位置 插入小部件时颜色为红色 我不太确定如何去做这件事 我看
  • 在 R 中使用 lapply 绘制多个数据帧

    我正在尝试使用 lapply 函数绘制多个数据帧 每个数据帧一个图 但是尽管有关此主题的所有帖子我都找不到答案 因为我不断收到错误 图的输出列表为空 我的数据结构如下 df1 lt mtcars gt group by cyl gt tal
  • 更改闪亮 R 中的默认浏览器

    我在 RStudio 中使用 01 hello 虽然在 IE 中默认打开程序时它不会显示直方图 但即使在 Chrome 中 滑块也不起作用 我无法滑动条形图并看到直方图中的变化 如何更改 R 中的默认浏览器 以便闪亮启动 Chrome 而不
  • 如何改变Python中特定打印字母的颜色?

    我正在尝试做一个简短的测验 并且想将错误答案显示为红色 欢迎来到我的测验 您想开始吗 是的 祝你好运 法国的首都是哪里 法国 随机答案不正确的答案 我正在尝试将其显示为红色 我的代码是 print Welcome to my Quiz be
  • 如何仅删除单括号并保留配对的括号

    你好 我亲爱的老师 R 用户朋友们 我最近开始认真学习正则表达式 最近我遇到了一种情况 我们只想保留配对括号 并省略未配对的 这是我的样本数据 structure list t1 c Book Pg 1 Website Online Jou

随机推荐

  • 确保所有 TThread.Queue 方法在线程自毁之前完成

    我发现如果一个方法排队TThread Queue调用一个方法 该方法调用TApplication WndProc e g ShowMessage 然后允许在原始方法完成之前运行后续排队的方法 更糟糕的是 它们似乎不是按 FIFO 顺序调用的
  • Ruby Net::FTP 超时线程

    我试图通过使用线程 FTP 连接来加速多个 FTP 下载 我的问题是我总是有线程挂起 我正在寻找一种干净的方法来告诉 FTP 它需要重试 ftp 事务 或者至少知道 FTP 连接何时挂起 在下面的代码中 我对 5 6 个单独的 FTP 连接
  • 有没有办法检查脚本是否在 dart vm 或 dart2js 中运行?

    有没有办法检查脚本是否在 dart vm 或 dart2js 中运行 也许使用镜像API 没有official据我所知 其目的是 出于所有实际目的 您不必知道您是在本机运行还是编译为 JavaScript 也就是说 您可以使用的技巧很少 最
  • 如何从 PHP 字符串中提取标题标签?

    如何从包含大量 HTML 的字符串中提取所有文本 h1 h2 etc标签到一个新变量 我想捕获这些元素中的所有文本并将它们作为逗号分隔值存储在新变量中 是否可以使用preg match all 首先 您需要使用 tidy 清理 HTML 示
  • gitlab 没有遥控器/原点/HEAD

    我对 git 还很陌生 但我一直在我设置的远程服务器上使用它 并且我很确定我了解基础知识 我刚刚设置了 gitlab 并将我的一些代码推送到了它的一个新项目中 我所做的是 获取目录中的所有代码 git init git 添加 git com
  • 如何使用SignalR向特定用户发送数据?

    我有一个通过 SignalR 接收消息的客户端 它工作得很好 但更像是广播 我希望能够向特定客户发送消息 在客户端 我有一个 userId 并且像这样设置连接 const userId getUserId if userId const b
  • 什么是自然语言处理中的分块器?

    有谁知道文本处理上下文中的分块器是什么以及它的用途是什么 根据这些幻灯片 分块是解析的一种替代方法 它提供了句子的部分句法结构 具有有限的树深度 而不是完整的解析 它比完整解析受到更多限制 但在提取或忽略信息时就足够了 因此被多次使用 因为
  • 通过车把部分传递变量

    我目前正在express js 应用程序中处理handlebars js 为了保持模块化 我将所有模板拆分为部分模板 我的问题 我找不到通过部分调用传递变量的方法 假设我有一个看起来像这样的部分 div h1 Headline h1 p L
  • 为什么 SwitchPreference 在从打开切换到关闭时不显示动画,反之亦然?

    我做了一个SwitchPreference对于我的应用程序preferences 问题是SwitchPreference当我在打开和关闭之间切换时 它没有显示动画 而是突然猛烈地切换 Here s preferences xml文件的代码
  • 有关 Android 的 Movie 类的信息

    我正在尝试展示一个 gif 动画 顺便说一句 我正在与班级一起做Movie 但 Android 开发者页面不授予有关这些方法的信息 如何调整 gif 的大小以适应布局 提前致谢 我一直在尝试使用做同样的事情 显示动画 GIF this me
  • NumPy有相当于Matlab缓冲区的功能吗?

    我看到有一个array split and split methods但是 当您必须分割长度不是块大小整数倍的数组时 这些并不是很方便 此外 这些方法的输入是切片数量而不是切片大小 我需要一些更像 Matlab 的东西buffer更适合信号
  • mysql中的数组变量

    MySQL 脚本中有没有办法声明一个数组 或任何集合 并循环它来执行操作 例如 SET myArrayOfValue 2 5 2 23 6 for each value in myArrayOfValue INSERT INTO EXEMP
  • 如何在谷歌地图v2的默认标记中绘制文本

    我想在 Google 地图 v2 的默认标记中绘制文本 我通过从可绘制图像中获取自己的图像来完成此操作 但如何在默认标记中更改它 我的代码是 marker icon BitmapDescriptorFactory fromBitmap dr
  • Excel 过滤功能 - 选择某些列作为输出

    我想对多个列应用过滤器函数 范围从A G并且只有列B D在输出中 我该怎么做 例如 FILTER A 1 G 7 K 1 K 7 K 1 结果是匹配条件的行的溢出数组 但输出仍然有 7 列 A G 我可以选择只输出Column吗B D TL
  • ImageMagick.NET 异常

    我得到了FileNotFoundException当尝试使用 ImageMagick NET 时 取自源代码中的 bin 文件夹 http imagemagick codeplex com releases view 30302 我得到的确
  • chrome.storage 设置\获取说明

    我想在我的扩展中保存信息 我用Chrome storage sync这样做 但是当我保存后立即阅读时 我无法正确检索该值 大概是做了什么蠢事吧 我尝试清除本地存储chrome storage sync clear但这没有帮助 我的保存功能是
  • 使用 .htaccess 密码保护单个文件

    我尝试使用 htaccess 对单个文件进行密码保护 但是 当访问该文件时 浏览器只会重定向到网站的主页 我的 webroot 上有 htpasswd 我的 htaccess 文件如下
  • 在 SQL Server 2005 中,如何设置整数列以确保值大于 0?

    这可能是一个简单的答案 但我找不到它 我有一个包含整数列的表 我想确保插入行时该列中的值大于零 我可以在代码方面执行此操作 但认为最好在桌面上强制执行它 Thanks 我上次的评论是错误的 现在一切都很好 您可以在列上使用检查约束 IIRC
  • 隐藏 ag-grid 中的列名称?

    是否可以隐藏 ag grid 中的第一行 列定义 我只想显示表中的数据并排除列标题 你可以加headerHeight组件上的属性并将其设置为 0 这将隐藏标头 就像这样
  • R:shapefile 上的梯度图

    我目前有一个英国的形状文件 并绘制了英国不同地区的物种数量 到目前为止 我刚刚绘制了 3 个物种种群水平 并将它们着色为红色 高 橙色 中 绿色 低 但我想做的是绘制一个渐变图 而不是仅受 3 种颜色的限制 到目前为止 我有一个名为 计数