2014-01-03 2 views
0

Я ищу DotNet.HighCharts и только начинаю пытаться понять это. Я думал о том, чтобы сделать что-то более «простое», чтобы просто повесить его, как круговая диаграмма.DotNet.HighCharts - PieChart, заполняя данные по коду

Я просмотрел следующую ссылку DotNet HighCharts , Populates a pie with the result of a query и хотел попытаться заполнить данные из кода позади. Я очень хотел ошеломить, чтобы научиться и понять. Узнайте, как сканировать сначала, прежде чем я научусь запускать с ним и заполнить базу данных.

Я думаю, что я не понимаю, как правильно настроить данные серии. Это, как я заселять объект серии:

var browers = new List<object[]>(); 
    browers.Add(new object[] { "Firefox", 35.0 }); 
    browers.Add(new object[] { "IE", 25 }); 
    browers.Add(new object[] { "Safari", 20 }); 
    browers.Add(new object[] { "Opera", 15 }); 
    browers.Add(new object[] { "Others", 5 }); 

    List<Series> browserSeries = new List<Series>(); 

    //I think this is causing the problem 
    browserSeries.Add(new Series 
    { 
     Name = "Browsers", 
     Data = new Data(browers.ToArray()) 
    }); 

И тогда это делается здесь, так же, как ссылка:

.SetSeries(new Series 
      { 
       Type = ChartTypes.Pie, 
       Name = "Browser share", 
       Data = new Data(browserSeries.Select(b => new { Name = b.Name, Y = b.Data }).ToArray()) 
      }); 

На данный график не отображает данные. Это просто пусто. Может ли кто-нибудь указать мне в правильном направлении, что я сделал неправильно?

Большое спасибо за помощь.

+1

Вы получили ошибки? Как выглядят ваши данные после разбора? Я mena в javascript? (вы можете использовать console.log (данные) в JS) –

+0

Привет, Себастьян, Спасибо за ваше предложение использовать console.log Я даже не думал об этом. Есть данные, но это испорчено. Вот скриншот: http://tinypic.com/r/346ozti/5 Так что я определенно не настроил массив правильно. Это довольно очевидно из скриншота. Я думаю, что это потому, что я дважды делаю «ToArray()», когда я должен делать это только один раз. Я буду продолжать отстраняться от него. tHanks! –

ответ

2

Я сломал его и попытался понять, что я делаю неправильно. Для круговой диаграммы мне не нужна серия. Так в основном, когда был создан список объектов, мне просто нужно, чтобы установить данные в этот список, как:

.SetSeries(new Series 
{ 
    Type = ChartTypes.Pie, 
    Name = "Browser share", 
    Data = new Data(browsers.ToArray()) 
}); 

И круговая диаграмма появилась совершенно. Да, я сделал Опечатку с «...» фрезой но, по крайней мере, круговая диаграмма показывает сейчас :)

0
.SetSeries(new Series 
     { 
      Type = ChartTypes.Pie, 
      Name = "Browser share", 
      Data = new Data(new object[] { browers.Select(b => new {Name =b.GetValue(0), Y = b.GetValue(1) }).ToArray() }) 
     }); 

Привет, Этот код работает для меня.

+1

'ltrPiechart.Text = (chart2.ToHtmlString(). Заменить ("[[", "[")). Заменить ("]]", "]"); –

+0

привет использовать этот код также –