我无法使用此数据更改此图表中的图例标题。
df <- structure(list(year = structure(c(1L, 1L, 2L, 2L, 2L, 3L, 3L,
3L), .Label = c("2015", "2016", "2017"), class = "factor"), Category2 = c("grower",
"starter", "grower", "layer", "starter", "grower", "layer", "starter"
), per_pound = c(0.2072, 0.382, 0.172, 0.173, 0.3705, 0.178667,
0.1736, 0.277375)), .Names = c("year", "Category2", "per_pound"
), row.names = c(NA, -8L), vars = "year", drop = TRUE, class = c("grouped_df",
"tbl_df", "tbl", "data.frame"))
我创建的图表......
library (ggplot2)
p <- ggplot (data=df, aes(x=year, y=per_pound, group=Category2, color=Category2)) + geom_line() + geom_point()
p <- p + scale_fill_discrete(name="TEST")
p
哪个会产生这个...
图例名称应为&#39; TEST&#39;不是&#39;类别2&#39;。数据框中的数据一定有问题,但我还没有找到罪魁祸首。
-cherrytree
答案 0 :(得分:5)
fill
用于内部着色,而color
用于轮廓。某些geom
(例如geom_bar
)可以同时使用color
和fill
。我们可以使用color
更改条形的轮廓,使用fill
更改内部颜色。但是,有些geom
只会使用color
,例如geom_line
和geom_point
,因为没有内部颜色可以“更改”。
在您的代码中,您使用color=Category2
指定了颜色。那是正确的。但是,您将相应地使用scale_color_discrete(name="TEST")
。以下代码将起作用。
library (ggplot2)
p <- ggplot (data=df, aes(x=year, y=per_pound, group=Category2, color=Category2)) + geom_line() + geom_point()
p <- p + scale_color_discrete(name="TEST")
p
答案 1 :(得分:1)
您也可以使用
手动更改图例标题p + guides(color=guide_legend(title="Whatever You Want"))