在一个页面上可视化几个Shield UI ASP.NET MVC图表

时间:2013-08-22 12:24:32

标签: asp.net-mvc-3 shieldui

我是Shield UI ASP.NET MVC图表的新手我似乎遇到了一个非常奇怪的问题。我在一个页面上使用两个图表并从在线教程中获取代码,但是卡住了,无法继续。当两者都存在时:

@(Html.ShieldChart()
.Name("chart")
.AxisX(axisX => axisX.Title(title => title.Text("Speed of Wind")))
.AxisY(axisY => axisY.Title(title => title.Text("RainFall Quantities")))
.PrimaryHeader(header => header.Text("Weather - Wind/Precipitation Values"))
.Tooltip(tooltip => tooltip.AxisMarkers(axisMarkers => axisMarkers
    .Enabled(true)
    .Mode(Shield.Mvc.UI.Chart.TooltipAxisMarkerMode.XY)
    .Width(1)
    .ZIndex(3)))
.ChartLegend(chartLegend => chartLegend
    .Align(Shield.Mvc.UI.Chart.Align.Right)
    .VerticalAlign(Shield.Mvc.UI.Chart.VerticalAlign.Top)
    .RenderDirection(Shield.Mvc.UI.Chart.Direction.Vertical))
.DataSeries(dataSeries => dataSeries.Scatter()
    .CollectionAlias("January 2008")
 …..
)

 @(Html.ShieldChart()
.Name("chart")
.Export(false)
.PrimaryHeader(header => header.Text("Browsers Popularity amongst Users"))
.ChartLegend(legend=>legend.Enabled(true))
.SeriesSettings(setting=>setting.Pie(pie=>pie
    .EnablePointSelection(true)))
.Tooltip(tooltip=>tooltip.CustomPointText("{point.collectionAlias}: {point.y}"))        
.DataSeries(dataSeries => dataSeries.Pie()
    .CollectionAlias("Usage")
  …..
 )

页面上没有任何内容可供查看。当我删除其中任何一个时,其他显示正确。问题是什么?我是否需要添加其他元素来组成容器?

1 个答案:

答案 0 :(得分:1)

不需要任何其他元素。问题是,图表名称之间存在冲突。可能你没有注意到,你的两个图表都有相同的名称:

请将.Name( “图”)

基本上具有相同ID的div会显示在页面上,只是阻碍访问它们的JS脚本,这里的问题导致不显示图表。 您可以更改

之类的名称
.Name("chartA") 

and 

.Name("chartB")
例如

,必须解决问题。