如何使用以下数据框绘制堆积条形图

发布于 2025-01-11 13:44:40 字数 354 浏览 0 评论 0原文

数据框低于

 tata4 <- data.frame(Subtype = c("Prostate", "Oesophagus", "Lung"),  
alive = c(88, 22, 100), dead = c(12, 55, 17), 
uncertain = c(10, 2, 2), total = c(186,46,202))  

我想要的是这个 - 每个“前列腺”、“食道和肺”的堆叠条形图。根据每种癌症,这些列应垂直细分为存活数、死亡数和不确定数。 (每个条形显示总数)。

我正在努力寻找正确的代码。我似乎无法找到一种方法使“填充”函数成为每个肿瘤部位的值。

有人可以帮忙吗?

dataframe is below

 tata4 <- data.frame(Subtype = c("Prostate", "Oesophagus", "Lung"),  
alive = c(88, 22, 100), dead = c(12, 55, 17), 
uncertain = c(10, 2, 2), total = c(186,46,202))  

what I want is this - A stacked barplot for each of the 'prostate', 'oesophagus and Lung. The columns should be subdivided vertically into the number alive,dead and uncertain according to each cancer. (with each bar displaying the total).

I'm struggling to find the right codes. I can't seem to find a way of making the 'fill' function the values of each tumour site.

Can someone please help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

披肩女神 2025-01-18 13:44:40

首先,您需要将数据转换为长格式:

tata4 <- pivot_longer(tata4, cols = 2:4, names_to = "Status", values_to = "Count")

然后您可以将数据提供给 ggplot:

ggplot(tata4, aes(Subtype, Count, fill = fct_rev(Status))) +
  geom_col()

给出:

< img src="https://i.sstatic.net/6gR8Z.jpg" alt="在此处输入图像描述">

我不确定您要在哪里绘制或注释总计

First you need to bring your data into long format:

tata4 <- pivot_longer(tata4, cols = 2:4, names_to = "Status", values_to = "Count")

Afterwards you can feed the data to ggplot:

ggplot(tata4, aes(Subtype, Count, fill = fct_rev(Status))) +
  geom_col()

Which gives:

enter image description here

I am not sure where you want to plot or annotate the total

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文