R 将数据列转换为矢量以绘制图形
我想有一个棒棒糖图使用数据导入Excel。我的R 将数据列转换为矢量以绘制图形,r,database,statistics,R,Database,Statistics,我想有一个棒棒糖图使用数据导入Excel。我的数据.train1如下 data.strain1data.strain1$x正如@r2evans所指出的,当数据集只包含一列时,第一个问题是select(DF,2)。另外,ggplot调用可能需要更改,使其更像棒棒糖 data.strain1$ID <- seq_len(nrow(data.strain1)) library(ggplot2) ggplot(data.strain1, aes(color = Discrimination_ra
数据.train1
如下
data.strain1data.strain1$x正如@r2evans所指出的,当数据集只包含一列时,第一个问题是select(DF,2)
。另外,ggplot
调用可能需要更改,使其更像棒棒糖
data.strain1$ID <- seq_len(nrow(data.strain1))
library(ggplot2)
ggplot(data.strain1, aes(color = Discrimination_ratio > ID)) +
geom_point(aes(x = LETTERS[ID], y = Discrimination_ratio))+
geom_abline(slope = 1)+
geom_segment(aes(x = LETTERS[ID], xend = LETTERS[ID]
, y = ID, yend = Discrimination_ratio))
data.train1$ID))+
几何点(aes(x=字母[ID],y=辨别率))+
geom_abline(坡度=1)+
geom_段(aes(x=字母[ID],xend=字母[ID]
,y=ID,yend=Discrimination_比率)
您的数据辨别率中的逗号是小数点吗?或者同一列中有两个值吗?小数位:)请不要发布代码/数据/错误的图像:无法复制或搜索(SEO),它会破坏屏幕阅读器,并且可能不适合某些移动设备。参考:(和)。请直接包括代码或数据(例如,dput(头(x))
或data.frame(…)
)。(我手工转录了这些数字,请检查以防我做得不正确。此外,您引用了该数据中的多个列,但只显示了一列,因此您的select(data.strain1,2)
无法正常工作。)select
返回的是完整帧,而不是向量(请测试并查看)。因此,如果您查看toplot.strain1
,您将看到您尝试分配给y=
的任务被忽略。将对y
(在绘图代码中)的引用替换为Discrimination\u ratio
或手动重命名。或者将select(data.strain1,2)
替换为data.strain1[[2]]
,这将是一个向量。要详细说明@r2evans关于获取向量的说法:(假设您使用的select
来自dplyr
)查看dplyr::select
的文档:它返回一个与您提供给它的对象具有相同类的对象。因此,在数据帧上调用select
,将返回数据帧,而不是向量。
data.strain1$x <- LETTERS[1:nrow(data.strain1)]
ggplot(data.strain1, aes(x, Discrimination_ratio)) +
geom_point() +
geom_segment(aes(x=min(x), y=min(Discrimination_ratio), xend=max(x),
yend=max(Discrimination_ratio)))
data.strain1$ID <- seq_len(nrow(data.strain1))
library(ggplot2)
ggplot(data.strain1, aes(color = Discrimination_ratio > ID)) +
geom_point(aes(x = LETTERS[ID], y = Discrimination_ratio))+
geom_abline(slope = 1)+
geom_segment(aes(x = LETTERS[ID], xend = LETTERS[ID]
, y = ID, yend = Discrimination_ratio))