topurile nu funcționează corect

Vreau să fac o hartă superioară ca aceasta http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/line-labels/ Am o procedură stocată care contează tot tipul de cameră rezervat pentru fiecare lună (ianuarie: dublu 2, triplu 4 ..) Trebuie să transmit parametrul I la procedura mea stocată în Roomtypereservations.RoomTypeByDate (i); Când i este 1 primesc date pentru ianuarie, i este 2 date pentru februarie ......

  public ActionResult Gresit()
    {
   DBContext.Current.Open();

  List allSeries = new List();
  List rezervari = new List();
  for (int i =1; i < 13; i++)
  {
      rezervari = Roomtypereservations.RoomTypeByDate(i);
      var results = new object[4];

      foreach (var a in rezervari)
      {
          results = (new object[] { a.NumRezervari });

          allSeries.Add(new Series
      {
          Name = a.Room_Type,

    //Data = new Data(myData)
          Data = new Data(results.ToArray())

      });
      }
  };


      Highcharts charts = new Highcharts("chart")
          .InitChart(new Chart { DefaultSeriesType = ChartTypes.Spline, })
          .SetTitle(new Title { Text = "Gradul De Ocupare pe luni" })
          .SetXAxis(new XAxis { Categories = Reservation.Categories })
          .SetYAxis(new YAxis
          {
              Title = new YAxisTitle { Text = "Numarul de Camere" },
              Labels = new YAxisLabels { Step = 5, Formatter = "function() { return this.value}" }

          })
          .SetTooltip(new Tooltip
          {
              Crosshairs = new Crosshairs(true),
              Shared = true
          })
          .SetPlotOptions(new PlotOptions
          {
              Spline = new PlotOptionsSpline
              {
                  Marker = new PlotOptionsSeriesMarker
                  {
                      Radius = 4,
                      LineColor = ColorTranslator.FromHtml("#666666"),
                      LineWidth = 1
                  }
              }
          })
          .SetSeries(allSeries.Select(s => new Series { Name = s.Name, Data = s.Data }).ToArray());

      return View(charts);

    }

But I am doing something wrong because I get this: All my data is showed for january. What am I doing wrong? enter image description here

0
Da, lucrul pentru mine acum
adăugat autor jonny, sursa
Care este starea acestei întrebări? A fost răspunsul de mai jos pentru dvs.? Unde puteți afla cum să colectați datele în mod corespunzător?
adăugat autor Linger, sursa
Dacă răspunsul meu a fost ceea ce v-a ajutat, puteți să îl marcați ca răspuns aprobat? Dacă ați găsit o altă soluție, ați putea să adăugați propriul răspuns la întrebare și să îl marcați ca acceptat? Mulțumiri
adăugat autor Linger, sursa

1 răspunsuri

Aceasta se datorează faptului că faceți buclă și creați o serie pentru fiecare punct de date. Trebuie să scoateți declarația allSeries.Add din structura foreach. Încercați să utilizați structura modificată mai jos:

for (int i =1; i < 13; i++)
{
  rezervari = Roomtypereservations.RoomTypeByDate(i);
  var results = new List();

  foreach (var a in rezervari)
  {
    results.Add(a.NumRezervari);
  }

  allSeries.Add(new Series
  {
    Name = a.Room_Type,
    Data = new Data(results.ToArray())
  });
}

Prin aspectul dvs. creați până la 12 serii diferite.

0
adăugat
Nu este de lucru. Îmi dă acest lucru în serie atunci când editez sursa spage: seria: [{data: [[1]], numele: "Triple"}, {data: [[1], [1] ]], nume: "Dublu"}, {date: [[1], [1], [1]], nume: "LUXURY"
adăugat autor jonny, sursa
serii: {{data: []}, {data: [1], numele: "Triple"}, {data: [1, 1, 1], nume: : Date: [2, 1, 1], nume: "Triplă"}, {date: [6, 2] [], {date: []}, {date: []}, {date: []}, {date: []}]}); cum arata, dar vreau doar tipul de camera sa apara odata cu valoarea ei pentru toate lunile ca aceasta jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/…
adăugat autor jonny, sursa
Am modificat răspunsul meu încercați acum.
adăugat autor Linger, sursa