Я определил структуру данных для хранения ярлыков легенды следующим образом (потому что я хочу создавать многоуровневые графики с разными данными и разными метками в строке).Динамические метки легенд в ggplot2
legendlabels <- data.frame(
'stadtland'=c("Core City\n(Agglomeration)","Municipality\n(Agglomeration)", "Isolated City", "Rural\nMunicipality"),
stringsAsFactors=FALSE)
Теперь, когда я использую legendlabels
в ggplot
, как это,
... +
scale_colour_hue(name="Type",
breaks=as.factor(c(1:4)),
labels=legendlabels['stadtland'],
l=65) +
...
легенда просто показывает "1", "2", "3", "4" для 4-х различных этикеток , Тем не менее, когда я вставляю вектор непосредственно (undynamically), строки которые будут отображаться правильно:
... +
scale_colour_hue(name="Type",
breaks=as.factor(c(1:4)),
labels=c("Core City\n(Agglomeration)","Municipality\n(Agglomeration)", "Isolated City", "Rural\nMunicipality"),
l=65) +
...
Как я могу заменить это?
Возможно, попробуйте 'labels = legendlabels [['stadtland']]' вместо этого? Не забывайте разницу между '' и '[['! – joran
Отлично. Я забыл об этой разнице (или не понимаю). Если вы опубликуете это как ответ с небольшим объяснением разницы между '[]' и '[[]]', я соглашусь с ним. Спасибо! – wnstnsmth