如何创建我的数据的地铁地图可视化

2024-03-04

在一篇论文中找到了下面漂亮的图(http://www.ncbi.nlm.nih.gov/pubmed/25626705 http://www.ncbi.nlm.nih.gov/pubmed/25626705)。它直观地展示了不同实验室的工作流程,并很好地说明了它们的分歧之处。可以看到这对于许多其他数据集很有用。

是否有一种工具可以帮助从一组数据创建此类地图(即避免我必须从头开始在绘图应用程序中绘制它)?

我可以在ggplot2中做这样的事情吗?


这是我对公交车站地图的建议(最后有图表作为附件):

library(ggplot2)

# DF
datos <- data.frame(origen=c(rep("Ruta 126", 7), rep("Ruta 131", 6), rep("Ruta 132", 6)), 
                destino=c("San José", "Jericó", "Guadarrama", "San Juan Norte", "San Juan Sur", "Río Conejo", "Loma Larga",
                          "Cartago", "Copalchí", "El Alumbre", "San Juan Norte", "San Juan Sur", "Loma Larga",
                          "San Juan Norte", "Calle Valverde", "Calle Abarca", "San Juan Sur", "Río Conejo", "Loma Larga"),
                subsidio=c("","-345","-135","-400","-325","-155","400", "", "230", "255", "515", "530", "2150", rep("",6)))

# Levels to factor
datos$destino <- factor(datos$destino, levels = c("San José", "Cartago","Jericó", "Copalchí", "Guadarrama", "El Alumbre", "San Juan Norte",  "Calle Valverde", "Calle Abarca", "San Juan Sur", "Río Conejo", "Loma Larga"))
datos$origen <- factor(datos$origen, levels = c("Ruta 126", "Ruta 132", "Ruta 131"))

# Groups for geom_text
etiqueta1 <- c("San José", "Cartago","Jericó", "Copalchí", "Guadarrama", "El Alumbre", "Calle Valverde", "Calle Abarca", "Río Conejo")
etiqueta2 <- c("San Juan Norte", "San Juan Sur", "Loma Larga")

# group for geom_label
text1 <- c("-345","-135","-400","-325","-155","400")
text2 <- c("230", "255", "515", "530", "2150")

# Plot
ggplot(datos, aes(destino, origen, group=origen)) +
  geom_line(size=10, aes(color=origen)) +
  geom_segment(aes(x=7, xend=7, y= 1, yend=3), size=1, color="grey20", linetype=3) +
  geom_segment(aes(x=10, xend=10, y= 1, yend=3), size=1, color="grey20", linetype=3) +
  geom_segment(aes(x=12, xend=12, y= 1, yend=3), size=1, color="grey20", linetype=3) +
  geom_segment(aes(x=11, xend=11, y= 1, yend=2), size=1, color="grey20", linetype=3) +
  geom_point(size=6) +
  scale_color_manual("", values = c("steelblue3", "tomato2", "forestgreen")) +
  geom_text(data= subset(datos, destino %in% etiqueta1), aes(label=destino), nudge_y = .25, size=3, angle=45, fontface="bold") +
  geom_text(data= subset(datos, destino %in% etiqueta2 & origen== "Ruta 126"), aes(label=destino), nudge_y = -.2, size=4, fontface="bold") +
  geom_label(data= subset(datos, subsidio %in% text1 & origen== "Ruta 126"), aes(label=subsidio), nudge_y = -.5, size=4, fontface="bold") +
  geom_label(data= subset(datos, subsidio %in% text2 & origen== "Ruta 131"), aes(label=subsidio), nudge_y = .52, size=4, fontface="bold") +
  labs(x="", y="") +
  theme_minimal() +
  theme(panel.grid = element_blank()) +
  theme(axis.text = element_blank()) +
  theme(legend.text = element_text(size = 14)) +
  theme(legend.position = "bottom") + 
  guides(color = guide_legend(nrow=3, reverse = T)) +
  theme(plot.margin = unit(c(3,.5,3,.5), "cm"))

巴士站地图 https://i.stack.imgur.com/xkeZ8.jpg

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

如何创建我的数据的地铁地图可视化 的相关文章

  • 在另一个 Rmd 中运行选定的块

    我已经在源 Rmd 文件中运行了分析 并且希望仅使用few来自源的块 我已经看到了一些关于从源 Rmd 中提取所有块的答案来自另一个 Rmd 中的 Rmd 文件的源代码 https stackoverflow com questions 4
  • R 编程:如何计算数据框中两个单元格之间的差异并将它们保存在新列中

    尝试学习 R 并陷入自相关示例中 我想将 x 的差异与 y 的差异进行回归 我在数据框中有 x 和 y 并且希望将 x2 x1 的差值保存在新列 例如 dx 中 我不知道该怎么做 我拥有的 data1 x y 5 3 8 9 3 1 1 5
  • 使用healpy通过HEALPix像素化制作2D直方图

    数据是天空中物体的坐标 例如如下 import pylab as plt import numpy as np l np random uniform 180 180 2000 b np random uniform 90 90 2000
  • fread 将空导入为 NA

    我正在尝试导入带有空白的 csv 读取为 不幸的是他们都读作 NA now 为了更好地演示问题 我还展示了如何NA NA and 都映射到同一事物 除了最底部的示例 这将妨碍简单的解决方法dt is na dt lt gt write cs
  • 如何将此“for”循环转换为向量解

    这个问题与 将嵌入其他文本的长州名称转换为两个字母的州缩写 https stackoverflow com questions 25582518 convert long state names embedded with other te
  • R:表格格式

    我有一个包含以下列的 Excel 文件 Column1 Column2 Column3 ab bb 0 5 ab bc 0 1 ab cd 0 7 ab dd 0 8 ac bb 0 2 ac bg 0 8 ac ee 0 8 ac dd
  • 为什么这些数字不相等?

    下面的代码显然是错误的 有什么问题 i lt 0 1 i lt i 0 05 i 1 0 15 if i 0 15 cat i equals 0 15 else cat i does not equal 0 15 i does not eq
  • 在 R 中使用 Huggingface Transformer 模型

    我正在尝试在 R 中使用不同的 Huggingface 模型 这是通过 reticulate 导入 Transformer 包来实现的 谢谢 https rpubs com eR ic transfoRmers https rpubs co
  • 16 位以上整数的计算

    我有两个大整数 两者都超过 16 位 确切地说是 20 位 而且我知道由于双精度浮点运算 我在使用这些数字进行计算甚至将它们存储在变量中 独立于编程语言 时受到限制 不过 我想也许gmp图书馆应该处理它们 但不幸的是它没有 可以计算更大的整
  • GGPLOT2:如何在 ggplot() 脚本中绘制特定选择

    这是一个名为的大型数据集的峰值P 其中有 10 个优惠 CS 有不同的商店 SHP 具有多个数值 数据集列出了按周排序的它们 WK 2 tm 52 它创建一个大文件 仅前 6 行出现峰值 WK MND CS SHP RevCY RevLY
  • 如何从R arrow中的feather文件中读取列名和元数据?

    现已取代 独立R 的羽毛库 https github com wesm feather有一个函数叫做feather metadata 允许从磁盘上的羽毛文件中读取列名称和类型 而无需打开它们 当在 R 中加载羽毛文件时 这对于仅选择特定列很
  • 如何修改秤包生成的标签?

    所以我正在制作金字塔可视化 我在用着scale y continuous labels scales label number si accuracy 0 1 来生产标签 但是 我想去掉图表女性部分的负号 我认为保留 SI 后缀但删除负号的
  • Matlab:如何在没有颜色分级的情况下绘图?

    我的朋友制作了一个脚本来处理大量数据并绘制各种图表 但是当他运行脚本时 图表根据图例具有不同的颜色 当我这样做时 所有图表都相似 颜色渐变从黑色到红色的 见图 为什么不同以及如何获得不同颜色的图表 带有颜色分级图的 2D 绘图 figure
  • 检查单词是否存在于英语词典 r 中

    我正在对多个进行一些文本分析resume生成一个wordcloud using wordcloud包装连同tm用于在 R 中预处理文档语料库的包 我面临的问题是 检查语料库中的单词是否具有某种含义 即 它属于英语词典 如何一起挖掘 处理多份
  • 从“parallel”包中的非基础 R 包调用函数,而无需在函数中将它们库化

    假设我正在尝试运行以下代码 library gregmisc library parallel myfunction lt function x combinations 10 x 1 10 cl lt makeCluster getOpt
  • 提取部分字符串值,创建新的列名称,并使数据框宽

    我想提取字符串列的最后一部分 始终用方括号括起来 将它们作为新列的名称 然后将数据从长调整为宽 并用这些值填充新列 例如 如果我有这个数据框 whatihave lt data frame v1 c abc effort def effor
  • ggplot2 可视化/显示中的地图错误?

    正如您在下面看到的 我使用 ggplots 制作的地图上存在一个奇怪的显示问题 任何投影似乎都会发生同样的问题 这是代码 仅包maps and ggplot2需要 mapWorld lt borders world colour gray5
  • 根据R中的前一行和当前行按组计算

    我可以根据 R 中的前一行和当前行进行计算 对于此数据框 df A B 1 2 2 2 2 3 3 4 5 5 B2 A2 0 5 B1 我可以使用这段代码来计算这个函数 for i in 2 nrow df B i lt 1 2 B i
  • 在 R 中使用 nls 重新创建研究

    我正在学习如何在 R 中使用 nls 函数 但遇到了一些问题 我现在只是试图重新创建研究论文中发现的曲线 该模型拟合了 1987 年崩盘前股市走势的曲线 我定义了一个函数func 如下 func lt function a b tc t a
  • 基于条件反应逻辑闪亮的 Flexdashboard

    我正在尝试有条件地进行一种类型的渲染 renderPlot 或其他 renderText 基于一些输入 这是我尝试过的 title Citation Extraction output flexdashboard flex dashboar

随机推荐

  • 此信封实现是否正确使用 C++11 原子?

    我编写了一个简单的 信封 类 以确保我正确理解 C 11 原子语义 我有一个标头和一个有效负载 编写器清除标头 填充有效负载 然后用递增的整数填充标头 这个想法是 读取器然后可以读取标头 memcpy 出有效负载 再次读取标头 如果标头相同
  • B-Prolog 中带有累加器的嵌套循环

    B Prolog 具有逻辑循环 例如 我们可以这样计算 1 2 3 的和 test1 foreach A in 1 3 ac Sa 0 Sa 1 is Sa 0 A writeln sa Sa test1 test1 sa 6 yes 但是
  • Android 初始化 Visualizer 时出现错误代码 -3

    初始化时出现此错误Visualizer visualizer new Visualizer mediaPlayer getAudioSessionId lt 错误 无法初始化 Visualizer 引擎 错误 3 java lang Run
  • Twitter bootstrap:跨浏览器圆角和渐变?

    有什么方法可以添加 Twitter Bootstrap 跨浏览器对圆角和 CSS 渐变的支持 阅读 愚蠢的 IE 7 支持 我会使用 CSSPIE http css3pie com http css3pie com 这是一个 htc 文件
  • 有 XWalkView webviewclient 吗?

    我正在尝试使用XWalkView作为我的 Android 应用程序中的 webview 替代品 我注意到没有setWebViewClient方法上XWalkView目的 问题是我想检查页面何时完成 onPageFinished 以及资源加载
  • 在同一服务器上部署 ASP.net Ajax 1.0 和 3.5 Web 应用程序

    我们有一个生产服务器 其中运行 Ajax 1 0 的 ASP net 2 0 应用程序和相应的工具包 工具包版本 1 0 20229 我被要求使用 ASP net 3 5 移动另一个应用程序构建 该应用程序也利用了最新的 ASP NET A
  • 如何计算 NSArray 中的重复值?

    我的价值NSArray包括重复项 我找到了重复项 但现在我怎样才能找到没有 他们重复 您可以使用NSCountedSet http developer apple com library ios documentation Cocoa Re
  • pandas 过滤和比较日期

    我有一个 sql 文件 其中包含我读入 pandas 的数据 df pandas read sql Database count details con engine index col id parse dates newest avai
  • 雪花不旋转

    我需要转置一个表 其中column1 是实体的名称 column2 到column366 是一年中包含美元金额的日期 表 select语句 输出结果都给定了 以下 问题 此语法要求我创建一个逗号分隔的列列表 基本上是 365 个日期 并在
  • 找不到模块:错误:无法解析“sass-loader”

    刚接触 webpack 尝试让 sass loader 与我的 React 项目配合良好 已遵循教程 配置似乎正确 但结果始终是 无法解析 sass loader 我怀疑这是一些明显的错误 但我还没有通过任何搜索或谷歌搜索找到它 任何帮助表
  • 如何使用 jQuery (IE) 删除禁用属性[重复]

    这个问题在这里已经有答案了 我面临的情况是 我必须使用禁用属性来停用我不希望用户编辑的所有输入
  • iOS 7 UIImagePickerController 有黑色预览

    我有一个使用 sourceType 相机调用的 UIImagePickerController 80 的时间我得到黑色预览 如果我等待 假设大约 30 秒 我会得到一个很好的预览 并且在大约 50 的时间内它会很好 然后它可能会再次中断 所
  • 从 Private Repo 下载 Git 存档 tarball 时遇到问题

    我需要能够在特定标签下载我们的应用程序 但我无法为此找到可行的解决方案 基于 git 标签下载 tarball 似乎很有前途 但我无法使用 Curl 让它工作 我尝试了以下方法 但我得到的只是 github 404 页面的源代码 curl
  • C++ 使用计算参数调用超类构造函数

    也许这非常简单 但是有人可以告诉我如何使用子类构造函数中计算的参数来调用超类构造函数吗 像这样的东西 class A A int i int j class B A B int i B B int i int complex calcula
  • 如何在heroku应用程序中使用npm pdf图像包

    我正在尝试使用 npm 包 pdf image https www npmjs com package pdf image https www npmjs com package pdf image 对于部署在 heroku 上的应用程序
  • 设置minimumScaleFactor时UILabel获取当前比例因子?

    我有一个UILabel并设置 let label UILabel label minimumScaleFactor 10 25 设置标签文本后 我想知道当前的比例因子是多少 我怎样才能做到这一点 你还需要知道原始字体大小是多少 但我想你可以
  • getPackageManager().getInstalledPackages(PackageManager.GET_ACTIVITIES) 返回 null

    如果我打电话 PackageManager pm getPackageManager List
  • 在图像底部添加阴影

    如何在图像上添加阴影 在底部 以使标题清晰可见 请参见下图 我写了一个应用程序 也有同样的效果 我所做的是 我创建了一个框架布局其中有图像视图和另一个View它与 ImageView 具有相同的高度 然后我添加一个透明的渐变背景View E
  • TPC 继承错误

    我在使用 C Entity Framework Codefirst 和 Fluent Api 进行 TPC 继承时遇到了一个奇怪的问题 我有 3 个班级Person Invoice and PeriodicInvoice正如你在下面看到的
  • 如何创建我的数据的地铁地图可视化

    在一篇论文中找到了下面漂亮的图 http www ncbi nlm nih gov pubmed 25626705 http www ncbi nlm nih gov pubmed 25626705 它直观地展示了不同实验室的工作流程 并很