R语言 对有两组的散点图使用不同的颜色/形状

R语言 对有两组的散点图使用不同的颜色/形状

在这篇文章中,我们将关注R编程语言中两组散点图的颜色/形状的不同方法。

R语言中的图可以用来对数据进行可视化分析。R中的ggplot2库被用来创建数据的可视化。该软件包可以通过以下命令下载并安装到工作空间。

install.packages("ggplot2")

数据框架可以用来包含以行和列排列的有组织的表格数据。列数据可以被分组。然后可以根据这些组中包含的值将数据点分类为参数段。

ggplot对象可以用来创建一个绘图对象。它也需要作为数据框架的列来绘制,参数是数据框架列中绘制属性的审美映射,如颜色、大小和形状。

该方法的语法如下。

ggplot(data , aes = )

参数:

  • data – 要绘制的数据
  • aes – 要使用的美学映射。

geom_point()方法可以被添加到ggplot对象中,以代表数据值的点的形式绘制数据。

使用geom_point()为不同组别对应的点着色

颜色参数可以被添加到ggplot对象的审美映射中,为数据点的值提供颜色。颜色参数可以分配给数据框的分组列,默认情况下,它为属于不同组的值分配不同的颜色。

ggplot(data, aes (...,colour = ))
# installing the reqd library
library("ggplot2")
 
# creating a data frame
data_frame <- data.frame(
  col1 = c("g1","g2","g1","g1",
           "g2","g1","g2","g2"),
  col2 = 1:8,
  col3 = LETTERS[1:8]
)
print ("Data Frame")
print(data_frame)
 
# plotting the col1 and col2 of data frame
# and assigning colors based on col1
ggplot(data_frame,aes(col1,col2,colour=col1))+geom_point()

输出

[1] "Data Frame"
> print(data_frame)
  col1 col2 col3
1   g1    1    A
2   g2    2    B
3   g1    3    C
4   g1    4    D
5   g2    5    E
6   g1    6    F
7   g2    7    G
8   g2    8    H

在R语言中对有两组的散点图使用不同的颜色/形状

改变绘图点的颜色

为了给数据点提供自定义的颜色,可以使用ggplot2包的一个方法,scale_color_manual。该方法可以用来获取十六进制以及字符串的颜色值矢量。然后,该向量被分配到该方法的数值参数中。矢量的长度应该与组的数量相等。然后,该方法根据数据框架的分组列分配不同的颜色。

scale_color_manual(values = col-vec)

参数:

  • col-vec – 颜色向量
# installing the reqd library
library("ggplot2")
 
# creating a data frame
data_frame <- data.frame(
  col1 = c("g1","g2","g1","g1",
           "g2","g1","g2","g2"),
  col2 = 1:8,
  col3 = LETTERS[1:8]
)
print ("Data Frame")
print(data_frame)
 
# assigning colors to different grouped
# points
cols <- c("blue","orange")
 
# plotting the col1 and col2 of data frame
# and assigning colors based on col1
ggplot(data_frame,aes(col1,col2,colour=col1))+geom_point()+
 
  # assigning customised colours to the plot
  scale_color_manual(values = cols)

输出

[1] "Data Frame"
> print(data_frame)
  col1 col2 col3
1   g1    1    A
2   g2    2    B
3   g1    3    C
4   g1    4    D
5   g2    5    E
6   g1    6    F
7   g2    7    G
8   g2    8    H

在R语言中对有两组的散点图使用不同的颜色/形状

改变绘图点的形状

可以为绘图中的数据点指定不同的形状。默认情况下,圆圈被绘制到指定的点上。如果我们希望自定义形状,可以在geom_point()方法中指定形状编号值作为形状参数。例如,形状编号15用于构造正方形,而形状编号17则构造三角形。

geom_point(shape = )
# installing the reqd library
library("ggplot2")
 
# creating a data frame
data_frame <- data.frame(
  col1 = c("g1","g2","g1","g1",
           "g2","g1","g2","g2"),
  col2 = 1:8,
  col3 = LETTERS[1:8]
)
print ("Data Frame")
print(data_frame)
 
# assigning colors to different grouped
# points
cols <- c("blue","orange")
 
# plotting the col1 and col2 of data frame
# and assigning square based shape
ggplot(data_frame,aes(col1,col2,colour=col1))+geom_point(shape = 15)

输出

[1] "Data Frame"
> print(data_frame)
  col1 col2 col3
1   g1    1    A
2   g2    2    B
3   g1    3    C
4   g1    4    D
5   g2    5    E
6   g1    6    F
7   g2    7    G
8   g2    8    H

在R语言中对有两组的散点图使用不同的颜色/形状

根据绘制的点的组别来分配形状

如果我们希望以不同的形状以及颜色来绘制分组,我们可以在ggplot对象的美学映射中指定并使用这两个参数。形状和颜色可以分配给数据框架中的分组列。下面的代码片段将橙色的圆圈分配给组 “g1″,蓝色的三角形分配给组 “g2”

# installing the reqd library
library("ggplot2")
 
# creating a data frame
data_frame <- data.frame(
  col1 = c("g1","g2","g1","g1",
           "g2","g1","g2","g2"),
  col2 = 1:8,
  col3 = LETTERS[1:8]
)
print ("Data Frame")
print(data_frame)
 
# assigning colors to different grouped points
cols <- c("blue","orange")
 
# plotting the col1 and col2 of data frame and
# assigning square based shape
ggplot(data_frame,aes(col1,col2,colour=col1,shape=col1))+
  geom_point()

输出

[1] "Data Frame"
> print(data_frame)
  col1 col2 col3
1   g1    1    A
2   g2    2    B
3   g1    3    C
4   g1    4    D
5   g2    5    E
6   g1    6    F
7   g2    7    G
8   g2    8    H

在R语言中对有两组的散点图使用不同的颜色/形状

然而,如果我们不把颜色参数分配给属于不同组的点,那么只有不同的形状被分配给不同的数据点以黑色。

# installing the reqd library
library("ggplot2")
 
# creating a data frame
data_frame <- data.frame(
  col1 = c("g1","g2","g1","g1",
           "g2","g1","g2","g2"),
  col2 = 1:8,
  col3 = LETTERS[1:8]
)
print ("Data Frame")
print(data_frame)
 
# assigning colors to different grouped
# points
cols <- c("blue","orange")
 
# plotting the col1 and col2 of data frame
# and assigning square based shape
ggplot(data_frame,aes(col1,col2,shape=col1))+
  geom_point()

输出

[1] "Data Frame"
> print(data_frame)
  col1 col2 col3
1   g1    1    A
2   g2    2    B
3   g1    3    C
4   g1    4    D
5   g2    5    E
6   g1    6    F
7   g2    7    G
8   g2    8    H

在R语言中对有两组的散点图使用不同的颜色/形状

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程