R 函数内的ggplot不会返回带有数据点的散点图,而是带有数据帧值的图。如何解决这个问题?

R 函数内的ggplot不会返回带有数据点的散点图,而是带有数据帧值的图。如何解决这个问题?,r,dataframe,ggplot2,plot,return,R,Dataframe,Ggplot2,Plot,Return,我正在编写一个函数,在这个函数中,我应该根据函数中生成的两个不同的数据帧,在RStudio中获得返回给我的2个ggplots对象。然而,我得到的是一个包含返回的所有数据帧值的图,而不是一个正常的散点图 我试过: 返回(列表(df1、df2)) 在您的ggtitles调用中绘制,您的意思可能是: ggtitle(paste("Filtered MD data -", deparse(substitute(dataframe))) 在一个函数中,这将获取传递给dataframe

我正在编写一个函数,在这个函数中,我应该根据函数中生成的两个不同的数据帧,在RStudio中获得返回给我的2个ggplots对象。然而,我得到的是一个包含返回的所有数据帧值的图,而不是一个正常的散点图

我试过:

  • 返回(列表(df1、df2))

  • 在您的
    ggtitles
    调用中绘制,您的意思可能是:

    ggtitle(paste("Filtered MD data -", deparse(substitute(dataframe)))
    

    在一个函数中,这将获取传递给
    dataframe
    参数的对象的名称,并将其粘贴到字符串中,而不是将整个dataframe放入其中。

    在这两种情况下,您的ggtitles都将整个dataframe粘贴到title中,从而挤出整个绘图。你想把数据帧的名称放在里面吗?@KonradRudolph当然,很抱歉,复制不完整。我添加和修改了一些东西,以一种可复制的方式包含整个函数。我还对样本数据做了一些修改,以更好地适应函数。@AndrewBaxter噢,哇,这可能就是这里的问题所在。是的,我想要数据帧的名称there@RonakShah我将尝试一下,并张贴它是否有效!谢谢你advance@Amar该函数适用于我-我正在使用您的数据调用
    MD\u filter\u trial(df,df$mz\u col)
    。它按预期显示一个绘图(并在终端上打印两个结果数据帧)。也就是说,Andrew的答案可能是你想要的:你现在把整个数据框放在标题中,这可能不是你想要的。
    Sample data:
    
    structure(list(mz_col= c(99.0001, 99.0056, 99.0079, 99.0097, 99.0105, 
    99.0116, 99.0158, 99.0169, 99.019, 99.0196, 99.0207, 99.0215, 
    99.0239, 99.0252, 99.026, 99.0269, 99.0288, 99.0295, 99.0302, 
    99.0311, 99.0318, 99.0332, 99.034, 99.0346, 99.0355, 99.0376, 
    99.039, 99.04, 99.0405, 99.0414, 99.0421, 99.043, 99.0444, 99.0473, 
    99.048, 99.0517, 99.0536, 99.0547, 99.0556, 99.057, 99.0575, 
    99.0586, 99.0599, 99.0606, 99.0621, 99.0637, 99.0652, 99.0661, 
    99.0668, 99.0686, 99.0694, 99.0699, 99.0707, 99.0714, 99.072, 
    99.075, 99.0762, 99.0794, 99.0808, 99.0836, 99.0888, 99.0901, 
    99.0911, 99.092, 99.095, 99.0962, 99.1001, 99.1064, 99.1173, 
    99.4889, 99.5059, 99.5084, 99.5126, 99.5158, 99.5165, 99.5173, 
    99.5183, 99.526, 99.5266, 99.5315, 99.5345, 99.5358, 99.5402, 
    99.543, 99.5472, 99.548, 99.5529, 99.5572, 99.5577, 99.9408, 
    99.9551, 99.9599, 99.9646, 99.9718, 99.9887)), row.names = c(NA, 
    -95L), class = c("tbl_df", "tbl", "data.frame"))
    
    
    ggtitle(paste("Filtered MD data -", deparse(substitute(dataframe)))