我正在学习R中的可视化,并且遇到了一些问题,试图从我从R中的.xlsx文件提取的数据中创建分类条形图。
输入有很多列,我用图表所需的两列创建了一个数据框。当我在R中运行以下命令时,出现错误
"Error in sort.list(y) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?"
这是我的脚本:
df<-read_excel("C:\\..\\excel.xlsx", sheet="Sheet1")
unique_df<-unique(mis[c("Vegetables", "Fruits")])
ggplot(data = unique_df, mapping = aes(x = as.factor(unique_df["Vegetables"]),
y = unique_df["Fruits"])) + geom_bar(stat = "identity") +
labs(x = "Vegetables", y="Fruits", title="Number of Codes", subtitle="Vegetables wise number of fruits")
这类似于我需要通过以下方式进行可视化的数据框(unique_df):
x y
Red Mango
Red Apple
Red Banana
Blue Mango
Blue Banana
Blue Banana
Blue Apple
Yellow Pineapple
Green Mango
Yellow Pineapple
Yellow Pineapple
Green Apple
str(unique_df)
的输出
Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 219 obs. of 2 variables:
x: chr "Red" "Red" "Red" "Blue" "Blue"...
y: chr "Mango" "Apple" "Banana" "Mango"...
答案 0 :(得分:0)
假设df-数据帧,“ a”和“ b”为列。
尝试下面的代码-并附上图的图像。
ggplot(data = df,aes(x=df$a,fill=df$b))+geom_bar()