r - 如何绘制点之间的曲线

标签 r curve dotted-line

我正在寻找一个函数,允许我在点之间绘制一条曲线。实际上,我的数据是元素(此处为氮)的轮廓浓度,我需要绘制一条在点之间弯曲的虚线。 这是我想用 R 做的事情的图像(我用 Excel 制作了这个配置文件

library(ggplot2)
Sample <- c(-1, -3, -5, -7, -9, -11, -13, -15, -17, -19, -21, -23, -25, -27, 
            -29, -31, -33, -35, -37)
N <- c(0.14, 0.16, 0.09, 0.09, 0.011, 0.09, 0.10, 0.09, 0.11, 0.11, 0.09, 0.09,
       0.05, 0.09, 0.09, 0.10, 0.11, 0.11, 0.11)
tab <- data.frame(N, Sample)
ggplot(tab,  aes(x=N,  y=Sample,  c(0, 0.16)), pch=17) + 
  geom_path(linetype=3, color='#2980B9',  size = 0.1) +
  geom_point(color='#2980B9',  size = 2) +
  scale_x_continuous(position = "top",  limits=c(0, 0.16)) +
  scale_y_continuous(limits=c(-40, 0))

这是我获得的图

请问你能帮我吗?

最佳答案

获得平滑线条而不是直线的一种方法是在您的美学中翻转 xy,然后应用 geom_smooth 而不是 geom_path,然后通过coord_flip翻转坐标:

ggplot(tab, aes(x=Sample, y=N, c(0,0.16)),pch=17) + 
coord_flip() + 
geom_point(color='#2980B9', size = 2) + 
geom_smooth(method = "loess", se = FALSE, 
          span = 0.25, linetype=3,color='#2980B9', size = 0.1)

enter image description here

关于r - 如何绘制点之间的曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49479598/

相关文章:

r - R : name autocompletion? 中的数据帧

r - 将距离矩阵作为矩阵从R复制到excel中

c++ - 如何在cocos2dx中绘制任意曲线

c# - 如何在 Silverlight 中的 Border 元素上制作虚线边框?

linux - “dotted” linestyle 的性能比 “dashed” linestyle 慢很多是正常的吗?

r - 如何在美国 map 中将海洋着色为蓝色?

r - 如何绘制 fiddle 散点箱线图(在 R 中)?

css - 无法摆脱 Firefox 链接中的虚线轮廓?

javascript - 寻找三次贝塞尔曲线控制点的算法(实现细节)

java - CatmullRomSplines 和其他平滑路径