Member 13650651 Ответов: 1

Как изменить цвет конкретной точки для гистограммы в excel C#


Excel.ChartObjects xlCharts = (Excel.ChartObjects)oSheet.ChartObjects(Type.Missing);
                     Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(10, 80, 450, 275);
                     oSheet.Shapes.Item("Chart 1").Top = (float)(double)oSheet.get_Range("A15", "A16").Top;
                     Excel.Chart Chart1 = myChart.Chart;
                     Chart1.ChartType = Excel.XlChartType.xlColumnClustered;

                     oRange = oSheet.get_Range("V1", "V15");
                     Chart1.SetSourceData(oRange, Type.Missing);

                     //Set the Chart Title 
                     Chart1.HasTitle = true;
                     Chart1.ChartTitle.Text = "5_lot_yield_trend_B2";


                     //Set the y-axis 

                     var B2yaxis = (Excel.Axis)Chart1.Axes(Excel.XlAxisType.xlValue, Excel.XlAxisGroup.xlPrimary);
                     B2yaxis.HasTitle = true;
                     B2yaxis.AxisTitle.Text = "Yield Percentage";

                     //Vertical Allignment of y-axis title

                     B2yaxis.AxisTitle.Orientation = Excel.XlOrientation.xlVertical;

                     //Set the X-axis
                     var B2xaxis = (Excel.Axis)Chart1.Axes(Excel.XlAxisType.xlCategory, Excel.XlAxisGroup.xlPrimary);
                     B2xaxis.HasTitle = true;
                     B2xaxis.AxisTitle.Text = "Lot Number";

                Excel.SeriesCollection seriescollectionB2= Chart1.SeriesCollection();
                Excel.Series B2series1 = seriescollectionB2.NewSeries();
                B2series1.XValues = oSheet.get_Range("A2", "A7");

             
               B2series1.Points(5).Color = System.Drawing.Color.Red; 


Привет. У меня есть код для построения гистограммы в Excel с помощью c#. Однако я хочу иметь другой цвет, например красный, для определенной точки, скажем, точки 5.
Однако у меня есть ошибка "недопустимый параметр - COMException был необработан" в строке
B2series1.Points(0).Color = System.Drawing.Color.Black


Как мне решить эту проблему? Большое вам спасибо за любую оказанную помощь!

Что я уже пробовал:

Я попробовал изменить название серии и добавил в систему.Чертеж для справок.

1 Ответов

Рейтинг:
0

Paraglide

Коллекция начинается с индекса 1 а не с 0