r - 如何不使用箱线图压缩数据?
问题描述
这是我必须分配给 boxplot() 的任务,但我不知何故压缩了数据。我是 R 新手 :(
我想问题是因为 x 轴标签太长并且没有垂直放置,所以我尝试过但失败了(基于这个Inserting labels in box plot in R on a 45 degree angle?)
examples <- read.csv("mov.development.csv", sep="\t")
library(dplyr)
movies_rated_67_times <- examples %>%
group_by(movie) %>%
summarize(count=n(), avg_rating=mean(rating))%>%
filter(count == 67)
boxplot_data <- examples %>%
filter(movie %in% movies_rated_67_times$movie) %>%
select(title, rating)
boxplot(rating~title,
data=boxplot_data,
xlab="Title",
ylab="Rating",
xaxt = "n"
)
text(seq_along(boxplot_data$title), par("usr")[3] - 0.5, labels = names(boxplot_data$title), srt = 90, adj = 1, xpd = TRUE);
正常代码:
examples <- read.csv("mov.development.csv", sep="\t")
library(dplyr)
movies_rated_67_times <- examples %>%
group_by(movie) %>%
summarize(count=n(), avg_rating=mean(rating))%>%
filter(count == 67)
boxplot_data <- examples %>%
filter(movie %in% movies_rated_67_times$movie) %>%
select(movie, rating)
boxplot(rating~movie,
data=boxplot_data,
xlab="Title",
ylab="Rating"
)
csv 文件:https ://drive.google.com/file/d/1ODM7qdOVI2Sua7HMHGEfNdYz_R1jhGAD/view?usp=sharing
解决方案
将您的标题列从因素转换为字符似乎可以解决它。此外,我会在一些电影名称中插入换行符并减小文本大小,使其适合情节
boxplot_data <- examples %>%
filter(movie %in% movies_rated_67_times$movie) %>%
mutate(title = as.character(title)) %>%
select(title, rating)
boxplot_data[boxplot_data$title == "Adventures of Robin Hood, The (1938)",]$title <- "Adventures of Robin Hood,\nThe (1938)"
boxplot_data[boxplot_data$title == "Wallace & Gromit: The Best of Aardman Animation (1996)",]$title <- " Wallace & Gromit: The Best of\nAardman Animation (1996)"
boxplot_data[boxplot_data$title == "Bridges of Madison County, The (1995)",]$title <- "Bridges of Madison County,\nThe (1995)"
par(cex.axis = 0.7)
boxplot(rating~title,
data=boxplot_data,
xlab="Title",
ylab="Rating")
推荐阅读
- sql-server - SQL Server - 重构大型联合查询
- android - Android - 以编程方式更改微调器弹出对话框颜色
- r - 在 R 中为特定条件创建 sql 表达式
- java - Java 计算器错误
- azure-cosmosdb - CosmosDB 存储过程
- nlp - gensim word2vec中most_similar和similar_by_vector之间的区别?
- java - 等待事件派发线程创建的 GUI
- python - python-saml (OneLogin) 等效于 SimpleSAMLphp 过滤器
- java - 使用 TCP Discover Statistics 点燃挂起
- php - Codeigniter 从外部文件夹/域加载视图