Попытка устранить ошибку: Ошибка: `data` должен быть фреймом данных или другим объектом, который можно вызвать с помощью` fortify () `, а не символьным вектором - PullRequest
1 голос
/ 12 марта 2020

Я попытался сделать некоторые свои графики прозрачными, но когда я добавил «альфа», я получил следующую ошибку. Кто-нибудь знает, как мне это исправить?

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")

Ответы [ 2 ]

3 голосов
/ 12 марта 2020

Возможно, это будет alpha = 0.4

library(ggplot2)
ggplot(data=file1, aes(x = No.)) + 
  geom_line(aes(y = X1), colour="red")+
  geom_line(aes(y = X2), colour="coral4",alpha = 0.4)+
  geom_line(aes(y = X3), colour=cl[8],alpha = 0.4)+
  geom_line(aes(y = X4), colour="magenta")+
  xlab("Image ")+ylab("n pores<0.13")+
  theme(legend.position="bottom")
1 голос
/ 12 марта 2020

В вашем csv-файле может быть что-то странное, из-за чего вывод read.csv будет другого типа, чем фрейм данных. Я хотел бы str (file1) и / или head (file1), чтобы убедиться, что объект выглядит так, как вы намеревались. Если это произойдет, вы можете попытаться принудительно привести его к фрейму данных, выполнив команду file1 <- as.data.frame (file1), поэтому, если вы тоже это не исправите, произойдет сбой, но я считаю, что эта ошибка предшествует который. </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...