Разработвам базиран на Excel симулатор, който изпълнява конкретен тест 1000 пъти. Резултатът от всеки тест е две координати. Тези координати се записват в диапазон. След това създавам X-Y Scatter графика въз основа на този диапазон.
Това, което сега искам да направя, е да премина през всяка от 1000 точки на графиката и да променя цвета на тази точка въз основа на координатите X и Y на точката. По-конкретно, искам да взема X Mod (Half Max X) и Y Mod (Half Max Y), за да създам ефекта, че интензитетът на цвета ще нараства с точките близо до средата на графиката.
Кодът, който искам да използвам, е следният:
Temp = "'" + FirstCalcs.Name + "'!" + FirstCalcs.Cells(SOWD + 3, 2).Address + ":" + FirstCalcs.Cells(SOWD + 3, NumOfTests + 1).Address
Temp2 = "'" + FirstCalcs.Name + "'!" + FirstCalcs.Cells(SOWD + 4, 2).Address + ":" + FirstCalcs.Cells(SOWD + 4, NumOfTests + 1).Address
Set chtChart = Charts.Add
With chtChart
Do Until .SeriesCollection.Count = 1 ' remove extra series, which Excel spawns like rabbits, for some reason
.SeriesCollection(1).Delete
Loop
.Name = Institution + " summary"
.ChartType = xlXYScatter
'Link to the source data range.
'.SetSourceData Source:=FirstCalcs.Range(Temp)
.SeriesCollection(1).Values = Temp2
.SeriesCollection(1).XValues = Temp
For Each pts In .SeriesCollection(1).Points
.Format.Fill.Solid
'The next line is what I can't figure out
.MarkerBackgroundColor = RGB(XFunctionOf(.pts.XCoor), YFunctionOf(.pts.YCoor), 128)
.MarkerStyle = xlMarkerStyleDiamond
.MarkerSize = 10
End With
Next i
.HasTitle = True
.ChartTitle.Text = "Summary"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "T"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Time before T achieved"
.HasLegend = False
End With
Въпреки това не мога да намеря начин да получа стойността на X И Y, за да изпълня необходимата функция върху тях. Мога да променя цвета според номера на самата точка (1 до 1000), но това не е, което искам да направя - цветът е функция на координатите X, Y на всяка точка. Струва си да се каже, че обхватите както на X, така и на Y координатите са променливи, т.е. тестът не връща резултати, които са в една и съща скала всеки път.
Всяка помощ ще бъде изключително оценена и благодарим предварително.