我有一个工作表,分为四列,标记为x1,y1,x2,y2,共100行。每行表示从x1,y1开始到x2,y2结束的线段。如何在Excel中绘制这些段,而无需单独添加每个系列?完全选择这些列并插入图表只是将它们绘制为四个系列,100个点或100个系列,四个点。
编辑:是否有可以执行此操作的VBA代码?答案 0 :(得分:1)
我总是说,如果您花费五分钟处理数据,则可以在图表上节省五个小时。这是一种情况,其中不同的数据安排可以用更少的努力产生期望的结果。
如下所示排列您的数据。所有X值都在B列中,所有Y值在C列中,X,Y值对由空行分隔。给定此数据,Excel绘制每对X,Y值之间的线段,并绘制与空白行对应的间隙。我试图在A栏中添加标签以帮助解释:线段标记为A,B等。
选择B列和C列中的数据,然后插入XY散点图,其中包含直线和无标记。
答案 1 :(得分:0)
使用VBA是可能的。
我们有以下表格:
并遵循VBA代码:
Sub createChart()
With ActiveSheet
Set oChart = .ChartObjects.Add(Left:=300, Top:=0, Width:=200, Height:=200).Chart
oChart.ChartType = xlXYScatterSmooth
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
For r = 2 To lastRow
Set oSeries = oChart.SeriesCollection.NewSeries
oSeries.XValues = Union(.Cells(r, "A"), .Cells(r, "C"))
oSeries.Values = Union(.Cells(r, "B"), .Cells(r, "D"))
Next
oChart.SetElement msoElementLegendNone
End With
End Sub
结果: