[英]ggplot2 ggmap, R legend editing
這是
代碼示例:
require(rgdal)
require(ggmap)
require(maptools)
library(RColorBrewer)
polska <- get_map(
location=c(lon=20.9589934, lat=53.5149404),
zoom=7,
maptype="roadmap"
)
mapa <- ggmap(polska)
nazwa <- c('LEKARZ - SPECJALISTA ONKOLOGII I HEMATOLOGII DZIECIĘCEJ',
'LEKARZ - SPECJALISTA ONKOLOGII KLINICZNEJ',
'LEKARZ - SPECJALISTA RADIOLOGII I DIAGNOSTYKI OBRAZOWEJ',
'LEKARZ - SPECJALISTA RADIOTERAPII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA KARDIOCHIRURGII',
'LEKARZ - SPECJALISTA KARDIOLOGII',
'LEKARZ - SPECJALISTA KARDIOLOGII DZIECIĘCEJ',
'LEKARZ - RADIOLOGIA I DIAGNOSTYKA OBRAZOWA',
'LEKARZ - SPECJALISTA CHIRURGII ONKOLOGICZNEJ',
'LEKARZ - SPECJALISTA GINEKOLOGII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA ONKOLOGII I HEMATOLOGII DZIECIĘCEJ',
'LEKARZ - SPECJALISTA ONKOLOGII KLINICZNEJ',
'LEKARZ - SPECJALISTA RADIOLOGII I DIAGNOSTYKI OBRAZOWEJ',
'LEKARZ - SPECJALISTA RADIOTERAPII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA KARDIOCHIRURGII',
'LEKARZ - SPECJALISTA KARDIOLOGII',
'LEKARZ - SPECJALISTA KARDIOLOGII DZIECIĘCEJ',
'LEKARZ - RADIOLOGIA I DIAGNOSTYKA OBRAZOWA',
'LEKARZ - SPECJALISTA CHIRURGII ONKOLOGICZNEJ',
'LEKARZ - SPECJALISTA GINEKOLOGII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA ONKOLOGII I HEMATOLOGII DZIECIĘCEJ',
'LEKARZ - SPECJALISTA ONKOLOGII KLINICZNEJ',
'LEKARZ - SPECJALISTA RADIOLOGII I DIAGNOSTYKI OBRAZOWEJ',
'LEKARZ - SPECJALISTA RADIOTERAPII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA KARDIOCHIRURGII',
'LEKARZ - SPECJALISTA KARDIOLOGII',
'LEKARZ - SPECJALISTA KARDIOLOGII DZIECIĘCEJ',
'LEKARZ - RADIOLOGIA I DIAGNOSTYKA OBRAZOWA',
'LEKARZ - SPECJALISTA CHIRURGII ONKOLOGICZNEJ',
'LEKARZ - SPECJALISTA GINEKOLOGII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA ONKOLOGII I HEMATOLOGII DZIECIĘCEJ',
'LEKARZ - SPECJALISTA ONKOLOGII KLINICZNEJ',
'LEKARZ - SPECJALISTA RADIOLOGII I DIAGNOSTYKI OBRAZOWEJ',
'LEKARZ - SPECJALISTA RADIOTERAPII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA KARDIOCHIRURGII',
'LEKARZ - SPECJALISTA KARDIOLOGII',
'LEKARZ - SPECJALISTA KARDIOLOGII DZIECIĘCEJ',
'LEKARZ - RADIOLOGIA I DIAGNOSTYKA OBRAZOWA',
'LEKARZ - SPECJALISTA CHIRURGII ONKOLOGICZNEJ',
'LEKARZ - SPECJALISTA GINEKOLOGII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA ONKOLOGII I HEMATOLOGII DZIECIĘCEJ',
'LEKARZ - SPECJALISTA ONKOLOGII KLINICZNEJ',
'LEKARZ - SPECJALISTA RADIOLOGII I DIAGNOSTYKI OBRAZOWEJ',
'LEKARZ - SPECJALISTA RADIOTERAPII ONKOLOGICZNEJ','LEKARZ - SPECJALISTA KARDIOCHIRURGII',
'LEKARZ - SPECJALISTA KARDIOLOGII',
'LEKARZ - SPECJALISTA KARDIOLOGII DZIECIĘCEJ',
'LEKARZ - RADIOLOGIA I DIAGNOSTYKA OBRAZOWA',
'LEKARZ - SPECJALISTA CHIRURGII ONKOLOGICZNEJ')
Lat <- c(53.772908, 54.179697, 53.77253, 53.769866, 53.824712, 53.770479, 54.155989, 53.77253, 53.900444,
53.769866, 53.769866, 53.784476, 53.776881, 51.765548, 53.770238, 53.626192, 54.179697, 54.155989, 53.770238, 54.179697, 54.161008, 53.241782,
53.693514, 54.497984, 54.179697, 53.770238, 54.179697, 54.12597, 53.793636, 53.769866,
53.77253, 53.813859, 54.082334, 53.769866, 54.179697, 54.153899, 53.693514,
53.769866, 54.179697, 51.765548, 53.820852, 53.144716, 53.586071, 53.144716, 53.793636,
53.424625, 53.241782, 53.769866, 53.557383)
Lon <- c(20.484436,
19.429063, 20.471922, 20.492113, 22.3542, 20.477155, 19.425851, 20.471922, 20.573356, 20.492113, 20.492113, 20.494275,
20.505175, 19.455863, 20.479557, 21.798478, 19.429063, 19.425851, 20.479557, 19.429063, 19.418135,
20.192547, 19.975791, 18.544899, 19.429063, 20.479557, 19.429063,
20.591212, 22.33971, 20.492113, 20.471922, 22.384305, 21.377269, 20.492113,
19.429063, 19.423336, 19.975791, 20.492113, 19.429063, 19.455863, 22.364016, 23.191729, 19.566362, 23.191729, 22.33971, 19.587424, 20.192547,
20.492113, 20.986225
)
personel <- data.frame(nazwa,Lat,Lon)
moja.paleta <- brewer.pal(10, "Set3")
personel$kolor <- moja.paleta[personel$nazwa]
punkty <- mapa+ geom_point( aes(x=Lon, y=Lat,fill=personel$kolor)
,data=subset(personel,nazwa=nazwa)#& dziedzina=='onkologia'))
,size=6
, color= "gold"
, pch=21
)
plot(punkty)
我的問題:
如何將指南標簽標題從此顏色名稱更改為moja.paleta到personel personel$nazwa
如何更改圖例標簽的大小並使該圖例垂直而不是水平?
圖片
我認為這應該工作
moja.paleta <- brewer.pal(10, "Set3")
mapa + geom_point( aes(x=Lon, y=Lat,fill=nazwa),
data=subset(personel,nazwa=nazwa)#& dziedzina=='onkologia')),
size=6,
color= "gold",
pch=21) +
scale_fill_manual( values=setNames(moja.paleta,levels(personel$nazwa)) ) +
guides(fill = guide_legend(ncol = 2)) +
theme(legend.position="bottom")
我們使用scale_fill_manual
設置每個級別的顏色,並使用fill=
美感為點着色(請注意,那里沒有$
-指定美感時應避免這種情況。
我也將指南移到底部並更改了列數。 最后,我不得不選擇其他顏色的釀酒機托盤,因為“ Blues”沒有10個值。
在ggplot中起作用的所有內容都適用於ggmap。 因此,例如,此網頁應回答您的大多數問題: http : //www.cookbook-r.com/Graphs/Legends_%28ggplot2%29/29/
因為您沒有提供任何示例數據,所以我無法驗證這是否可行:
更改每個圖例項的名稱:
+ scale_fill_manual(labels=c("a", "b", "c"))
更改尺寸圖例標簽,更改位置圖例
+ theme(legend.text = element_text(size = 16),
legend.position="bottom") #or top or so
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.