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

如何基于各列制作点图并突出首尾5个数据点

ggplot合并Value1/Value2与Number的点图并突出指定数据点

需求说明

需要在同一张图中展示Value1、Value2与Number的关系,同时让前5个和后5个数据点显示为更大尺寸。

解决方案步骤

1. 加载数据

首先加载提供的数据框:

df <- structure(list(Number = 1:23, Value1 = c(0.054830335, 1.19531842, 
3.27820329, 1.03530176, 5.77430976, 3.72944, -0.683513395, 0.029550239, 
2.487922644, 0.533448117, 0.098825565, -1.089022938, 2.301631235, 
-0.095666867, -1.359480317, -1.359480317, 1.089441628, 3.307589929, 
4.67838434, 3.562761178, 2.630726653, 1.795107015, 2.616255192
), Value2 = c(-0.296874921, 1.491747294, 2.951219257, 1.258677675, 
-8.68096591, 3.361029751, -1.824459195, -1.445827538, 1.889631269, 
-15.47774216, 3.085461276, -1.078286963, 0.948056999, -2.109354753, 
-1.36703068, -1.36703068, 1.074642842, 2.945589842, 3.757911793, 
2.765225717, 2.44452491, 1.784451022, 1.158493893)), class = "data.frame", row.names = c(NA, 
-23L))

2. 宽表转长表

使用gather(或tidyverse推荐的pivot_longer)将数据转换为适合分组绘图的长格式:

# 加载tidyverse包(包含gather/pivot_longer)
library(tidyverse)

# 宽表转长表
plotDf <- df %>% 
  gather(key = "Group", value = "Myvalue", -Number)

# 或者用pivot_longer(更推荐的现代语法)
# plotDf <- df %>% 
#   pivot_longer(cols = -Number, names_to = "Group", values_to = "Myvalue")

3. 添加标记变量区分需要放大的点

新增一列PointSize,标记前5个(Number 1-5)和后5个(Number 19-23)数据点:

plotDf <- plotDf %>% 
  mutate(PointSize = case_when(
    Number %in% 1:5 ~ "Large",
    Number %in% 19:23 ~ "Large",
    TRUE ~ "Small"
  ))

4. 绘制带大小区分的点图

在ggplot中通过size参数映射PointSize变量,实现指定点放大的效果:

ggplot(plotDf, aes(x = Number, y = Myvalue, color = Group, size = PointSize)) +
  geom_point() +
  # 自定义大小值,让大尺寸更明显
  scale_size_manual(values = c(Large = 4, Small = 2)) +
  theme_classic() +
  labs(x = "Number", y = "Value", title = "Value1/Value2 vs Number (突出前5和后5数据点)")

代码说明

  • case_when函数用于精准匹配需要放大的Number范围,生成分组标记
  • scale_size_manual可以自定义大/小尺寸的具体数值,根据需求调整
  • 保留了color = Group来区分Value1和Value2系列,同时用大小突出指定数据点

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 14:00:59