R语言 如何给散点图的点着色
散点图是一组点状的点,代表横轴和纵轴上的各个数据片段。但在默认情况下,这些点的颜色是黑色的,有时可能需要改变这些点的颜色。
在这篇文章中,我们将讨论如何在R编程语言中改变散点图中的点的颜色。
方法1:使用 plot()
简单的散点图是用 plot() 函数创建的。
语法: plot(x, y, main, xlab, ylab, xlim, ylim, axes)
让我们首先创建一个没有任何颜色的散点图,这样就可以明显看出区别。
例子 。
df<-read.csv("bestsellers.csv")
plot(dfReviews,dfPrice,pch=16)
输出 。
现在用plot()来改变散点图的颜色,只需选择要给各点分配不同颜色的列。将有助于区分各点的列传递给 “col “属性。
例子 。
df<-read.csv("bestsellers.csv")
plot(dfReviews,dfPrice,pch=16,col=df$Genre)
输出 。
方法2:使用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")
输出 。