在R中按数据帧的行进行绘图
我有一张这样的桌子在R中按数据帧的行进行绘图,r,dataframe,bar-chart,lines,R,Dataframe,Bar Chart,Lines,我有一张这样的桌子 hashtag Daily_Freq men women #a 10 6 4 #b 15 5 10 #c 20 8 12 我想为每个数据帧行(即每个标签)绘制男性和女性的频率。 在本例中,我想绘制3个条形图,每个条形图有两列-一列为男性,另一列为女性。 我如何才能做到这一
hashtag Daily_Freq men women
#a 10 6 4
#b 15 5 10
#c 20 8 12
我想为每个数据帧行(即每个标签)绘制男性和女性的频率。
在本例中,我想绘制3个条形图,每个条形图有两列-一列为男性,另一列为女性。
我如何才能做到这一点?一种解决方案是使用
gather
和ggplot2
作为:
#data
df <- read.table(text = "hashtag Daily_Freq men women
'#a' 10 6 4
'#b' 15 5 10
'#c' 20 8 12", header = T, stringsAsFactors = F)
library(tidyverse)
df <- df %>% select(-Daily_Freq) %>%
gather(key = Gender, value, -hashtag)
library(ggplot2)
ggplot(df, aes(x=hashtag, y=value, fill=Gender)) +
geom_bar(stat='identity', position='dodge')
一种解决方案是使用
聚集和ggplot2
作为:
#data
df <- read.table(text = "hashtag Daily_Freq men women
'#a' 10 6 4
'#b' 15 5 10
'#c' 20 8 12", header = T, stringsAsFactors = F)
library(tidyverse)
df <- df %>% select(-Daily_Freq) %>%
gather(key = Gender, value, -hashtag)
library(ggplot2)
ggplot(df, aes(x=hashtag, y=value, fill=Gender)) +
geom_bar(stat='identity', position='dodge')
使用重塑2
中的熔体的解决方案如下:
library(ggplot2)
library(reshape2)
df <- read.table(text = "hashtag Daily_Freq men women
'#a' 10 6 4
'#b' 15 5 10
'#c' 20 8 12",
header = TRUE)
ds <- melt(df, id.var = c("hashtag", "Daily_Freq"))
p <- ggplot(ds, aes(x=variable, y=value/Daily_Freq))
p <- p + geom_bar(stat='identity',
position='dodge',
aes(fill=hashtag))
p <- p + scale_colour_discrete()
p <- p + facet_grid(hashtag ~. )
show(p)
库(ggplot2)
图书馆(E2)
df利用Reforme2
中的melt
的解决方案如下:
library(ggplot2)
library(reshape2)
df <- read.table(text = "hashtag Daily_Freq men women
'#a' 10 6 4
'#b' 15 5 10
'#c' 20 8 12",
header = TRUE)
ds <- melt(df, id.var = c("hashtag", "Daily_Freq"))
p <- ggplot(ds, aes(x=variable, y=value/Daily_Freq))
p <- p + geom_bar(stat='identity',
position='dodge',
aes(fill=hashtag))
p <- p + scale_colour_discrete()
p <- p + facet_grid(hashtag ~. )
show(p)
库(ggplot2)
图书馆(E2)
df在使用之前创建命名矩阵
使用,可以将表转换为2x3矩阵,每个性别一行,每个唯一的hashtag值一列
然后,将新创建的矩阵提供给barplot()
中的height
参数
#加载数据
df在使用之前创建命名矩阵
使用,可以将表转换为2x3矩阵,每个性别一行,每个唯一的hashtag值一列
然后,将新创建的矩阵提供给barplot()
中的height
参数
#加载数据
df但是我想要同时绘制3个图,每个图一个hashtags@Student1000如果您可以绘制并共享期望的图形,那么我可以帮助您。@Student1000使用facet\u grid
查找另一个选项,但我希望同时绘制3个图形,每人一个hashtags@Student1000如果您可以绘制并共享预期的图形,那么我可以帮助您。@Student1000使用facet\u grid