首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用垂直系列Mappers.Xy<double>时,如何访问索引?

在使用垂直系列Mappers.Xy<double>时,如何访问索引?
EN

Stack Overflow用户
提问于 2017-11-16 10:29:18
回答 1查看 742关注 0票数 4

我正在尝试使用基于双倍的垂直系列来理解Mappers.XY类。为了测试它,我希望Y轴的所有偶数索引都是红色的,但是.Fill似乎只使用X值。下面是我的代码和结果:

代码语言:javascript
复制
var RedBrush = new SolidColorBrush(Color.FromRgb(238, 83, 80));

Mapper = Mappers.Xy<double>()
    .X((value, index) => value)
    .Y((value, index) => index)
    .Fill(index => index % 2 == 0 ? RedBrush : null)
    .Stroke(index => index % 2 == 0 ? RedBrush : null);

只有当X值为(如下图所示)时,我才会使用红条:红X值,我甚至将.Fill更改为基于值,但没有改变。

编辑:我认为我已经将问题缩小到使用.Fill的默认方法,即:

代码语言:javascript
复制
public CartesianMapper<T> Fill(Func<T, object> predicate);

我认为这使用了双数作为填充的基础,在我的例子中,它将是X值。相反,我应该为.Fill使用重载,它似乎将索引视为int...which,这是我想要的:

代码语言:javascript
复制
 public CartesianMapper<T> Fill(Func<T, int, object> predicate);

问题是我不知道怎么用这个。而不是拥有:

代码语言:javascript
复制
.Fill(index => index % 2 == 0 ? RedBrush : null)

应该是什么?我的兰达技能是新手级的。

*以前可以忽略的案文.

我在这里回顾了帮助的类型和配置:https://lvcharts.net/App/examples/v1/wpf/Types%20and%20Configuration,更具体地说,我试图将这两个概念改编成我自己的概念:

  1. 在系列收藏级别

在定义Series集合实例时,还可以传递默认配置,此配置覆盖全局配置,只有在Series配置为null时才会设置:

代码语言:javascript
复制
  var mapper = Mappers.Xy<MyClass>().X(v => v.XProp).Y(v => v.YProp);
  var seriesCollection = new SeriesCollection(mapper);
  myChart.SeriesCollection = seriesCollection;

  1. 在特定的系列

最后,您还可以只为一个系列定义映射程序,这将覆盖>全局配置和SeriesCollection配置:

代码语言:javascript
复制
var mapper = Mappers.Xy<MyClass>().X(v => v.XProp).Y(v => v.YProp);
var pieSeries = new PieSeries(mapper);

问题是,示例中使用的属性是ObservablePoints,但我没有属性,因为我只是在使用双倍。

有谁知道只用双倍就能做到这一点吗?有其他选择吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-21 21:28:27

您需要更改.Fill的lambda表达式如下:

代码语言:javascript
复制
    var Mapper = Mappers.Xy<double>()
            .X((value, index) => value)
            .Y((value, index) => index)
            .Fill((value, index) => index % 2 == 0 ? RedBrush : null);

由于某种原因,在表达式中,lambda表达式似乎是计算值% 2而不是索引%2。

下面是使用映射器绘制的行系列图表的图像:

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

https://stackoverflow.com/questions/47327269

复制
相关文章

相似问题

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