如何解决LiveCharts Winforms 仅显示第一个标签
我使用 LiveChart 来显示每个站点的每个 losscode 的 Loss(%) 但是我无法显示每个 Loss(%) 值的所有 losscode。它只显示第一个丢失代码。
我的代码
using (var context = new TIE_dbContext()) // each station
{
var losscodes = context.LossMode
.Where(l => l.StationId.Equals(currentstation))
.OrderBy(x => x.StationId)
.ToList();
foreach (var losscode in losscodes) // each loss code
{
string losscoderesult = losscode.LossCode.ToString(); // get loss code
using (var losspercontext = new lossmodeentity1())
{
var loss = losspercontext.calculatelosspercent(losscoderesult,currentstation,currentshiftday.Date,currentshift); //Function to get percent loss
foreach (var x in loss)
{
if (x != null)
{
losspercent1 = x.Value;
losspercent1 = decimal.Round(losspercent1,2,MidpointRounding.AwayFromZero);
}
else
{
losspercent1 = 0;
}
//for station1 lossgraph display
if (changestationforlosscode == "station1")
{
losschart1.dispatcher.Invoke(() =>
{
if (losschart1.AxisY.Count < 1)
{
losschart1.AxisY.Add(new Axis
{
ShowLabels = false
});
}
losschart1.Series.Add(new ColumnSeries
{
Title = losscoderesult,Values = new ChartValues<decimal> { losspercent1 },LabelsPosition = BarLabelPosition.Top,DataLabels = true,});
if (losschart1.AxisX.Count < 1)
{
losschart1.AxisX.Add(new Axis
{
//LabelsRotation = -90,Labels = losscodes.Select(s => s.LossCode).ToArray(),});
}
});
}
我错过了什么吗? 我认为问题出在
Labels = losscodes.Select(s => s.LossCode).ToArray()
但我无法修复它。 提前致谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。