You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提升RStudio中电影预算散点图的可读性?

优化IMDB Top 250电影预算散点图的Y轴显示

可以通过两种思路解决Y轴可读性问题,无需大幅改动原有代码:

方法1:预处理数据,转换预算单位

直接将原始预算数值除以1000000转换成百万美元单位,再用于绘图,逻辑直观:

# 新增百万美元预算列
movies$budget_million <- movies$budget / 1000000

# 绘制散点图,Y轴使用转换后的数据
ggplot(data=movies, aes(x=genre, y=budget_million, 
                        color=genre, size=budget)) +
  geom_point() +
  labs(y="预算(百万美元)")  # 明确Y轴单位

方法2:直接格式化Y轴刻度标签(推荐)

无需修改原始数据集,借助scales包的格式化函数,直接调整Y轴显示样式:

library(ggplot2)
library(scales)

ggplot(data=movies, aes(x=genre, y=budget, 
                        color=genre, size=budget)) +
  geom_point() +
  scale_y_continuous(
    # 将数值转为百万单位并添加"M"后缀
    labels = dollar_format(suffix = "M", scale = 1e-6),
    # 按50M间隔设置刻度,避免标签拥挤
    breaks = seq(0, max(movies$budget, na.rm = TRUE), by = 50000000)
  ) +
  labs(y="预算")

额外优化:解决X轴类别拥挤问题

如果genre类别较多,X轴标签重叠,可添加旋转标签的样式:

ggplot(data=movies, aes(x=genre, y=budget, 
                        color=genre, size=budget)) +
  geom_point() +
  scale_y_continuous(
    labels = dollar_format(suffix = "M", scale = 1e-6),
    breaks = seq(0, max(movies$budget, na.rm = TRUE), by = 50000000)
  ) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))  # 旋转X轴标签45度并右对齐

内容的提问来源于stack exchange,提问作者Adeeb Graissy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 11:57:15