使用 ggplot2 绘制 SpatialLinesDataFrame

2024-02-28

我想绘制一个 SpatialLinesDataFrame 调用ggplot有功能fortify。我使用时遇到的问题fortify是我的观点之间出现了不受欢迎的线条。我觉得和剧情顺序有关系

这是我的数据的示例:

Coords <- matrix(c(4095215,2303286,4095275,2303226,4095275,2303196,4095395,2303076,
4095425,2303076,4095485,2303016,4095485,2302896,4095545,2302836,4095545,2302806,
4095575,2302776,4095575,2302746,4095635,2302686,4095635,2302656,4095665,2302626,
4095665,2302596,4095695,2302566,4095695,2302536,4095725,2302506,4095725,2302476,
4095755,2302446,4095785,2302446,4095815,2302476,4095845,2302446,4095875,2302446,
4095965,2302356,4095965,2302296,4096055,2302206,4096055,2302146,4096085,2302116,
4096085,2302086,4096205,2301966,4096205,2301906,4096295,2301816,4096295,2301666,
4096325,2301636,4096325,2301516,4096385,2301456,4096385,2301426,4096445,2301366,
4096415,2301336,4096415,2301276,4096445,2301246,4096445,2301156,4096385,2301096,
4096415,2301066,4096415,2300886,4096385,2300856,4096385,2300826,4096355,2300796,
4096385,2300766,4096355,2300736,4096355,2300706,4096265,2300616,4096265,2300556,
4096205,2300496,4096235,2300466,4096205,2300436,4096205,2300406,4096235,2300376,
4096235,2300346,4096175,2300286,4096115,2300286,4096085,2300256,4096085,2300226,
4095995,2300136,4095995,2300106,4095875,2299986,4095875,2299956,4095905,2299926,
4095905,2299896,4095875,2299866,4095875,2299806,4095845,2299776,4095815,2299806,
4095605,2299596,4095605,2299566,4095575,2299536,4095545,2299566,4095515,2299536,
4095485,2299566), ncol = 2, byrow = T)

然后我创建我的 SpatialLinesDataFrame:

myLine <- Line(Coords)
myLines <- Lines(list(myLine), ID = 1)
mySL <- SpatialLines(list(myLines), proj4string = CRS("+proj=laea +lat_0=52 +lon_0=10 +x_0=4321000 +y_0=3210000 +ellps=GRS80 +units=m +no_defs"))
mySLDF <- SpatialLinesDataFrame(mySL, data = data.frame(ID = 1))

When I use the plot function. Here is

现在使用的是ggplot功能:

mySLDF_fortify <- fortify(mySLDF)
ggplot(mySLDF_fortify, aes(x=long, y=lat, group=group)) + 
    geom_line() +
    theme_bw() + theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank())

这是结果

你知道我做错了什么吗?如何纠正剧情顺序?


geom_line使用 x 轴的顺序来连接点。geom_path使用值的顺序data.frame.

library(sp)

