DotNet Highcharts - 如何只使用二维数组的第一列作为数据

DotNetHighcharts - How to only use first column of 2d array as Data

我有一个二维对象数组,我将它们传递到我的 seriesSet 中以创建柱形图,一列是百分比,这是我想要在图表上绘制的,而另一列我只想要在工具提示中显示。

各位高手能想出一个办法让我做到这一点吗?例如它看起来像这样

{ 100, 20 }
{ 100, 20 }
{ 80 , 16 }
{ 80 , 16 }
{ 40 , 8  }
{ 40 , 8  }
{ 20 , 4  }
  ...

我现在知道如何使用 'this.x/this.y/this.point.x' 在 SetToolTip Formatter 中引用每个,这是一个进步,因为我在尝试这样做时被困了很长一段时间。但是现在我只想使用第一组 (100, 80, 40, 20) 来绘制图形,而第二组应该只用于工具提示。

即将开始 2 周的时间来解决这个工作项目,因此感谢您的帮助

编辑: 澄清一下,当我传入一个仅包含百分比的一维对象数组时,该图按照我想要的方式绘制,然后在我包含第二组(计数)时中断

所以我像这样设置我的 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
    }, 
});

其中示例数组由上面的数字列表组成。

我不确定我是否理解正确,但如果您想要的是获取此集合中所有第一项的集合,然后获取第二项的另一个集合,那么:

// 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]);

环顾四周 (like here),您似乎应该将 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
        }, 

    });