簡體   English   中英

創建Oxyplot PlotModel,它會隨着傳入的新數據自動更新

[英]Creating Oxyplot PlotModel that automatically updates with new data incoming

我一直在遵循此處找到的出色教程,以了解如何在遵循MVVC的同時使用OxyPlot創建LineSeries圖。 我還下載了該文件,並在進行了一些錯誤修復后,設法獲得了作者的源代碼,以供本教程編譯和運行。 Github上的源代碼可以在這里找到。

不幸的是,當代碼運行並創建圖表時,圖表不會像需要的那樣每5秒更新一次。 這就是我的機器上永遠的圖表。 它不會更新:

在此處輸入圖片說明

這是它的樣子,隨着時間的增加,將顯示更多的圖: 在此處輸入圖片說明

現在,我做了一些挖掘工作,以了解為什么它沒有更新。 我添加了一些調試命令來查找是否正確添加了新點,如下所示: 在此處輸入圖片說明

我檢查了是否每5秒調用一次UpdateModel,並從GetUpdateData正確返回測量值,並且在函數結束之前lineSerie.Points計數在增加。 在實際的View類中也會調用InvalidatePlot。

有什么我可以解決的問題嗎? 謝謝

我想到了。 根據此處的本教程 (“創建視圖”部分),我認為我必須把:

<Window.DataContext>
    <local:MainViewModel/>
</Window.DataContext>

在我的XAML文件中。 但是根據教程項目,您不需要它:

<Window x:Class="OxyPlotDemo.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:oxy="http://oxyplot.org/wpf"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <oxy:PlotView x:Name="Plot1" Model="{Binding PlotModel}" Margin="10" Grid.Row="1">
    </oxy:PlotView>
</Grid>

刪除local.MainViewModel行解決了該問題。 我認為它使用了錯誤的PlotModel,而不是在View類中創建的正確模型

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM