📜  如何在 R 中为散点图点着色?

📅  最后修改于: 2022-05-13 01:55:43.700000             🧑  作者: Mango

如何在 R 中为散点图点着色?

散点图是一组虚线,用于表示水平和垂直轴上的各个数据片段。但是默认情况下,这些点的颜色是黑色的,有时可能需要更改这些点的颜色。

在本文中,我们将讨论如何在 R 编程语言中更改散点图中点的颜色。

方法 1:使用 plot()

简单的散点图是使用plot()函数创建的。

让我们首先创建一个没有任何颜色的散点图,以便差异明显。

例子:



R
df<-read.csv("bestsellers.csv")
  
plot(df$Reviews,df$Price,pch=16)


R
df<-read.csv("bestsellers.csv")
  
plot(df$Reviews,df$Price,pch=16,col=df$Genre)


R
library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price))+geom_point()


R
library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,col=Genre))+geom_point()


R
library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
   geom_point(aes(color=Genre))


R
library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
   geom_point(aes(color=Genre))+
   scale_color_manual(values=c('Yellow','Green'))


R
library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
   geom_point(aes(color=Genre))+
   scale_color_grey()


R
library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
  geom_point(aes(color=Genre))+
  scale_color_brewer(palette="Accent")


输出:

现在要使用 plot() 更改散点图的颜色,只需根据应为各个点分配不同颜色的列选择列。将有助于区分点的列传递给“col”属性。

例子:

电阻

df<-read.csv("bestsellers.csv")
  
plot(df$Reviews,df$Price,pch=16,col=df$Genre)

输出:



方法二:使用ggplot

ggplot2 模块支持 geom_point()函数,可以帮助绘制散点图。让我们首先看看散点图如何在不提供任何颜色更改机制的情况下出现。

例子:

电阻

library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price))+geom_point()

输出:

通过使用 ggplot,可以通过多种方式为散点图添加颜色。让我们首先讨论默认情况下如何更改颜色。为此,只需将区分列传递给 col 属性。

例子:

电阻

library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,col=Genre))+geom_point()

输出:



产生相同结果的另一种方法是提供分组列来分组属性并再次在 geom_point() 中着色

例子:

电阻

library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
   geom_point(aes(color=Genre))

输出:

我们还可以通过使用带有可供选择的颜色列表的 scale_color_manual()函数来添加自定义颜色。

例子

电阻

library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
   geom_point(aes(color=Genre))+
   scale_color_manual(values=c('Yellow','Green'))

输出:



散点图也可以仅显示灰度的颜色,为此使用 scale_color_grey()函数。

例子:

电阻

library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
   geom_point(aes(color=Genre))+
   scale_color_grey()

输出:

scale_color_brewer()函数也是一种向散点图添加颜色的方法。此函数采用调色板的名称来选择颜色。

例子:

电阻

library("ggplot2")
  
df<-read.csv("bestsellers.csv")
  
ggplot(df,aes(x=Reviews,y=Price,group=Genre))+
  geom_point(aes(color=Genre))+
  scale_color_brewer(palette="Accent")

输出: