我有一个2d的对象数组,我要传递到我的seriesSet中来创建一个列图,其中一个列是一个百分比,这就是我想在图上看到的,而另一个列我只想在工具提示中显示。
你们中有谁能想到我能做到的吗?它看起来像这样
{ 100, 20 }
{ 100, 20 }
{ 80 , 16 }
{ 80 , 16 }
{ 40 , 8 }
{ 40 , 8 }
{ 20 , 4 }
...我现在知道如何使用‘that. x/that.y/that.point.x’来引用SetToolTip格式化程序中的每个格式化程序,这是一种进步,因为我已经尝试了很长一段时间了。但是现在我只想用第一组(100,80,40,20)来绘制第二组只用于工具提示的图形。
接下来的两周内,我们会对这个工作项目感到困惑,所以我们非常感谢您的帮助。
编辑:为了澄清,当我传递一个只包含百分数的一维对象数组时,图形会按我的意愿绘制,然后当我包含第二个集合(计数)时就会中断。
所以我把我的seriesData设置成这样:
List<DotNet.Highcharts.Options.Series> seriesSet = new List<DotNet.Highcharts.Options.Series>();
seriesSet.Add(new DotNet.Highcharts.Options.Series
{
Type = chartType,
Name = "ExampleArray",
Data = new DotNet.Highcharts.Helpers.Data(ExampleArray),
Color = tarColor,
PlotOptionsColumn = new DotNet.Highcharts.Options.PlotOptionsColumn
{
PointPadding = -0.1
},
});其中示例数组由上面的数字列表组成。
发布于 2016-07-25 13:56:19
我不确定我是否理解正确,但如果您想要的是收集这个集合中所有的第一项,然后再获得第二项的集合,那么:
// Remove any item that doesn't have at least these two wanted values
items = items.Where(item => item.Count >= 1);
// Select the sub-collection you need
var percentages = items.Select(item => item[0]);
var tooltips = items.Select(item => item[1]);从就像这里的角度来看,似乎应该将一个Object[]传递给Data,所以用以下方式替换ExampleArray:
items.Select(item => (object)item[0]); seriesSet.Add(new DotNet.Highcharts.Options.Series
{
Type = chartType,
//Name = "Targeted_" + Convert.ToString(tarCount.Count()),
Name = "Targeted",
Data = nnew DotNet.Highcharts.Helpers.Data((object[])targeted.Cast<object[]>()
.Select(item => (object)item[0])),
Color = tarColor,
PlotOptionsColumn = new DotNet.Highcharts.Options.PlotOptionsColumn
{
PointPadding = -0.1
},
});https://stackoverflow.com/questions/38569630
复制相似问题