R语言 如何在ggplot2绘图中为分类变量分配颜色
在这篇文章中,我们将看到如何在R编程语言的ggplot2图中为分类变量分配颜色。
注意: 这里我们使用的是散点图,同样的方法也可以应用于任何其他图形。
使用的数据集 。
编号 | 年份 | 点数 | 用户 |
---|---|---|---|
1 | 2011 | 30 | 用户1 |
2 | 2012 | 20 | 用户2 |
3 | 2013 | 15 | 用户3 |
4 | 2014 | 35 | 用户4 |
5 | 2015 | 50 | 用户5 |
为了创建一个R图,我们使用ggplot()函数,为了使其成为散点图,我们在ggplot()函数中加入geom_point()函数。默认情况下,该图有以下颜色。
例子 。
# Load Library
library(ggplot2)
# Create DataFrame for Plotting.
data <- data.frame(Year = c(2011, 2012, 2013, 2014, 2015),
Points = c(30, 20, 15, 35, 50),
Users = c("user1", "user2", "user3",
"user4", "user5"))
# Create ggplot2 ScatterPlot.
ggplot(data, aes(Year, Points, color = Users)) +
geom_point(size = 10)
输出 。
使用默认颜色的ggplot2绘制散点图
在R编程中,我们有许多内置的函数来创建我们自己的离散尺度,如scale_fill_manual、scale_size_manual、scale_shape_manual、scale_linetype_manual等等。为了给分类数据分配所需的颜色,我们使用其中的 scale_color_manual() 函数,该函数用于缩放(映射)手动颜色。
语法: scale_color_manual(values)
参数 :
- values : 一组用于映射数据的美学值。在这里,我们采用所需的一组颜色。
返回: 在数据上标出手动的颜色值。
例子 。
# Load Library
library(ggplot2)
# Create DataFrame for Plotting
data <- data.frame(Year = c(2011, 2012, 2013, 2014, 2015),
Points = c(30, 20, 15, 35, 50),
Users = c("user1", "user2", "user3",
"user4", "user5"))
# Create a ScatterPlot with fixed colors of
# points(data).
ggplot(data, aes(Year, Points, color = Users)) +
geom_point(size = 10)+
scale_color_manual(values = c("green", "orange", "red",
"yellow", "blue"))
输出:
带有固定颜色的图画