Đọc dữ liệu

library(ggplot2)
library(plyr)
t = "C:\\Users\\Admin\\Desktop\\tyle.csv"
duy = read.csv(t)
head(duy)
##          bv hoachat   drp tyle
## 1 Duc Giang    5-FU    Co 50.0
## 2 Duc Giang    5-FU Khong 50.0
## 3  Huu Nghi    5-FU    Co 37.4
## 4  Huu Nghi    5-FU Khong 62.6
## 5 Thai Binh    5-FU    Co 89.9
## 6 Thai Binh    5-FU Khong 10.1

Đổi level biến drp

duy$drp = factor(duy$drp, levels = c("Khong", "Co"))
attach(duy)

Tạo tâp con các thuốc

oxa = subset(duy, hoachat == "Oxaliplatin")
leuco = subset(duy, hoachat == "Leucovorin")
fu = subset(duy, hoachat == "5-FU")

Vẽ biểu đồ so sánh DRP của 5-FU giữa các BV

#Biểu đồ bar chart cơ bản
p <- ggplot() + geom_bar(aes(y = tyle, x = bv, fill = drp), data = fu, stat="identity")
p

#Thêm data lables
p1 <- p + geom_text(data=fu, aes(x = bv, y = tyle,label = paste0(tyle,"%")), size=4)
p1

# Chỉnh vị trí data lables
## Tạo biến "vị trí"
fu <- ddply(fu, .(bv),transform, vitri = cumsum(tyle) - (0.5 * tyle))
oxa <- ddply(oxa, .(bv),transform, vitri = cumsum(tyle) - (0.5 * tyle))
leuco <- ddply(leuco, .(bv),transform, vitri = cumsum(tyle) - (0.5 * tyle))

Biểu đồ hoàn chỉnh

p =  ggplot() + geom_bar(aes(y = tyle, x = bv, fill = drp), data = fu, stat="identity") + geom_text(data=fu, aes(x = bv, y = vitri, label = paste0(tyle,"%")), size=4)
p

Chỉnh màu

mau1 = c("#40b8d0", "#b2d183")
mau2 = c("#5F9EA0", "#E1B378")
p = p + scale_fill_manual(values=mau2)
p