簡體   English   中英

WinRT XAML工具包折線圖顯示錯誤結果

[英]WinRT XAML toolkit lineseries chart displays wrong results

我有一個UWP應用來控制窯爐。我用WinRT XAML工具包中的線形圖表示窯爐的溫度隨時間的變化。 要顯示,我使用此XAML:

<Charting:Chart x:Name="MyLineSeriesChart" Grid.ColumnSpan="4"  VerticalAlignment="Center" FontSize="10" HorizontalContentAlignment="Left" RenderTransformOrigin="-0.082,0.454" Width="480" Height="250" HorizontalAlignment="Left">
    <Charting:Chart.Axes >
        <Charting:DateTimeAxis AxisLabelStyle="{StaticResource HorizontalLabelStyle}" Orientation="X"/>
    </Charting:Chart.Axes>
    <Charting:LineSeries Name="LineChart" Title="Temp" ItemsSource="{Binding}" DependentValueBinding="{Binding Path=Value}" IndependentValueBinding="{Binding Path=Key}" Margin="0,-38,-75,0" HorizontalAlignment="Stretch" Width="Auto">
        <!--     <Charting:LineSeries.DependentRangeAxis>
            <Charting:LinearAxis Orientation="Y" ShowGridLines="True" Title="Temp"/>
        </Charting:LineSeries.DependentRangeAxis>-->
        <Charting:LineSeries.DataPointStyle>
            <Style TargetType="Charting:LineDataPoint">
                <Setter Property="Visibility" Value="Collapsed"/>
                <Setter Property="Width" Value="0"/>
                <Setter Property="Background" Value="Red"/>
            </Style>
        </Charting:LineSeries.DataPointStyle>
    </Charting:LineSeries>
</Charting:Chart>

您會看到一個注釋掉的部分。 我以前用過 效果還可以,但我想要一個不同的間隔。 在XAML中,由於不可為空的問題,您無法設置間隔。 所以我在VB代碼中設置間隔:

    DirectCast(MyLineSeriesChart.Series(0), LineSeries).DependentRangeAxis = New LinearAxis() With {
        .Title = "Temp",
        .Orientation = AxisOrientation.Y,
        .Minimum = 0,
        .Maximum = 1000,
        .Interval = 100,
        .ShowGridLines = True
    }

但是結果更糟: 線形圖

溫度從15 C開始升高到大約1.000C。但是您可以看到該圖顯示了截然不同的數字。 圖中的實際溫度為15到200C。

我為什么要拔頭發呢?

我只是測試了您的XAML代碼段,所以我的圖形也放置不正確。 因此,我剛剛從代碼中刪除了以下內容,

<Setter Property="Visibility" Value="Collapsed"/>
<Setter Property="Width" Value="0"/>

希望對您有幫助。

謝謝

我意識到這有點舊,但是我想簡短地提供一些信息,以防有人也遇到同樣的問題。 我遇到了與上述相同的問題(值不是Y軸上的'meant'),但是在逐步執行代碼后,我發現margin屬性(在上面的代碼中設置為Margin =“ 0” ,-38,-75,0“)引起了這種移位。 將其設置為Margin =“ 0,0,-75,0”對我來說解決了這個問題... -75值根據所顯示的數據多少有些武斷。

暫無
暫無

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

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