如何在具有多个系列的 Excel 散点图中翻转 X 轴和 Y 轴

如何在具有多个系列的 Excel 散点图中翻转 X 轴和 Y 轴

我不明白如何在 Excel 中执行简单的 90 度轴操作。

这是我的数据:

╔════╦══════╦═══════╗
║ Y  ║  X1  ║  X2   ║
╠════╬══════╬═══════╣
║  1 ║ 0.00 ║ -1.00 ║
║  2 ║ 0.50 ║ 0.00  ║
║  3 ║ 0.67 ║ 0.33  ║
║  4 ║ 0.75 ║ 0.50  ║
║  5 ║ 0.80 ║ 0.60  ║
║  6 ║ 0.83 ║ 0.67  ║
║  7 ║ 0.86 ║ 0.71  ║
║  8 ║ 0.88 ║ 0.75  ║
║  9 ║ 0.89 ║ 0.78  ║
║ 10 ║ 0.90 ║ 0.80  ║
╚════╩══════╩═══════╝

默认散点图如下所示:

Excel 默认-请点击我

Excel 已正确获取我的两个系列(X1 和 X2),但我想翻转 X 轴和 Y 轴。结果应如下所示:

Excel 已编辑-请点击我

我必须通过在 Excel 的“选择数据...”对话框中手动编辑每个系列的 X 和 Y 值来创建它。对于一个或两个系列来说,这没问题,但如果我想绘制 100 个系列怎么办?我不可能手动重新配置它们。那么我该如何格式化我的数据,以便 Excel 将第一列视为 Y 值,将每个后续列视为每个新系列的相应 X 值?谢谢

答案1

我认为在 Excel 中没有办法做到这一点。

使用 vba 这样的宏就可以工作。这将交换活动图表中的所有系列。不包含任何错误检查或任何内容。

Sub swap()
Dim seriesformula() As String

For Each mySeries In ActiveChart.SeriesCollection
    seriesformula() = Split(mySeries.Formula, ",")
    mySeries.Formula = seriesformula(0) & "," & seriesformula(2) & "," & seriesformula(1) & "," & seriesformula(3)
Next

End Sub

相关内容