R中的堆积条形图

数据挖掘 机器学习 r 图表
2022-02-14 02:06:59

我想知道是否有人可以帮助重新标记“填充”变量“和堆积条形图上的 x 轴?

我的志向是:

  • 表示健康调查中六个域的填充变量,标题为'MR,Mob,SC,Act,Pain,Anx')
  • 并让 x 变量代表“健康状态”(0,1,2,3,4,5),而不是 X0,X1....X5
library(ggplot2)
library(dplyr)
library(reshape2)
library(viridis)
library(hrbthemes)
library(readxl)

data <- read.table(text = "0    1   2   3   4   5
MR  155 211 64  14  1   1
Mob 0   393 51  2   0   0
SC  0   427 12  7   0   0
Act 0   386 45  15  0   0
Pain    0   379 62  5   0   0
Anx 0   355 73  18  0   0", header = TRUE)


data$row <- seq_len(nrow(data))
data2 <- melt(data, id.vars ="row")

ggplot(data2, aes(x = variable, y = value, fill = row)) + 
  geom_bar(stat = "identity") +
  xlab("\nHealthState") +
  ylab("Count\n") +
  theme_bw()

在此处输入图像描述

感谢所有反馈。

1个回答

感谢您提供了一个很好的可重现代码,我忍不住回答这个问题:)

希望以下代码有帮助:

data <- read.table(text = "0    1   2   3   4   5
MR  155 211 64  14  1   1
Mob 0   393 51  2   0   0
SC  0   427 12  7   0   0
Act 0   386 45  15  0   0
Pain    0   379 62  5   0   0
Anx 0   355 73  18  0   0", header = TRUE)

#data$row <- seq_len(nrow(data))
data$row <- row.names(data)
data2 <- melt(data, id.vars ="row")
data2$variable <- sub("X",as.character(data2$variable),replacement="",fixed=TRUE)

ggplot(data2, aes(x = variable, y = value, fill = row)) + 
  geom_bar(stat = "identity") +
  xlab("HealthState") +
  ylab("Count") +
  theme_bw()