我试着把一些图做成透明的,但是当我加上"alpha"时,我得到了下面的错误。有人知道我应该怎么改正吗?
Error: `data` must be a data frame, or other object coercible by `fortify()`, not a character vector
下面是我的代码:
graphics.off()
rm(list=ls())
library(ggplot2)
library(dplyr)
library(tidyr)
library(tidyverse)
setwd("F:/Data/")
file1<-read.csv("F:/Data/diam.csv")
cl<-rainbow(20)
names(file1)
ggplot(data=file1, aes(x = No.)) +
geom_line(aes(y = X1), colour="red")+
geom_line(aes(y = X2), colour="coral4",alpha(.4))+
geom_line(aes(y = X3), colour=cl[8],alpha(.4))+
geom_line(aes(y = X4), colour="magenta")+
xlab("Image ")+ylab("n pores<0.13")+
theme(legend.position="bottom")
3条答案
按热度按时间pdsfdshx1#
可能是
alpha = 0.4
eqqqjvef2#
可能有一些奇怪的东西在你的csv文件,使输出读取。csv是一个不同的数据类型比一个数据框。(文件1)和/或文件头(file 1)以确保对象看起来像您想要的那样。如果确实如此,您可以尝试通过执行file 1〈- as.data.frame将其强制为数据框(file 1),所以如果你不修复这些错误,它会再次失败,但我相信这个错误是在那之前。
e4yzc0pl3#
我以前也有这个错误。我自己解决了它后,一个小修补。对我来说,这个问题是因为我用Kaggle。Kaggle得到一个上传他们的CSV文件,然后给路径访问该CSV文件。这是它给我的路径:
相反,我只使用了:
仅此一项就为我修复了“
data
必须是 Dataframe ,或fortify()
可强制的其他对象,而不是字符向量”的错误。