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

Google Sheets折线图隐藏部分图例项并保留末尾数据标签

Google Sheets折线图问题解决办法

一、移除注释项图例的可行方案

选中图表后,点击右上角的「自定义」标签:

  • 找到「图例」设置区,点击「图例项」的下拉框,选择「自定义」
  • 在弹出的列表里,找到那个无文字的注释系列,取消它的勾选框即可。这样既能保留最后一个数据点的标签,又能把图例里的空白短划线去掉,只显示你需要的Gained、Lost、Net、Total这几个图例项。

二、仅显示折线最后一个数据点标签的其他方法

方法1:用公式生成专属标签列

在数据区新增一列(比如命名为「末尾标签」),用公式判断当前行是否为该数据列的最后一行,只在最后一行显示数值,其余行留空。举个例子:
假设你的数据在B列,日期在A列,公式可以写:
=IF(ROW(B2)=MAX(FILTER(ROW(B:B),B:B<>"")),B2,"")
把这一列作为新的「标签」系列添加到图表里,然后设置这个系列的折线颜色为「无」,只保留标签显示就行。

方法2:手动逐个设置

选中目标折线的最后一个数据点,右键选择「添加数据标签」;接着选中该系列的其他数据点标签,按Delete键删掉,只留最后一个。这种方法适合数据量不大的情况。

方法3:用Apps脚本自动批量设置

打开「扩展程序」→「Apps脚本」,粘贴以下代码(根据你的实际图表和系列调整参数):

function addLastPointLabels() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const chart = sheet.getCharts()[0]; // 这里取第一个图表,可根据实际情况修改索引
  const chartRanges = chart.getRanges();
  
  chartRanges.forEach((range, index) => {
    const valueCount = range.getValues().filter(row => row[0] !== "").length;
    if (valueCount === 0) return;
    
    chart = chart.modify()
      .setOption(`series.${index}.dataLabels`, {
        enabled: true,
        ranges: [{ startRow: valueCount, startColumn: 0, endRow: valueCount, endColumn: 0 }]
      })
      .build();
  });
  
  sheet.updateChart(chart);
}

保存后运行脚本,就能自动给每个系列的最后一个数据点加上标签。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 16:45:31