0

我想我刚刚制作了世界上最奇怪的合唱团。

代码很简单:

df$cut <- cut_interval(df$Count, 5)

ggplot(df, aes(lon, lat)) +
  geom_polygon(aes(fill = df$cut), colour = alpha("white", 1/2), size = 0.2) + 
  geom_polygon(data = df , colour = "white", fill = NA) +
  scale_fill_brewer(palette = "PuRd")

(有关数据框的 a ,请参阅Pastebindput

但是地图很疯狂:

在此处输入图像描述

我哪里做错了?

查看其他代码片段,我似乎无法弄清楚如何使这项工作。

4

1 回答 1

1

你可以像这样绘制一个等值线:

library(ggplot2)
library(XML)
tab <- readHTMLTable("http://www.50states.com/abbreviations.htm", which=1)
df$region <- tolower(tab[match(df$State, tab[, 2]), 1])
states <- map_data("state")
choro <- merge(states, df, sort = FALSE, by = "region")
choro <- choro[order(choro$order), ]
ggplot(choro, aes(long, lat.x)) +
  geom_polygon(aes(group = group, fill = Count), colour="grey55") +
  coord_quickmap() + 
  facet_wrap(~Year)

首先,您必须将您的区域名称df$Statestates$region. 然后,地图数据与您的数据框合并并按顺序排列。最后,情节使用ggplot是小菜一碟。

在此处输入图像描述

于 2016-02-06T12:05:34.747 回答