1

我有一个数据框,显示每年的四个班级,以及它们各自在当年总数中的份额。

> head(df)
      class year share
1    class1 1975 0.806
2    class2 1975 0.131
3    class3 1975 0.018
4    class4 1975 0.045
5    class1 1976 0.788
6    class2 1976 0.151

当我在ggplot没有fill指定的情况下运行时,我得到了一个统一的灰色框,正如预期的那样。

> ggplot(df, aes(x=year, y=share, group=class)) + geom_area() + scale_fill_brewer()

所以我尝试添加fill=class,它不起作用。

> ggplot(df, aes(x=year, y=share, group=class, fill=class)) + geom_area() + scale_fill_brewer()

Error in inherits(x, "factor") : object "base_size" not found
In addition: Warning message:
In inherits(x, "factor") : restarting interrupted promise evaluation
> 

我该怎么做class才能让它正常工作scale_fill_brewer()?显然,这个想法是根据其类别对图形的每个区域进行着色。

谢谢。

4

2 回答 2

1

我刚遇到这个问题。它接缝

theme_set(theme_bw(base_size=9))

导致报告的错误。但

base_size <- 9
theme_set(theme_bw(base_size=base_size))

作品。

我用谷歌搜索并在学习者博客上找到了这个例子

我不知道第一个示例不起作用吗?

于 2010-06-22T19:55:45.900 回答
0

问题出在我设置的一些主题参数中,所以一旦我开始构建一个可运行的示例来在这里重现,它就消失了。谢谢您的帮助。

于 2009-11-11T18:01:41.037 回答