【发布时间】:2020-04-06 04:59:33
【问题描述】:
我想绘制人口普查数据以比较每个种族多年来的数据。
我的数据框将 1950-2010 年(每 10 年)作为行,将种族作为列。横截面的数据是给定年份该种族的百分比。
我希望我的折线图在 x 轴上绘制年份,在 y 轴上绘制种族。因此,对于我的 5 个“种族”变量,将有 5 条不同颜色的线都绘制在同一张图上。
我曾尝试观看视频并在这里到处搜索,但我发现似乎没有任何东西能按我想要的方式工作。
编辑: 我重构了代码并构建了自己的数据框,而不是让它返回一个矩阵。
但是,我希望右侧说“Race”,然后有我的 5 行。我正在努力让一条线在其他 4 条之前显示出来。
编辑:
到目前为止,我已经在我的代码中弄清楚了 - Allston <- ggplot(data = dataAllston, aes(Year, White.pct, group = 1)) + geom_point(aes(color = "orange")) + geom_line(aes(color = "orange"))
我想以 0.2 为增量从 0-1 缩放 Y 轴,并将 Y 设为“Race”而不是单独的标签。不仅仅是重新标记——我希望图表能够代表实际的增加/减少,而不是像现在这样斜向下的直线。
我认为学习如何制作可重现的代码比进行调整需要更长的时间。
编辑:
dput(dataAllston)
返回
structure(list(Year = c(1950, 1960, 1970, 1980, 1990, 2000, 2010
), White.pct = structure(7:1, .Label = c("57.0", "59.0", "63.0",
"78.0", "90.8", "98.0", "98.3"), class = "factor"), BlackOrAA.pct =
structure(c(2L,
1L, 3L, 4L, 5L, 4L, 4L), .Label = c("1.20", "1.30", "2.60", "5.00",
"9.00"), class = "factor"), Hispanic.pct = structure(c(1L, 1L,
3L, 4L, 2L, 2L, 2L), .Label = c("0.00", "13.0", "3.10", "6.00"
), class = "factor"), AsianOrPI.pct = structure(c(1L, 1L, 5L,
6L, 2L, 3L, 4L), .Label = c("0.00", "14.0", "18.0", "20.0", "3.20",
"9.00"), class = "factor"), Other.pct = structure(c(2L, 1L, 3L,
4L, 5L, 4L, 4L), .Label = c("1.20", "1.30", "2.60", "5.00", "9.00"
), class = "factor")), class = "data.frame", row.names = c(NA,
-7L))
【问题讨论】:
-
请提供
dput(dataAllston)的输出,我们无法复制粘贴您的数据集并在我们的会话中检查哪些代码将起作用。见:stackoverflow.com/questions/5963269/…
标签: r ggplot2 graph linegraph census