首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DotNetHighcharts -如何只使用2d数组的第一列作为数据

DotNetHighcharts -如何只使用2d数组的第一列作为数据
EN

Stack Overflow用户
提问于 2016-07-25 13:53:06
回答 1查看 102关注 0票数 0

我有一个2d的对象数组,我要传递到我的seriesSet中来创建一个列图,其中一个列是一个百分比,这就是我想在图上看到的,而另一个列我只想在工具提示中显示。

你们中有谁能想到我能做到的吗?它看起来像这样

代码语言:javascript
复制
{ 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设置成这样:

代码语言:javascript
复制
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
    }, 
});

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-25 13:56:19

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

代码语言:javascript
复制
// 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

代码语言:javascript
复制
items.Select(item => (object)item[0]);
代码语言:javascript
复制
    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
        }, 

    });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38569630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档