我不明白如何在 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 已正确获取我的两个系列(X1 和 X2),但我想翻转 X 轴和 Y 轴。结果应如下所示:
我必须通过在 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