如何解决当 CartesianMapper lambda 表达式设置系列颜色时更新 LiveCharts 图例系列颜色
我有一个带有系列和映射器的 LiveCharts 图,它根据值是否超过指定值来更改系列 Fill
:
Dim Mapper As CartesianMapper(Of Double) = Mappers.Xy(Of Double)
Mapper.X(Function(value,index) index)
Mapper.Y(Function(value,index) value)
Mapper.Fill(Function(value,index)
Return If(value > Tolerance,New SolidColorBrush(Color.FromArgb(red.A,red.R,red.G,red.B)),New SolidColorBrush(Color.FromArgb(cyan.A,cyan.R,cyan.G,cyan.B)))
End Function)
Dim PercentageSeries As New ColumnSeries With {
.Title = "% Difference",.ColumnPadding = 1,.Fill = New SolidColorBrush(Color.FromArgb(cyan.A,cyan.B)),.Values = New ChartValues(Of Double)(PercentageValues),.ScalesYAt = 1,.Configuration = Mapper
}
这可以正确更改系列颜色:
当基于 Mapper 更改系列颜色时,它没有正确执行的是更新图例中的系列颜色:
请注意,PercentageSeries
系列应该是图例中的橙色。
从 Fill
中删除默认的 PercentageSeries
也有相同的结果,只是图例系列对所有内容使用 LiveChart 的默认黄色。
我查看了 LiveCharts 的文档,我看到我可以替换 DefaultLegend
,但我看不到在哪里或如何让系列颜色也根据 {{1 }} 我已经创建了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。