[英]Dynamic legend labels in ggplot2
我定義了一個用於存儲圖例標簽的數據結構,如下所示(因為我想生成具有不同數據和連續不同標簽的多重圖)。
legendlabels <- data.frame(
'stadtland'=c("Core City\n(Agglomeration)","Municipality\n(Agglomeration)", "Isolated City", "Rural\nMunicipality"),
stringsAsFactors=FALSE)
現在,當我像這樣在ggplot
使用legendlabels
時,
... +
scale_colour_hue(name="Type",
breaks=as.factor(c(1:4)),
labels=legendlabels['stadtland'],
l=65) +
...
圖例僅顯示4個不同標簽的“ 1”,“ 2”,“ 3”,“ 4”。 但是,當我直接(不動態地)插入向量時,字符串將正確顯示:
... +
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']
將返回長度為1的列表,而不是您要查找的原子向量。 相反,您想使用[[
:
labels=legendlabels[['stadtland']]
它從列表(數據框為列表) legendlabels
返回名為stadtland
的元素 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.