2012-01-15 8 views
2

& 데이터 그래프 또는 JSON 개체를 반환하는 전체 그래프 구조를로드하는 것이 가능한지 알고 싶습니다.HighCharts & MVC : JSON으로 전체 그래프 정의와 데이터를로드하는 방법은 무엇입니까?

특히, 동적으로 옵션, 카테고리, JSON과 등 축, 데이터를 생성하고 싶습니다; 나는 그것이 가능하다고 생각하지만, 데이터를로드하는 방법을 설명하는 정보 만 찾았습니다. & 시리즈가 아니라 옵션입니다.

예를 들어, 내가 돌아 오는 등 제목, x 축을 정의하는 JSON 개체 싶습니다 특히

[...] 

    title: { 
    text: 'Total fruit consumtion, grouped by gender' 
    }, 
    xAxis: { 
    categories: [] 
    }, 

[...] 

를 동적으로, 이것과 같은 더 복잡한 그래프를 작성해야합니다 http://www.highcharts.com/demo/column-stacked-and-grouped

미리 감사드립니다.

+0

... 그것은에 ViewBag를 사용하는 것이 가능하다 javascripts의 부분을 구축 ??? 그렇게 나쁜 생각입니까? THX – Larry

+0

당신은 단순히 차트, 제목, subtile과 동일한 속성을 포함하는 개체를 만들고 차트를 직렬화하고 출력하기 위해 System.Web.Script.Serialization.JavaScriptSerializer를 사용하는 경로/페이지를 만들면된다고 생각합니다. 소비자 페이지에서 jquery를 사용하여 REST 서비스에 대한 ajax 호출을 수행 한 다음 반환 된 데이터로 차트를 초기화 할 수 있습니다. 나는 지금 당장 똑같은 일을하고있다 (PHP에서). – gremo

+0

감사합니다. @Gremo! 가능하면이 솔루션에 대한 몇 가지 예를 들어 주시겠습니까? 다시 한 번 감사드립니다! – Larry

답변

2

DotNet.Highcharts으로 JavaScript 또는 JSON을 사용하지 않고 원하는대로 서버 측에서 차트를 만들 수 있습니다. 당신은 여기 ASP.NET MVC 예제를 많이 찾을 수 있습니다

Highcharts chart = new Highcharts("chart") 
.InitChart(new Chart { DefaultSeriesType = ChartTypes.Column }) 
.SetTitle(new Title { Text = "Total fruit consumtion, grouped by gender" }) 
.SetXAxis(new XAxis { Categories = new[] { "Apples", "Oranges", "Pears", "Grapes", "Bananas" } }) 
.SetYAxis(new YAxis 
      { 
       AllowDecimals = false, 
       Min = 0, 
       Title = new YAxisTitle { Text = "Number of fruits" } 
      }) 
.SetTooltip(new Tooltip { Formatter = "TooltipFormatter" }) 
.SetPlotOptions(new PlotOptions { Column = new PlotOptionsColumn { Stacking = Stackings.Normal } }) 
.SetSeries(new[] 
      { 
       new Series 
       { 
        Name = "John", 
        Data = new Data(new object[] { 5, 3, 4, 7, 2 }), 
        Stack = "male" 
       }, 
       new Series 
       { 
        Name = "Joe", 
        Data = new Data(new object[] { 3, 4, 4, 2, 5 }), 
        Stack = "male" 
       }, 
       new Series 
       { 
        Name = "Jane", 
        Data = new Data(new object[] { 2, 5, 6, 2, 1 }), 
        Stack = "female" 
       }, 
       new Series 
       { 
        Name = "Janet", 
        Data = new Data(new object[] { 3, 0, 4, 4, 3 }), 
        Stack = "female" 
       } 
      }); 

: 다음은 라이브러리와 함께 할 싶은 예입니다 http://dotnethighcharts.codeplex.com/releases/view/80650

내가 생각
+0

대단히 감사합니다. @Vangi! – Larry