【问题标题】:Multiple series into one line in line graph in Excel?Excel中的多个系列折线图?
【发布时间】:2017-05-08 15:53:08
【问题描述】:

我正在尝试在 Excel 中制作一个将多个系列组合成一条线的折线图。到目前为止,我所能创建的只是一个在同一 y 轴上有多条线的图表。是否可以将多个系列中的多个数据点按时间顺序组合在一起?

对于上下文:我正在尝试制作一个图表,显示 1880 年至 2017 年之间的月度温度。一月、二月等等,都是一个独立的系列。我可以制作一个条形图,按时间顺序显示每年和每个月,但是有没有办法将其转换为折线图,而不是为每个月生成多条线,而是一条线将所有月份数据点很好地组合在一起?

谢谢!

【问题讨论】:

  • 您可以创建一个包含每个月平均值的新列(使用公式=AVERAGE)并绘制此列。

标签: excel excel-charts


【解决方案1】:

如果您描述的数据中没有空白, 你有一张桌子 (2017-1880+1)=138 行,12 列。 这是制作数据单线图的一种方法 (示例中使用的一些随机虚构数据)。

不幸的是,标准的Excel 数据函数只能处理 日期不早于 1900 年 1 月 1 日, 例如,请参阅http://www.exceluser.com/formulas/earlydates.htm

但你很幸运,因为你只需要一年和一个月的数字。 在这种情况下,沿 x 轴的日期 可以用数字表示,整数部分是年份, 小数部分是一年的小数部分,代表一个月。

假设表在Sheet1!A2:M139, 选择 Sheet2 ,输入公式

=1880+FLOOR((ROW()-2)/12,1)+MOD(ROW()-2,12)/12

在单元格A2 中,并以您喜欢的任何方式将其复制到A1657。 例如选择A2,按Ctrl+C, 单击Name box 输入字段, 在其中输入 A2:A1657 范围并按 Ctrl+V。 就是这样,这将创建所有 x-axis 单线图的日期值。

下一步是填充范围B2:B1657 因此使用来自Sheet1 的月度数据。

选择单元格B2并输入公式

=TRANSPOSE(INDIRECT(ADDRESS(2+LEFT(A2,4)-1880,2,,,"Sheet1")&":"&ADDRESS(2+LEFT(A2,4)-1880,13)))

选择范围B2:B13, 单击公式末尾并按 Ctrl+Shift+Enter。 范围 B2:B13 现在填充了从 1880 年的 JanDecT 数据, 它仍然被选中。

Ctrl+C复制这个范围, 然后选择B14:B1657并按Ctrl+V

就是这样,表格中的所有读数 将在B2:B1657 范围内排列。

编辑

第二部分还有更简单的解决方案: 用公式填充范围B2:B1657

=INDEX(Sheet1!$B$2:$M$139,FLOOR((ROW()-2)/12,1)+1,MOD(ROW()-2,12)+1)

它只是转换当前点的线性x坐标, 根据后续行号((ROW()-2))转换成对应的行、列对 并用INDEX()函数提取表中的值。

【讨论】:

    猜你喜欢
    • 2020-01-14
    • 1970-01-01
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多