首页 > 解决方案 > 如何在 r 中为波士顿数据集创建图形

问题描述

我的数据是“波士顿住房数据集”,我想生成一个如下所示的图形:在此处输入图像描述

该图的代码是用 Python 编写的(不幸的是,我不知道只有 python r)。代码链接:kaggle.com/prasadperera/the-boston-housing-dataset。但不是 y='medv​​' 我需要 y='crim' 和所有其他变量,以便找到与犯罪有有趣关联的预测因子。我曾尝试在 r 中执行此操作,我的代码是:在此处输入图像描述

非常感谢帮助,谢谢!

标签: rggplot2plotgraphgraphics

解决方案


在 ggplot 中做类似事情的一种方法是使用 faceting。这可能看起来像

library(ggplot2)
library(dplyr)
library(tidyr)
data(Boston, package="MASS")

Boston %>% 
  select(crim, lstat, indus, nox, ptratio, rm, tax, dis, age) %>% 
  gather(obs, val, -crim) %>% 
  ggplot(aes(val, crim, color=obs, fill=obs)) + 
  geom_smooth(method="lm", se=TRUE) +
  geom_point() +
  facet_wrap(~obs, scales="free_x") +
  scale_color_discrete(guide=FALSE) + 
  scale_fill_discrete(guide=FALSE)

基本的关键是重塑数据,这样您就可以只绘制一个图并对其进行刻面,而不是绘制许多图并排列它们。

在此处输入图像描述


推荐阅读