asp.net c # как использовать пользовательские цвета в диаграммах - PullRequest
0 голосов
/ 22 июня 2011

может показать мне, что я могу использовать пользовательские цвета в элементе управления диаграммой ASP.Net. так, например, у меня есть две серии TOTAL и TARGET, и я хочу установить цвет для всего на зеленый и цвет для цели, чтобы быть красным.

Ответы [ 5 ]

1 голос
/ 07 марта 2012

предположим, что у вас есть два очка для вашего Series1. Таким образом, вы можете настроить цвета следующим образом:

Chart1.Series["Series1"].Points[0].Color=Color.Red;
Chart1.Series["Series1"].Points[1].Color=Color.Yellow;
1 голос
/ 22 июня 2011

iv сделано что-то вроде

    Chart2.Series.Add(new Series("Target")
    {
        ChartType = SeriesChartType.Column,
        Color = Color.Red,
    });
1 голос
/ 22 июня 2011

Примерно так:

Color[] colors = new Color[] { Color.Green, Color.Red };
foreach (Series series in Chart1.Series)
{
    foreach (DataPoint point in series.Points)
    {
        point.LabelBackColor = colors[series.Points.IndexOf(point)];
    }
}
0 голосов
/ 22 июня 2011

Не знаю, поможет ли это, но я создал пользовательский элемент управления, который предоставляет несколько параметров, которые можно настраивать, например, тип диаграммы, цвет, ширину стены и т. Д.

http://www.foliotek.com/devblog/asp-net-4-0-custom-chart-control-adjustable/

0 голосов
/ 22 июня 2011

Объект System.Web.UI.DataVisualization.Charting.Series имеет свойство Color. Просто установите для свойства color то, что вам нужно. Ниже приведен пример кода, который добавляет горизонтальную линию заданного значения к диаграмме:

public static System.Web.UI.DataVisualization.Charting.Chart addLineToChart(
    System.Web.UI.DataVisualization.Charting.Chart pChart, double pValue, System.Drawing.Color pColor)
{        
    // I will declare a new series where every value is the value passed in
    System.Web.UI.DataVisualization.Charting.Series constantLineSeries = new System.Web.UI.DataVisualization.Charting.Series();
    constantLineSeries.ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Line;
    constantLineSeries.BorderWidth = ChartingValues.CHART_LINE_THICKNESS;
    constantLineSeries.Color = pColor;
    // At each point in the old series, add a constant point in the new series.
    foreach(System.Web.UI.DataVisualization.Charting.DataPoint point in pChart.Series[0].Points)
    {
        System.Web.UI.DataVisualization.Charting.DataPoint constantLinePoint = new System.Web.UI.DataVisualization.Charting.DataPoint();
        constantLinePoint.XValue = point.XValue;            
        constantLinePoint.YValues = new double[] { pValue };
        constantLineSeries.Points.Add(constantLinePoint);
    }
    pChart.Series.Add(constantLineSeries);
    pChart.ChartAreas[0].Area3DStyle.Enable3D = false;

    return pChart;
}

Этот пример кода корректирует некоторые другие свойства, которые вы, вероятно, также найдете полезными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...