我想使用ggplot2和geom_bar创建一个堆积图表.
这是我的源数据:
Rank F1 F2 F3
1 500 250 50
2 400 100 30
3 300 155 100
4 200 90 10
Run Code Online (Sandbox Code Playgroud)
我想要一个堆积图表,其中x是等级,y是F1,F2,F3中的值.
# Getting Source Data
sample.data <- read.csv('sample.data.csv')
# Plot Chart
c <- ggplot(sample.data, aes(x = sample.data$Rank, y = sample.data$F1))
c + geom_bar(stat = "identity")
Run Code Online (Sandbox Code Playgroud)
这是我能得到的.我不确定如何堆叠其余的字段值.
也许我的data.frame格式不好?
这是我的barplot外观的一个简单示例:
x <- data.frame(aa=c(0.2,0.6,0.1), dd = c(1,2,3))
x <- melt(x, "dd")
y <- data.frame(bb=c(0.4,0.5), dd = c(1,2))
y <- melt(y, "dd")
z <- data.frame(cc=c(0.5,0.25,0.1,0.05), dd = c(1,2,3,4))
z <- melt(z, "dd")
x=rbind(x,y,z)
col=c("white","grey","blue","white","red","white","green","blue","green")
ggplot(x, aes(x = variable, y = value)) + geom_bar(stat = "identity", fill = col)
Run Code Online (Sandbox Code Playgroud)
我想知道是否有一种方法可以使我的条形圆角末端变圆,例如使用lineline选项(http://sape.inf.usi.ch/quick-reference/ggplot2/lineend)?
我想为 ggplot2 中的条形图边框着色。
以下脚本是一个示例。
如您所见,橙色边框与蓝色边框重叠。有什么方法可以避免这种行为并为图表内的边框着色吗?
library(tidyverse)
dat <- tibble(
dx = c("D+","D+","D-","D-"),
test = c("T+","T-","T+","T-"),
num = c(40,80,100,800)
)
ggplot(dat) +
geom_col(aes(x = dx, y = num, fill = dx, color = test),
size = 3) +
scale_color_manual(values = c("orange","blue"))
Run Code Online (Sandbox Code Playgroud)