我有作为连接的列表。ggplot R错误离散值提供给连续的尺度
Site Name 5833 count ratio
1 Boston 0 days per week 1 0.01428571
2 Boston 1 day per week 6 0.08571429
3 Boston 2 days per week 11 0.15714286
4 Boston 3 days per week 5 0.07142857
5 Seattle 0 days per week 2 0.02857143
6 Seattle 1 day per week 6 0.08571429
7 Seattle 2 days per week 10 0.14285714
8 Seattle 3 days per week 8 0.11428571
当我使用ggplot - 我必须使用名称< - “5833”,因为这将在以后投入的循环。
name <- "5833"
ggplot(com_agg,aes(x=com_agg[,c(name)], y=ratio,fill=`Site Name`))+
geom_bar(stat = "identity", position = "dodge")
我得到错误:
"Don't know how to automatically pick scale for object of type tbl_df/tbl/data.frame.
Defaulting to continuous. Error: Discrete value supplied to continuous scale"
我注意到列名的该数据帧的选择都将被包含在一对反引号的自动R.它可能是由于空格或特殊名称在列中。所以我不能简单地在ggplot中使用列的名称。
做'class(com_agg [,c(name)])'。你应该看到它不是一个数字列,这是ggplot警告你的。 –
另外,在'aes()'中传递一个* vector *而不是*列名*会导致更复杂的情节出现问题。 'y =比率',是好的;用'x = com_agg [,c(name)]'重新引用你的数据框是不好的。最好的办法是重新命名你的专栏,以便遵循标准专栏名称准则(不以数字开头)并使用'x = x5833'。 – Gregor