首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >r rda vegan geom_text.我想指定标签位置,把它准确地放在箭头指向的位置。

r rda vegan geom_text.我想指定标签位置,把它准确地放在箭头指向的位置。
EN

Stack Overflow用户
提问于 2022-10-01 14:52:18
回答 1查看 120关注 0票数 0

这就是我想把文本标签放在箭头指向的位置上:

以下是我的研究结果:

我想把文字标签放在箭头指向的位置,我使用了库(Ggrepel)。

我的代码是

代码语言:javascript
复制
  p <- ggplot(rda_tb_fs.site, aes(RDA1, RDA2)) +
       geom_vline(xintercept = 0, color = 'gray', size = 0.5) + 
       geom_hline(yintercept = 0, color = 'gray', size = 0.5) +
       geom_segment(data = rda_tb_fs.env,
           aes(x = 0,y = 0, xend = RDA1,yend = RDA2), 
           arrow = arrow(length = unit(0.4, 'cm'),
                         angle=20,
                         type = "open"), 
           size = 1,
           lineend="round",
           linejoin="mitre",
           color='blue'
             ) +
       geom_text_repel(data = rda_tb_fs.env, 
                      aes(RDA1*1.06, RDA2 *1.05,
                          label=c("K","pH","ORP",
                                 "HCO3","WTO")
                        ))

我理解当RDA1是正数时,我需要的是RDA1+0.1,但是当RDA1是否定的--我需要的是RDA1-0.1时,我只是不知道如何使用这个条件语句。

这是我在保密原则下进行的一些改革的数据1。

数据2

这是我写的原始R码

EN

回答 1

Stack Overflow用户

发布于 2022-10-03 09:49:48

我将geom_text_ggrepel()改为geom_text(),并在geom_text(aes())中做了一些修改,它起作用了:

代码语言:javascript
复制
  geom_text(data = rda_tb_fs.sp, 
        aes(
        ((RDA1^2+RDA2^2)^0.5+0.15)/(RDA1^2+RDA2^2)^0.5*RDA1, 
        ((RDA1^2+RDA2^2)^0.5+0.15)/(RDA1^2+RDA2^2)^0.5*RDA2,
            label=c("Cd","Cr","Zn","Ni",
                    "Cu","Pb","Co","Fe",
                    "Mn","As","Ti"
                    )
        ),
        size =5,
        fontface = "bold",
        family="Times New Roman",
        color='red',
        parse = T,
        )

这是我的结果

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73919284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档