2015-08-07 2 views
1

Я пытаюсь создать диаграмму, где x представляет сообщение об исключении, и y представляет, сколько раз это произошло.Добавление строкового значения оси x в диаграмме вместо номера

Я не могу показать значение x (сообщение об исключении) под каждым баром, я также пробовал маркировку x и диапазон для каждой метки, но бары не генерируются над этим ярлыком, но от них.

Вот пример моего кода

reportChart.Series.Add(exception); 
reportChart.Series[exception].SetDefault(true); 
reportChart.Series[exception].Enabled = true; 
reportChart.Series[exception].Points.AddXY(exception,ExceptionMessages[exception]); 

ExceptionMessages[exception] словарь, который содержит значение, сколько раз произошло текущее исключение.

ответ

1

Вы можете сделать это:

private void Form1_Load(object sender, EventArgs e) 
    { 
     Dictionary<string, int> ExceptionMessages = new Dictionary<string, int>(); 

     ExceptionMessages.Add("Exception 1", 20); 
     ExceptionMessages.Add("Exception 2", 50); 
     ExceptionMessages.Add("Exception 3", 30); 
     ExceptionMessages.Add("Exception 4", 60); 
     ExceptionMessages.Add("Exception 5", 10); 

     foreach (KeyValuePair<string, int> exception in ExceptionMessages) 
      chart1.Series[0].Points.AddXY(exception.Key, exception.Value); 
    } 

Диаграмма: enter image description here

EDIT: добавить некоторую логику, чтобы назначить цвета, как это:

 foreach (KeyValuePair<string, int> exception in ExceptionMessages) 
     { 
      chart1.Series[0].Points.AddXY(exception.Key, exception.Value); 

      //add business logic for your color here 
      if (exception.Key == "Exception 4") 
       chart1.Series[0].Points[chart1.Series[0].Points.Count - 1].Color = Color.Red; 
     } 

Диаграмма:

enter image description here

+0

Спасибо за эту работу fin для меня, но есть ли способ, которым я могу иметь каждое из этих исключений в разных сериях, как я делал это раньше, но все еще имею под ним ярлык, как пример, который вы мне показали, это даст у меня есть шанс найти его по цвету быстрее, если на диаграмме будет много данных. –

+0

Нельзя добавлять множество серий, но каждый раз указывать отдельный цвет! – TaW

+0

Это может быть хорошим решением, но поскольку я не могу контролировать количество различных исключений, я получу, есть ли способ сделать это динамически. –