Фон
Я получаю StdOut из python и анализирую информацию, поэтому у меня есть набор из N много (x, y) координат, принадлежащих M много серий. Я хотел бы иметь возможность наносить на график каждую точку по отдельности и контролировать их соответствующие свойства, т.е. цвет, форму, размер маркера и т. Д. c.
Однако все примеры, которые я до сих пор видел, связаны с необходимостью построения графика. все значения сразу, а затем l oop через серию. Моя желаемая функциональность выглядела бы как приведенный ниже псевдокод.
.SeriesCollection(seriesNumber).AddPoint(PtNum).xvalues = x
.SeriesCollection(seriesNumber).AddPoint(PtNum).values = y
.SeriesCollection(seriesNumber).Point(PtNum).markersize = some integer
Дополнительная информация
Данные, которые я получаю от python, соответствуют этому формату и хранятся в виде вариант.
SeriesName, Point# in the series, X or O, SeriesNumber, xcoord,ycoord, instance number
O представляет необходимость новой серии, X представляет уже существующую серию
номер экземпляра - количество повторений точки
Точка # Индекс точки координаты в серии
Пример строк данных
series1,1,O,1,0.25,64,1
series1,2,X,1,0.25,64,2
series2,1,O,2,0.3,90,1
Текущий код
Dim pyData() As Variant
pyData = Connect_2py.recv_Data(xArgs, yArgs, seriesArgs) 'exec python script and returns data
For i = 0 To UBound(pyData) - 1
py_lineData = Split(pyData(i), ",")
createSeries = StrComp(py_lineData(2), "O", vbBinaryCompare) = 0
seriesName = py_lineData(0)
seriesNumber = CInt(py_lineData(3))
If createSeries Then
.SeriesCollection.NewSeries
.SeriesCollection(seriesNumber).Name = seriesName
Debug.Print ("Hooray new series has been made")
End If
'ENTER CODE HERE TO ADD EACH DATAPOINT TO A SPECIFIED SERIES
Next