CẬP NHẬT PHIÊN BẢN
Không cần phải chỉ định cột nhóm, ggplot
lệnh là nhiều hơn nữa compact.
library(ggplot2)
set.seed(1234)
# Data generating block
df <- data.frame(x=sample(1:14, 1000, replace=T))
# Colors
colors <- c(rep("red",7), rep("blue",4), rep("orange",3))
ggplot(df, aes(x=x)) +
geom_histogram(fill=colors) +
scale_x_discrete(limits=1:14)
OLD VERSION
library(ggplot2)
#
# Data generating block
#
df <- data.frame(x=sample(c(1:14), 1000, replace=TRUE))
df$group <- ifelse(df$x<=7, 1, ifelse(df$x<=11, 2, 3))
#
# Plotting
#
ggplot(df, aes(x=x)) +
geom_histogram(data=subset(df,group==1), fill="red") +
geom_histogram(data=subset(df,group==2), fill="blue") +
geom_histogram(data=subset(df,group==3), fill="orange") +
scale_x_discrete(breaks=df$x, labels=df$x)
tôi giả sử bạn có nghĩa là một âm mưu thanh, không phải là một biểu đồ? Có một sự khác biệt lớn. – joran
Dữ liệu là một âm mưu tần số từ dữ liệu không liên tục. Tôi vẽ nó bằng cách sử dụng 'geom_histogram'. Tôi không chắc chắn nếu điều này tạo thành một "biểu đồ thanh" hoặc "biểu đồ rời rạc". – drbunsen
Ok. Tôi có lẽ chỉ cần sử dụng geom_bar trong trường hợp đó. Và sau đó bạn chỉ cần một biến nhóm trong khung dữ liệu của bạn xác định nhóm màu bạn muốn, và sau đó ánh xạ đó để 'điền'. Có một số ví dụ trong '? Geom_bar'. – joran