Я хочу создать штрих-код, наложенный с точками, где обе имеют отдельные легенды. Кроме того, я хочу выбрать цвет баров и размер точек, используя аргументы за пределами aes()
. Поскольку оба изображения не отображаются, легенда не создается.ggplot: Вручную добавьте легенды для эстетики, которые не отображаются.
1) Как добавить легенду вручную как для заполнения, так и для размера?
library(ggplot2)
d <- data.frame(group = 1:3,
prop = 1:3)
ggplot(d, aes(x=group, y=prop)) +
geom_bar(stat="identity", fill="red") +
geom_point(size=5)
Это то, что я придумал: я использовал фиктивные отображения и модифицировать легенду, согласно моим потребностям впоследствии. Но этот подход кажется неуклюжим для меня.
2) Есть ли ручной способ сказать: Добавить легенду с этим названием, этими фигурами, этими цветами и т. Д.?
d <- data.frame(dummy1="d1",
dummy2="d2",
group = 1:3,
prop = 1:3)
ggplot(d, aes(x=group, y=prop, fill=dummy1, size=dummy2)) +
geom_bar(stat="identity", fill="red") +
geom_point(size=5) +
scale_fill_discrete(name="fill legend", label="fill label") +
scale_size_discrete(name="size legend", label="size label")
Выше я сопоставляются fill
к dummy1
. Поэтому я бы ожидал, что scale_fill_discrete
изменит эту легенду. Но вместо этого вместо этого следует изменить легенду size
.
3) Я не уверен, что пошло не так. Есть идеи?
Последнее. Наверное, я был неправ, что мне нужно установить размер и заполнить внешний вид. Благодарю. –