Im tring to plot stacked bar plot, and label each bar with value I calculated. I have vector of values for eah bar. If I use the vector as is I get the warning " Error: Aesthetics must be either length 1 or the same as the data (156): label", so I added the vector to the data, using rep for all the rows for each bar, but when I used geom_text, I get for each bar many labels(The number of stacks in each bar).
my code:
g <- ggplot(df, aes(x = RNA, y = Value))
g + geom_bar(aes(fill=fct_reorder(Cancer, Value, sum, desc=TRUE)), width = 0.5, stat="identity") +
geom_text(aes(label = lbls), vjust = -0.5, position = position_dodge(0.9))+
theme(axis.text.x = element_text(angle=90, vjust=0.6),
axis.text.y = element_blank()) +
scale_fill_manual(values=c("#df4a7a",
"#c97b7a",
"#de5137",
"#d08935",
"#a78d57",
"#d2d23e",
"#cfd88d",
"#67993f",
"#76d854",
"#66db9f",
"#529477",
"#81dacf",
"#6bb2d5",
"#6387d7",
"#777ba7",)) +
labs(title="Cancer Types",
subtitle="")
My data Frame with the column of values to label:
Cancer RNA Value Tabs
mp.117 Breast snoRNA 3 0.268
tmp.118 Digestive/Gastrointestinal snoRNA 0 0.268
tmp.119 Endocrine and Neuroendocrine snoRNA 1 0.268
tmp.120 Eye snoRNA 0 0.268
tmp.121 Genitourinary snoRNA 0 0.268
tmp.122 Germ Cell snoRNA 0 0.268
tmp.123 Gynecologic snoRNA 0 0.268
tmp.124 Head and Neck snoRNA 0 0.268
tmp.125 Hematologic/Blood snoRNA 0 0.268
tmp.126 Musculoskeletal snoRNA 1 0.268
tmp.127 Neurologic snoRNA 0 0.268
tmp.128 Respiratory/Thoracic snoRNA 0 0.268
tmp.129 Skin snoRNA 0 0.268
tmp.143 Breast circRNA | Circular RNA 3 0.005
tmp.144 Digestive/Gastrointestinal circRNA | Circular RNA 1 0.005
tmp.145 Endocrine and Neuroendocrine circRNA | Circular RNA 1 0.005
tmp.146 Eye circRNA | Circular RNA 0 0.005
tmp.147 Genitourinary circRNA | Circular RNA 1 0.005
tmp.148 Germ Cell circRNA | Circular RNA 0 0.005
tmp.149 Gynecologic circRNA | Circular RNA 4 0.005
tmp.150 Head and Neck circRNA | Circular RNA 3 0.005
tmp.151 Hematologic/Blood circRNA | Circular RNA 0 0.005
tmp.152 Musculoskeletal circRNA | Circular RNA 0 0.005
tmp.153 Neurologic circRNA | Circular RNA 0 0.005
tmp.154 Respiratory/Thoracic circRNA | Circular RNA 1 0.005
tmp.155 Skin circRNA | Circular RNA 0 0.005
The vector with the labels:
lbl = c(0.821, 0.899, 0.410, 0.028, 0.257, 0.217, 0.474, 0.220, 0.210, 0.268, NaN, 0.005)
Thanks!!