可以拿到任意多个颜色,当然颜色越多,分辨力越低。
barplot(rep(1,8), col=rainbow(8),border=NA)
rainbow(8)
[1] "#FF0000FF" "#FFBF00FF" "#80FF00FF" "#00FF40FF" "#00FFFFFF" "#0040FFFF"
[7] "#8000FFFF" "#FF00BFFF"
barplot(rep(1,20), col=rainbow(20),border=NA) #分辨力降低
par(mfrow=c(4,1), mar=c(0,2,2,0) )
n=10
#heat.colors()从红色渐变到黄色,再变到白色
barplot(rep(1,n), col= heat.colors(n), border=NA, main="heat.colors")
#terrain.colors() 从绿色渐变到黄色,再到棕色,最后到白色
barplot(rep(1,n),col=terrain.colors(n), border=NA, main="terrain.colors")
#topo.colors() 从蓝色渐变到青色,再到黄色,最后到棕色
barplot(rep(1,n),col=topo.colors(n), border=NA, main="topo.colors")
#cm.colors() 从青色渐变到白色,再到粉红色
barplot(rep(1,n),col=cm.colors(n), border=NA, main="cm.colors")
(1)
library(RColorBrewer)
display.brewer.all() #显示全部颜色集合
# 挑选某一个集合
#barplot(rep(1,8),col=brewer.pal(8,"Dark2")[1:8]) #基础语法
myColors=brewer.pal(8,"Dark2")[1:8] #Dark2主题有8种颜色
par(mfrow=c(4,1), mar=c(0,2,2,0) )
barplot(rep(1,8),col= myColors, main="Dark2" )
#
n=15 #nrow(df)
barplot(rep(1, n ),col= colorRampPalette(colors = myColors)( n ),main="Default:linear") #则由8种生成15种颜色
barplot(rep(1, n ),col= colorRampPalette(colors = myColors, interpolate ="linear")( n ),main="linear" ) #插值方式
barplot(rep(1, n ),col= colorRampPalette(colors = myColors, interpolate ="spline")( n ),main="spline") #插值方式
colSet2 # 获取颜色16进制表示
# [1] "#1B9E77" "#D95F02" "#7570B3" "#E7298A" "#66A61E" "#E6AB02" "#A6761D" "#666666"
解释:
n=5barplot(rep(1,n), col= colorRampPalette (colors = c('red', 'white'))( n ))
colorRampPalette 函数可以混合任意两种及更多颜色,通过插值,生成更多色彩。
(2) 目测其他几个预制颜色集合
n=8barplot(rep(1,n),col= brewer.pal(n,"Set2")[1:n] ) # set2 共8种颜色
ref:
biomooc.com
不知道你问的是在同一图形中添加点(类似画散点图)还是要把屏幕一分为多。添加的话,用完plot,添加点用points,添加线用lines。
简单点的应用类似:
plot(X,Y)
points(X,Y1)
这样的感觉。
一分为多的话,用split.screen。
上我自己最近写的代码做个例子:
jpeg(filename="geeseP3.jpeg") #画jpeg图
split.screen(c(1,2)) #分屏幕为左右两边
screen(1) #屏幕1预备输出
plot(X2,Y,type="p",xlab="X2",ylab="Y",main="Plotting of X2 and Y")
screen(2) #屏幕2预备输出
plot(X2,Y,type="l")
dev.off()
R语言使用shiny包创建web界面。
使用 shinydashboard 包和 shinytheme ,美化界面样式,设置界面主题,提升界面整体水平。
Shiny界面图库
shinydashboard
shinytheme界面主题
shinydashboard包创建的基础界面样式分为三个板块:标题,侧边栏,主界面。
shiny包支持 recharts 包的使用,可以创建界面的交互式图形
shinyapps网址
Rstudio推出了 shiny 和 shinyapps 两个包,shiny可以帮助我们更快更好的开发一些app,然后shinyapps可以提供了一个免费的云服务器,供我们发布app。
以知乎 用R语言分析NBA球员得分 分析结果为主题,做web界面展示。
侧边栏设置两个选项:datas display和players' score,点击不同的选项,展示对应的内容。
datas display界面展现3个数据框:NBA,Away team,Host team。通过show 10/25/50 entries 等控制页面展示数值的条数;右上角search实现数值的搜索功能(使用DT包实现)。
players' score展示主队、客队球员得分情况。使用ggplot2包绘制客队各个球员的得分情况
使用 recharts 包绘制主队各个球员的得分情况,recarts包实现图形交互式展现。
建立完UI界面后,设置对应的数值,表格,图形,使web界面变成动态的界面。
挣扎了好久终于把界面创建成功了,shiny的初步学习先画个句号。