2010-12-13 54 views
3

我有一個包含數據點數爲1000的圖表,並且想知道如何刪除數據點?它們大大減緩了整個過程。我研究過不得不改變風格,有沒有另一種方式?WPF工具箱圖表 - 摺疊圖表點

Removing (collapsing) DataPoints in a LineSeries?

<Grid> 
    <chartingToolkit:Chart 
     Width="Auto" Height="Auto" 
     Background="Transparent" Panel.ZIndex="3"> 
     <chartingToolkit:LineSeries Title="Symbol" Background="Transparent" 
     IndependentValueBinding="{Binding Path=Key}" 
     DependentValueBinding="{Binding Path=Value}" 
     ItemsSource="{Binding Path=SymbolData}" 
     DataContext="{Binding}"> 
      <chartingToolkit:LineSeries.DataPointStyle> 
       <Style TargetType="{x:Type chartingToolkit:LineDataPoint}"> 
        <Setter Property="Background" Value="Red"/> 
        <Setter Property="Visibility" Value="Collapsed"/> 
       </Style> 
      </chartingToolkit:LineSeries.DataPointStyle> 
     </chartingToolkit:LineSeries> 
    </chartingToolkit:Chart> 
</Grid> 

我想上面的代碼將工作過,但顯然不是...

進一步的研究,即使這個答案沒有工作:/

Removing markers from silverlight line or area series

歡呼聲。

回答

4

將點樣式設置爲摺疊不會解決您的問題,因爲對象仍將位於影響渲染時間的可視化樹中。由於您已爲數據點設置綁定,因此刪除它們的唯一方法是刪除它們綁定的業務對象。另外,由於您談論的是性能,值得注意的是WPF工具包的性能比其他一些免費製圖組件要差得多。請參閱charting component's performance comparison上的這篇文章 - 它是用來比較Silverlight版本的,但根據我的經驗,它也適用於WPF。使用Visiblox,DD3或Visifire可能會顯着提高圖表的性能。 (完全披露:我一直參與Visiblox的開發)

+0

嗨,歡呼的回覆,你是什麼意思「刪除你的業務對象,他們必須。」? 另外,感謝您在製圖表現上的表現,我一定會檢查Visiblox! – Sparky 2010-12-14 10:41:54