我试图直观地表示美国姓氏的分布。具体来说,我试图表明分布是这样的,即最常见的名称(比如前 50 个)非常常见,但在那之后它会迅速下降。我希望支持的结论是,区分不在前 X 名中的名称中常见和不太常见的名称没有多大意义,因为它们都只是人口的一小部分。
我观察到所有姓氏在 2000 年人口普查中出现超过 100 次的频率。
## Data from the US Census, extracted and CSV re-hosted
## http://www.census.gov/genealogy/www/data/2000surnames/names.zip
names <- read.csv("http://samswift.org/files/app_c.csv")
我的直觉是按 50 个组对排名列表进行分类。最常见的名称是 1-50、51-100、...
sum50 <- tapply(names$count, (seq_along(names$count)-1) %/% 50, sum)
因此,我们现在拥有前 50 个名字、第二个 50 个名字等的总人口。
我正在对这样的图进行成像
,其中 x 轴是箱的有序因子(1-50、51-100 ..),y 轴是该箱中的总人口。我认为条形宽度也与 y 变量一起缩放很重要,这样正方形的面积才能传达人口的质量。
所以,真的是两部分的问题(虽然我认为这是不赞成的)
我如何使用提供的数据在 R 中生成此图。我通常使用ggplot2,但我不喜欢它。我尝试使用 geom_bar 并尝试设置宽度,但我什至没有生成任何功能。
您对如何可视化我所做的断言有更好的想法,还是完全不同意该断言?