ggplot(mySLDF_fortify, aes(x=long, y=lat, group=group)) + 
  geom_path() +
  theme_classic()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ggplot2 绘制 SpatialLinesDataFrame 的相关文章

  • R 中的聚类分析:确定最佳聚类数

    如何选择最佳的聚类数量来进行 k 均值分析 绘制以下数据的子集后 多少个簇比较合适 如何进行聚类树突分析 n 1000 kk 10 x1 runif kk y1 runif kk z1 runif kk x4 sample x1 lengt
  • 如何替换R中的“意外转义字符”

    当我尝试从 Facebook URL 的字符对象解析 JSON 时 我收到 fromJSON data 中的错误 位置 130 处出现意外的转义字符 o 看一下这个 library RCurl library rjson data lt g
  • R源代码.调用函数[重复]

    这个问题在这里已经有答案了 我正在查看R中cov的source code 并遇到了一段我不太明白的代码 协方差的数学定义goes http en wikipedia org wiki Covariance here if method pe
  • 指定生存图的自定义时间点

    我正在努力使用以下方法创建生存 累积事件图ggsurvplot函数从survminer包裹 我想为我的绘图指定自定义时间点 但我不知道该怎么做 这xlim and break x by参数有点帮助 但它们创建了均匀间隔的时间点和比我想要的更
  • 从频率表生成 data.frame

    我在 2 4 数组中有包含 500 个观察值的合成数据 datax array c 120 181 50 43 41 33 24 8 dim c 2 4 dimnames datax list gender c male female pu
  • R 抑制系统或 shell 命令的控制台输出

    我有这个 Windows 批处理文件 我使用 R 从 R 调用该文件shell 命令 该批处理文件执行一些计算并将它们写入磁盘上 也写入屏幕上 我只对磁盘输出感兴趣 我无法更改批处理文件 批处理文件可能有点愚蠢 例如 echo off ec
  • 通过删除连续的重复项来减少字符串长度

    我有一个包含 2 个字段的 R 数据框 ID WORD 1 AAAAABBBBB 2 ABCAAABBBDDD 3 我想通过仅保留字母而不是重复中的重复项来简化具有重复字母的单词 e g AAAAABBBBB应该给我AB and ABCAA
  • 为 Linux 安装 R 包时出错

    我试图在 R 3 3 上安装一个名为 rgeos 的包 但是当我输入 install packages rgeos 但它返回给我以下错误 其他包也会发生同样的情况 但不是所有包 gt installing source package rg
  • 用于不规则时间序列的滚动窗口函数,可以处理重复项

    我有以下数据框 grp nr yr 1 A 1 0 2009 2 A 2 0 2009 3 A 1 5 2009 4 A 1 0 2010 5 B 3 0 2009 6 B 2 0 2010 7 B NA 2011 8 C 3 0 2014
  • rowSums 全部 NA [重复]

    这个问题在这里已经有答案了 df lt data frame a c 1 1 NA 0 1 0 b c 0 1 NA NA 0 1 c c NA 0 NA 0 1 NA d c 1 NA NA 1 1 0 rowSums df 1 NA N
  • 为“facet_wrap”中的每列创建边框和标题

    我想在每个方面周围放置带有标签和标题的黑色边框facet wrap 与此类似的东西 样本数据 library tidyverse mtcars gt mutate gear factor gear levels c 4 3 5 gt ggp
  • 如何更改数据表中的少数列名称

    我有一个包含 10 列的数据表 town tc one two three four five six seven total 需要生成我正在使用的列 一 到 总计 的平均值 DTmean lt DT lapply SD mean by t
  • 如何在R中绘制仪表图表?

    如何在 R 中绘制以下图 Red 30 Yellow 40 Green 30 Needle at 52 所以这里有一个完整的ggplot解决方案 注意 从原始帖子中编辑 在仪表中断处添加数字指示器和标签 这似乎是OP在评论中所要求的 如果不
  • 合并具有一个共同元素的集合 R

    我有一个这样的列表 lista list lista 1 c 1 2 4 6 8 9 10 11 12 19 32 34 35 36 37 38 lista 2 c 7 8 lista 3 c 13 14 16 26 27 28 29 30
  • 生成因子变量水平的预测值

    我正在使用连续结果变量对多个因子变量进行回归lm 例如 fit lt lm dv factor hour factor weekday factor month factor year count data df 我想生成预测值 yhat
  • 使用 igraph 将边缘属性显示为标签

    我在 R 中使用 igraph 进行网络分析 我想在图中的每条线上显示边缘属性 下面是一个例子 df lt data frame a c 0 1 2 3 4 b c 3 4 5 6 7 nod lt data frame node c 0
  • 使用 X11 窗口的 R 脚本仅打开一秒钟

    我正在通过 Linux Mint 16 命令行运行 R 脚本 它包含我想在窗口中显示的箱线图 所以我使用 x11 函数来创建该窗口 这是我的代码 testdata lt data frame sample 1 1000 size 100 r
  • 在 R 中使用 gsub 删除尾随空格[重复]

    这个问题在这里已经有答案了 有没有人有一个技巧可以用 gsub 删除变量上的尾随空格 以下是我的数据示例 正如您所看到的 我在变量中同时包含尾随空格和嵌入空格 county lt c mississippi mississippi cany
  • 根据另一个向量替换向量中的值

    我想替换向量中的值 x 与另一个向量 y 陷阱 22 方法需要是动态的 以适应向量中不同数量的 级别 x 例如 考虑向量x x lt sample c 1 2 3 4 5 100 replace TRUE gt x 1 2 4 1 1 3
  • 如何加速 R for 循环?

    我正在为 R 中 GWmodel 包中的 gwr basic 函数运行以下 for 循环 我需要做的是收集任何给定带宽的估计参数的平均值 代码如下 library GWmodel data DubVoter Dub voter LARent

随机推荐