首页 > 其他分享 >工具 | R包mapmixture绘制群体结构与地图分布

工具 | R包mapmixture绘制群体结构与地图分布

时间:2024-06-16 10:32:03浏览次数:12  
标签:示例 地图 mapmixture https 绘制 群体

mapmixture简介

群体结构(admixture)绘图,R包pophelper是神器(https://github.com/royfrancis/pophelper),立个flag,下次投稿。今天给大家介绍的是另一个R包mapmixture,同样可绘制群体结构图,并与地图分布相结合。小小R包竟然能够发到MER,也是很神奇。想想几年前小野为了画个漂亮的地图,费了老大劲,如今这个工具让完全没基础的小白也能上手了(shiny:https://tomjenkins.shinyapps.io/mapmixture/)。

Mapmixture可接受由admixture分析生成的格式数据,并在投影(可选)地图上以饼图的形式直观显示每个地点、每个遗传簇(genetic cluster)的比例。将这种基于地点的地图展示方法与基于个体的群体结构柱状图的常规展示方法相结合,以增强对遗传地理模式的解读。

温馨提示:为避免不必要的麻烦,请留意下中国地图的九段线,这里我没测试。

GitHub上详细介绍了安装说明以及如何使用软件包和交互式网络应用程序的示例:

https://github.com/tom-jenkins/mapmixture

示例

数据输入格式

示例结果

示例代码

file <- system.file("extdata", "admixture1.csv", package = "mapmixture")
admixture1 <- read.csv(file)
file <- system.file("extdata", "coordinates.csv", package = "mapmixture")
coordinates <- read.csv(file)

map4 <- mapmixture(admixture1, coordinates,
                   cluster_cols = c("#f1a340","#998ec3"),
                   cluster_names = c("Ancestry 1","Ancestry 2"),
                   crs = 4326,
                   boundary = c(xmin=-20, xmax=20, ymin=40, ymax=62),
                   pie_size = 2.5,
)+ theme(legend.position = "top",plot.margin = margin(l = 10, r = 10))+
  guides(fill = guide_legend(override.aes = list(size = 5, alpha = 1)))

structure_barplot <- structure_plot(admixture1,
                                    type = "structure",
                                    cluster_cols = c("#f1a340","#998ec3"),
                                    site_dividers = TRUE,
                                    divider_width = 0.4,
                                    site_order = c(
                                      "Vigo","Ile de Re","Isles of Scilly","Mullet Peninsula",
                                      "Shetland","Cromer","Helgoland","Flodevigen","Lysekil","Bergen"
                                    ),
                                    labels = "site",
                                    flip_axis = FALSE,
                                    site_ticks_size = -0.05,
                                    site_labels_y = -0.35,
                                    site_labels_size = 2.2)+
  theme(
    axis.title.y = element_text(size = 8, hjust = 1),
    axis.text.y = element_text(size = 5),
  )
grid.arrange(map4, structure_barplot, nrow = 2, heights = c(4,1))

标签:示例,地图,mapmixture,https,绘制,群体
From: https://www.cnblogs.com/miyuanbiotech/p/18250246

相关文章

  • 推荐 怎么绘制CNS级别的科研图片?
    好文配好图,好图胜千言!一篇高水平科研论文肯定少不了漂亮的图片。今天给各位学术界的小伙伴推荐一个操作简单、制作精良、专业又高级的科研绘图神器——BioRender(https://www.biorender.com/)。小编最近发表的一篇文章的图片有用到。而恰好,上次分享RajeevVarshney的一篇基因组辅......
  • MySQL周内训参照1、ER实体关系图与数据库模型图绘制
    题目要求详情地址:04-MySQL比赛内容与要求细则编号人员题目总分数题干提交内容得分标准1产品经理绘制ER图10使用工具统一版本viso2013要求创建的实体有:1、用户表(user)、用户钱包表(user_wallet)(与user是1对1关系)、用户钱包交易日志表(user_wallet_log)(与user是1对多关系)......
  • 用立创EDA绘制一个使用51单片机P3口进行八位流水灯的控制的PCB板。
    文章目录概要整体架构流程技术名词解释小结概要使用立创EDA绘制一个使用51单片机最小系统,并使用P3口进行八位流水灯的控制的PCB板。整体架构流程整体由四部分构成:51单片机选择STC89C52RC,价格便宜,下图为51单片机的端口图。EA端为高电平(优先读取内部存储)。上拉电......
  • 探索鸿蒙系统中的OffscreenCanvas并发线程绘制问题
    引言作为一名热衷于鸿蒙系统开发的工程师,我近期遇到了一个关于OffscreenCanvas组件在并发线程中绘制时崩溃的问题。这个问题不仅挑战了我的技术理解,也促使我深入探索鸿蒙系统的内部机制。在这篇文章中,我将分享我的发现和解决问题的过程。问题描述在开发过程中,我尝试使用O......
  • 【FFmpeg】SDL 音视频开发 ② ( SDL 视频显示函数 | 设置渲染器目标纹理 | 设置渲染器
    文章目录一、SDL视频显示函数1、SDL的渲染器和纹理之间的关系2、SDL_SetRenderTarget函数-设置渲染器目标纹理3、SDL_SetRenderDrawColor函数-设置渲染器颜色4、SDL_RenderClear函数-清除渲染器5、SDL_RenderDrawRect函数-渲染器绘制矩形6、SDL_Render......
  • C# winform中RDLC报表绘制
    C#winform中RDLC报表绘制使用集成开发环境为VS2010,框架版本为.NETFramework4以下我们以一个简单的学生报表作为例子。publicclassStudent{publicstringname{get;set;}publicstringid{get;set;}publicstringclasses{get;set;}publicstringhome{get;set;}publi......
  • 阿里巴巴中国站关键字搜索API返回值应用案例:精准定位目标用户群体
    阿里巴巴中国站的关键字搜索API返回值在精准定位目标用户群体方面,具有广泛的应用案例。这些应用案例主要集中在以下几个方面:数据分析与市场调研:通过关键字搜索API,商家可以获取大量与特定商品或服务相关的搜索数据。对这些数据进行深度分析,可以了解目标用户群体的搜索习惯......
  • [数据分析与可视化] 基于Python绘制简单动图
    动画是一种高效的可视化工具,能够提升用户的吸引力和视觉体验,有助于以富有意义的方式呈现数据可视化。本文的主要介绍在Python中两种简单制作动图的方法。其中一种方法是使用matplotlib的Animations模块绘制动图,另一种方法是基于Pillow生成GIF动图。python学习资料已打包好,需......
  • c# 二维图形绘制实践
    1.等边三角形1.1概述1.2 代码usingSystem;usingSystem.Drawing;usingSystem.Windows.Forms;publicpartialclassTriangleForm:Form{publicTriangleForm(){//InitializeComponent();//确保窗体大小足够大,以容纳三角形......
  • python绘制词云图最全教程,查看文章关键词,自定义词云图形状等,看完就会
    ......