R 我有一个已排序的数据帧,但当我绘制它时,顺序就消失了。[右]
我有一个已排序的帧,但是当我使用ggplot来打印它时,单词并没有像在数据帧中那样以正确的顺序出现。代码如下:R 我有一个已排序的数据帧,但当我绘制它时,顺序就消失了。[右],r,ggplot2,R,Ggplot2,我有一个已排序的帧,但是当我使用ggplot来打印它时,单词并没有像在数据帧中那样以正确的顺序出现。代码如下: library(ggplot2) df<-data.frame(word=c("play","win","offer","http","right","internet"),frequency=c(321,355,123,899,564,433),type=c("nonspam","nonspam","spam","spam","spam","spam")) df=df[ord
library(ggplot2)
df<-data.frame(word=c("play","win","offer","http","right","internet"),frequency=c(321,355,123,899,564,433),type=c("nonspam","nonspam","spam","spam","spam","spam"))
df=df[order(df$type, df$frequency, decreasing = TRUE),]
ggplot(df, aes(x=frequency, y=word)) +
geom_segment(aes(yend=word), xend=0, color='grey50') +
geom_point(size=3, aes(color=type)) +
scale_color_brewer(palette='Set1', limits=c('Spam', 'non-Spam'), guide=F) +
theme_bw() +
theme(panel.grid.major.y = element_blank()) +
facet_grid(type ~ ., scales='free_y', space='free_y')
库(ggplot2)
df您必须对变量的级别进行排序。当您使用ggplot打印某些内容时,数据帧中的顺序并不重要(它使用级别顺序)。您点什么菜?按姓名或者按频率?如上所述,您必须设置系数:
df <- data.frame(word=c("play","win","offer","http","right","internet"),
frequency=c(321,355,123,899,564,433),
type=c("nonspam","nonspam","spam","spam","spam","spam"))
your_order <- order(df$frequency)
df$word <- factor(df$word, levels = df$word[your_order])
ggplot(df, aes(x=frequency, y=word)) +
geom_segment(aes(yend=word), xend=0, color='grey50') +
geom_point(size=3, aes(color=type)) +
scale_color_brewer(palette='Set1', limits=c('Spam', 'non-Spam'), guide=F) +
theme_bw() +
theme(panel.grid.major.y = element_blank()) +
facet_grid(type ~ ., scales='free_y', space='free_y')
df我改变了它,但又出现了同样的问题..参见这里:按频率,但每种类型。即,垃圾邮件的第一行是899,最后一行是123。然后355和321用于非垃圾邮件。但我试着重新订购,但失败了,你能告诉我怎么做吗?