我的酒吧都是粉红色的,想要知道如何将它们从浅到深改变为从红色到蓝色,从白色到红色等颜色。
barplot(d1[1:25,]$freq, las = 2, names.arg =
stri_trans_totitle(d1[1:25,]$word),
col = "pink", main ="Most Frequent Words \n in The Three Musketeers",
ylab = "Word frequencies", ylim=c(0,2000))
答案 0 :(得分:2)
对于barplot()
中提供的每个height
值,请创建相应的颜色。在这种情况下,我创建了一个颜色调色板,从灰色渐变到深蓝色。
Color Picker帮助我将一般颜色转换为hexadecimal color values。
# create data frame
df <- data.frame(
id = 1:5
, Coolness_Level = 1:5
, Coolness_Color = NA
, stringsAsFactors = FALSE
)
# view data
df
# id Coolness_Level Coolness_Color
# 1 1 1 NA
# 2 2 2 NA
# 3 3 3 NA
# 4 4 4 NA
# 5 5 5 NA
# I want colors to progress
# from gray to dark blue
color.function <- colorRampPalette( c( "#CCCCCC" , "#104E8B" ) )
# decide how many groups I want, in this case 5
# so the end product will have 5 bars
color.ramp <- color.function( n = nrow( x = df ) )
# view colors
color.ramp
# [1] "#CCCCCC" "#9DACBB" "#6E8DAB" "#3F6D9B" "#104E8B"
# assign every row in df
# a color
# based on their $Coolness_Level
df$Coolness_Color <-
as.character(
x = cut(
x = rank( x = df$Coolness_Level ) # used to assign order in the event of ties
, breaks = nrow( x = df ) # same as the 'n' supplied in color.function()
, labels = color.ramp # label the groups with the color in color.ramp
)
)
# view the data
df
# id Coolness_Level Coolness_Color
# 1 1 1 #CCCCCC
# 2 2 2 #9DACBB
# 3 3 3 #6E8DAB
# 4 4 4 #3F6D9B
# 5 5 5 #104E8B
# make barplot
# and save as PNG
png( filename = "my_cool_barplot.png"
, units = "px"
, height = 1600
, width = 1600
, res = 300
)
barplot( height = df$Coolness_Level
, names.arg = df$id
, las = 1
, col = df$Coolness_Color
, border = NA # eliminates borders around the bars
, main = "Is Coolness Correlated with Higher ID #s?"
, ylab = "Coolness Level"
, xlab = "ID #"
)
# shut down plotting device
dev.off()
# end of script #
答案 1 :(得分:2)
根据?barplot
:
col a vector of colors for the bars or bar components. By default, grey is used if height is a vector, and a gamma-corrected grey palette if height is a matrix.
您需要将所需的颜色作为矢量添加到col
参数中。如果指定的颜色少于条形,则颜色将从一开始就被回收。
首先生成一些数据。
# Load packages
library(dplyr, warn.conflicts = FALSE, quietly = TRUE, )
# Generate some miles per gallon per number of cylinders data using the mtcars
foo <- mtcars %>%
group_by(cyl) %>%
summarise(mpg = mean(mpg))
彩虹色情节
with(foo, barplot(mpg,
names.arg = cyl,
xlab = "Number of cylinders",
ylab = "Mean miles per gallon",
col = rainbow(3)))
使用灰度绘图
with(foo, barplot(mpg,
names.arg = cyl,
xlab = "Number of cylinders",
ylab = "Mean miles per gallon",
col = grey.colors(3)))
制作自己的颜色渐变,然后绘制
pal <- colorRampPalette(colors = c("lightblue", "blue"))(3)
with(foo, barplot(mpg,
names.arg = cyl,
xlab = "Number of cylinders",
ylab = "Mean miles per gallon",
col = pal))
使用用户指定的调色板进行绘图
with(foo, barplot(mpg,
names.arg = cyl,
xlab = "Number of cylinders",
ylab = "Mean miles per gallon",
col = c("#E69F00", "#56B4E9", "#009E73")))