2014-09-16 5 views
9

Chciałbym, aby usunąć linie między regionami choropleth wygenerowany w ggplot. Moje pytanie jest motywowane bardzo dużą mapą z bardzo małymi regionami (grupami spisowymi), które są tak liczne, że nie można zobaczyć koloru wypełniającego kształt, biorąc pod uwagę gęstość granic. Używam zaktualizowanego programu RStudio na komputerze Mac z ggplot2 w wersji 1.0.0; ten sam problem nie występuje w systemie Windows.Usuń linie graniczne w ggplot map/choropleth

Oto przykłady (z wykorzystaniem hrabstw), które mają różne kolory dla każdego hrabstwa, więc granice nie są konieczne. Pierwszy używa fioletowych obramowań dla podkreślenia. Drugi ma kolor = NA, który był moją nieudaną próbą wyeliminowania wszystkich granic.

library("ggplot2") 
library("maps") 
tn = map_data("county", region = "tennessee") 
ggplot(tn, aes(x = long, y = lat, group = group)) + 
    geom_polygon(aes(fill = group), color = "purple") 

enter image description here

ggplot(tn, aes(x = long, y = lat, group = group)) + 
    geom_polygon(aes(fill = group), color = NA) 

enter image description here

+3

'color = NA' działa dobrze dla mnie. – Gregor

+0

Usuwa purpurę, ale nie usuwa spacji między wielokątami. – Nancy

+0

To robi dla mnie, być może możesz opublikować swój kod i działkę z 'color = NA'. Być może upewnij się, że używasz aktualnej wersji 'ggplot2'. – Gregor

Odpowiedz

1

Innym rozwiązaniem jest ustawienie zarówno wypełnienia i kolor równe grupy, która pracowała na MacOS Próbowałem go na:

library("ggplot2") 
library("maps") 
tn = map_data("county", region = "tennessee") 
ggplot(tn, aes(x = long, y = lat, group = group)) + 
    geom_polygon(aes(fill = group, color = group)) 

wyjściowa:

enter image description here

2

Ustawianie color = NA prace dla mnie:

ggplot(tn, aes(x = long, y = lat, group = group)) + 
    geom_polygon(aes(fill = group), color = NA) + 
    coord_map() 

produkuje tę działkę bez spacji między wielokątów.

tn-map-no-borders

używam wersji 1.0.0 ggplot2.

Dodałem coord_map, aby nadać mu odpowiedni współczynnik proporcji. Na moim komputerze nie ma to wpływu na granice, nie jestem pewien, dlaczego granice są widoczne w drugim poście. Oto moje:

ggplot(tn, aes(x = long, y = lat, group = group)) + 
    geom_polygon(aes(fill = group), color = NA) 

enter image description here

+0

Świetnie, wygląda świetnie. Ważne jest, aby pamiętać, że to działa dla ciebie * biorąc pod uwagę dodanie innego kodu *, którego nie miałem. – Nancy

+0

To dziwne, że nie działa też na moim komputerze. Mam wersję 1.0.0 ze świeżymi aktualizacjami.Jestem na Macu; czy to potencjalna komplikacja? – Nancy

+0

Może? Czy używasz RStudio? Spróbuj zapisać jako plik PDF i sprawdź, co daje. – Gregor

4

mogę potwierdzić, że to specyficzne dla Mac. Próbowałem zrobić to samo, a "colors = NA" nie ma widocznego efektu w R Studio na komputerze Mac, granice wciąż są wyświetlane. Właśnie załadowałem projekt w systemie Windows, a granice zniknęły.

Dla porównania, moja konfiguracja: na Macu działa R Studio 0.98.1074 na Mac OS X 10_10_1 (Yosemite). Uruchomiony jest system Windows R Studio 0.98.1073 na Windows 7.

+0

Dodatkowa uwaga. Nawet w systemie Windows eksportowanie do pliku PDF powoduje opuszczenie granic (lub luk tam, gdzie w przeciwnym razie byłyby widoczne). Eksportowanie do meczów PNG na ekranie, brak ramek lub przerw. Nawet próbował dodać rozmiar = 0, ale nie zrobił różnicy –