R 具有一致颜色方案的并排条形图
我一直在使用来自共享一个公共变量的不同数据帧的数据,在多个条形图中使用一致性。这种方法是基于对问题的回答。在每一种情况下,我都在看一个变量 我现在想做的是在同一个图上看两个变量,保持配色方案的一致性。除了R 具有一致颜色方案的并排条形图,r,ggplot2,R,Ggplot2,我一直在使用来自共享一个公共变量的不同数据帧的数据,在多个条形图中使用一致性。这种方法是基于对问题的回答。在每一种情况下,我都在看一个变量 我现在想做的是在同一个图上看两个变量,保持配色方案的一致性。除了A的两个条应该是相同的颜色(调色板中的第一个)之外,B的两个条应该是相同的颜色(调色板中的第二个)等等,它应该看起来类似于以下内容。 样本数据: mydata <- data.frame( "Channel" = LETTERS[1:11], "V1
A
的两个条应该是相同的颜色(调色板中的第一个)之外,B
的两个条应该是相同的颜色(调色板中的第二个)等等,它应该看起来类似于以下内容。
样本数据:
mydata <- data.frame( "Channel" = LETTERS[1:11],
"V1" = seq(1100, 100, -100),
"V2"= seq(110, 10, -10) )
我一直试图在ggplot中这样做(这是我的偏好),但没有成功。我使用了包重塑2
来熔化数据,然后使用填充,但这只得到两种颜色。我还尝试过以各种方式使用position='dodge'
,但没有成功。对于第二个变量,我可以得到类似的最终结果,将条形图和折线图结合起来,但我更喜欢双条形图
我也更愿意坚持ggplot,但任何解决方案都将不胜感激 我用一点技巧解决了它。我将色彩快感设置为频道
,将系列
设置为变量
。第二种方法防止在使用position=“dodge”
时,具有相同频道的两个值
彼此重叠打印
库(ggplot2)
图书馆(E2)
图书馆(dplyr)
mydata您可以通过指定每个相邻条重复的颜色来使用基本图形
barplot(t(mydata[,2:3]), beside=T, col=rep(brewer.pal(11, "RdGy"), each=2), names.arg=LETTERS[1:11])
示例代码给出错误“height”必须是向量或矩阵
@dww抱歉,感谢您的捕获。我被困在ggplot2
模式中,没有将参数转换为矩阵。太棒了,谢谢!正是我需要的。而ggplot
是我所希望的方法。谢谢!有多个选项总是好的,这段代码更简单。
library(ggplot2)
library(reshape2)
library(dplyr)
mydata <- data.frame( "Channel" = LETTERS[1:11],
"V1" = seq(1100, 100, -100),
"V2"= seq(110, 10, -10) )
df <- mydata %>%
melt(id = c("Channel"))
ggplot(df, aes(x = Channel, y = value, fill = Channel, family = variable)) +
geom_bar(stat = "identity", position = "dodge", color = "black") +
scale_fill_brewer(palette = "RdGy")
barplot(t(mydata[,2:3]), beside=T, col=rep(brewer.pal(11, "RdGy"), each=2), names.arg=LETTERS[1:11])