首页 > 解决方案 > C# wpf Live 图表如何根据值和标签自动调整轴,并带有代码

问题描述

我有一个必须在 WPF 中开发的项目,并且只能使用实时图表来编写代码。这个想法是有一个温度图。您可以在下面通过向 lineSerie 添加值来查看我已经在做的事情。我首先将值添加到系列系列,当超过 120 时,我删除第一个:

lineSerie1_Part.Values.Add(new ObservableValue((double)val));
if (lineSerie1_Part.Values.Count >= 120)
        lineSerie1_Part.Values.RemoveAt(0);

在此处输入图像描述

现在我有两个问题:


  1. 我不想在 X 轴上显示附加值的数量,而是显示温度的时间(例如 10:03:24 - 10:04:18 - ...)。因此,我编写了一个小型测试程序,在其中设置了标签:

    Labels = new[] { "AAA", "BBB", "CCC"};
    cc.AxisX[0].Labels = Labels;
    

那行得通。那就是说我不能改变它:

Labels[0] = "DDD";
Labels[1] = "EEE";
Labels[2] = "FFF";      
cc.AxisX[0].Labels = Labels;

不做任何改变。此外,这是正确的方法吗?有没有一种方法可以在我添加一个新值时,该值中已经有它的 x 轴标签?


  1. 我可以在开始时设置最高和最低温度(例如 18°-25°),

    chartTemperatures.AxisY.Add(new Axis { MinValue = MinTemp, MaxValue = MaxTemp);
    

但如果温度超过初始值(例如 25.5°),我希望图形自动扩展。

感谢您的帮助帕特里克

标签: c#wpflabelaxislivecharts

解决方案


正如 Jdweng 所说,没有自动方法。所以我必须使用 cc.AxisX[0].Label[0] = "DDD";cc.AxisX[0].Label[1] = "EEE";cc.AxisX[0].Label[2] = " FFF"


推荐阅读