Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 从数据帧绘制多条平滑线_R_Graph_Plot - Fatal编程技术网

R 从数据帧绘制多条平滑线

R 从数据帧绘制多条平滑线,r,graph,plot,R,Graph,Plot,我对R比较陌生。我正在尝试绘制从csv文件加载的数据帧。数据由如下6列组成: xval,col1,col2,col3,col4,col5 第一列(xval)由一系列单调递增的正整数(如10、40、60等)组成,其他列1至5由浮点数组成 我想在R中创建一个绘图,如下所示: 在x轴上绘制xval项 绘制剩余列(列1…列5)行 使用col2创建图例。。。col5更名为 要打印的数据(col1,…col5)是“快照”值,因此尽管我希望将它们打印为线,但我希望平滑线(即插值) 我正在寻找一个片段,它

我对R比较陌生。我正在尝试绘制从csv文件加载的数据帧。数据由如下6列组成:

xval,col1,col2,col3,col4,col5
第一列(xval)由一系列单调递增的正整数(如10、40、60等)组成,其他列1至5由浮点数组成

我想在R中创建一个绘图,如下所示:

  • 在x轴上绘制xval项
  • 绘制剩余列(列1…列5)行
  • 使用col2创建图例。。。col5更名为
要打印的数据(col1,…col5)是“快照”值,因此尽管我希望将它们打印为线,但我希望平滑线(即插值)

我正在寻找一个片段,它可以帮助我在将数据读入数据框后创建绘图。任何帮助都将不胜感激。

请查看ggplot2

#create dummy data
n <- 200
dataset <- data.frame(xval = runif(n), col1 = rnorm(n), col2 = rnorm(n, sd = 2), col3 = rnorm(n, mean = seq(0, 2, length = n)), col4 = rnorm(n, sd = seq(0, 1, length = n)), col5 = rnorm(n, mean = 1))
#convert data to long format
library(reshape)
Molten <- melt(dataset, id.vars = "xval")
#plot it
library(ggplot2)
ggplot(Molten, aes(x = xval, y = value, colour = variable)) + 
    geom_smooth() + geom_point()
#some tweaking
ggplot(Molten, aes(x = xval, y = value, colour = variable)) + 
    geom_smooth(se = FALSE) + geom_point() + theme_bw() + 
    scale_x_continuous("the x label") + scale_x_continuous("the y label") +
    scale_colour_discrete("")
#创建虚拟数据

n+1表示简洁漂亮的代码!。谢谢我不敢相信你能在这么少的代码行中做到这一点!:)。我需要稍微修改图表,使其符合我的要求。我已经设法消除了“分散点”,但我需要:1。移除标绘线2周围的“置信带(?)”。将x轴和Y轴重命名为3。删除图例标题3。在绘图中使用白色背景。顺便说一句,(如果我错了,请纠正我),我是R新手,现在似乎对R图形相关问题的大多数回答都涉及到使用ggplot(2)的解决方案-我应该集中精力学习如何使用ggplot2而不是R自己的
plot()
命令?如果有,请为调整后的绘图添加一行代码。查看ggplot2网站()以获取代码示例。了解plot()命令的基本知识是很好的,但是使用ggplot()生成高质量的绘图要容易得多。使用plot()命令生成相同的绘图需要几行代码。我肯定会关注ggplot2。在我看来,它优于标准的
绘图和晶格。
scale\u x\u continuous(“y标签”)
应该是
scale\u y\u continuous(“y标签”)