R 在散点图上绘制多个变量

R 在散点图上绘制多个变量,r,plot,scatter-plot,R,Plot,Scatter Plot,我创建了一个如下所示的数据集: > Data ZIP.Code Graduation.Rate Residences Tax_Payers Businesses Pot_Holes 1 60605 0.00876233 -0.43780716 -0.69756117 -0.705236816 -0.44078331 2 60607 -0.93779113 -0.62411552 0.45619155 0.429939383 -0.82

我创建了一个如下所示的数据集:

> Data
   ZIP.Code Graduation.Rate  Residences  Tax_Payers   Businesses   Pot_Holes
1     60605      0.00876233 -0.43780716 -0.69756117 -0.705236816 -0.44078331
2     60607     -0.93779113 -0.62411552  0.45619155  0.429939383 -0.82886125
3     60608     -0.35352395  0.77774127  0.83458530  0.694500368  0.28789804
...
每个特征的值都在
[-1,1]
范围内进行了缩放。
我希望有一个散点图,这样x轴有
邮政编码的标签,y轴有4个标记,每个标度值。如何在R中实现这一点?

将数据分解为一个长格式,这样您就可以将所有四个变量的数据传递给一个变量:

df_melt <- reshape2::melt(df, id.var = 'ZIP.Code')

# or
df_melt <- tidyr::gather(df, variable, value, Graduation.Rate:Pot_Holes)

df_melt
#    ZIP.Code        variable       value
# 1     60605 Graduation.Rate  0.00876233
# 2     60607 Graduation.Rate -0.93779113
# 3     60608 Graduation.Rate -0.35352395
# 4     60605      Residences -0.43780716
# 5     60607      Residences -0.62411552
# 6     60608      Residences  0.77774127
# 7     60605      Tax_Payers -0.69756117
# 8     60607      Tax_Payers  0.45619155
# 9     60608      Tax_Payers  0.83458530
# 10    60605      Businesses -0.70523682
# 11    60607      Businesses  0.42993938
# 12    60608      Businesses  0.69450037
# 13    60605       Pot_Holes -0.44078331
# 14    60607       Pot_Holes -0.82886125
# 15    60608       Pot_Holes  0.28789804


打底子


请注意,它存在一些问题,包括x轴排列非常糟糕。如果你真的喜欢基本图形,对代码进行处理可以解决这些问题。

将数据转换成长格式。@alistaire在重新造型后如何以这种方式绘制数据?类似于
ggplot(df,aes(x=ZIP\u code,y=value,color=variable))+geom\u point()
。如果你用a编辑,我可以给你一个更完整的答案。添加了df
数据的前三个向量。这够了吗?
ggplot(df_melt, aes(x = factor(ZIP.Code), y = value, colour = variable)) + 
    geom_point() + xlab('ZIP Code')
with(df_melt, plot(ZIP.Code, value, col = variable, pch = 19))