我在一个项目中使用的TeeChart(2009 .NET),我发现了一些奇怪的事情发生时,我得出具体双倍积分的盒子。奇怪的箱形图形状的TeeChart
这是我的XAML代码来重现问题。
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<WindowsFormsHost x:Name="chartHost"/>
<WindowsFormsHost x:Name="chartHost2" Grid.Column="1"/>
</Grid>
</Window>
这是上述xaml文件的后面代码。
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
SetChart(new[] { 0.5685, 0.7141, 0.7301, 0.748, 0.7847, 1.2127 }, chartHost);
SetChart(new[] { 0.5686, 0.7141, 0.7301, 0.748, 0.7847, 1.2127 }, chartHost2);
}
private void SetChart(double[] values, WindowsFormsHost host)
{
var chart = new TChart();
var box = new Box(chart.Chart);
box.Add(values);
box.ExtrOut.HorizSize = 0;
box.ExtrOut.VertSize = 0;
box.MildOut.HorizSize = 0;
box.MildOut.VertSize = 0;
chart.Axes.Left.Maximum = 1.2;
chart.Axes.Left.Minimum = 0.5;
host.Child = chart;
}
}
结果看起来像这样。 (请点击链接查看拍摄的照片。我目前不能附加图像由于声誉限制。)
http://www.flickr.com/photos/[email protected]/9341426974/
出人意料的是,两幅图之间的唯一区别是,每个图表的数据的第一双值。左边看起来好的图的第一个双倍值是0.5685,而另一个值是0.5686,这听起来没有那么大的差别。 0.0001使得正确的图表变得怪异。我没有尝试使用Box系列的UseCustomValues属性,我不想使用它。
任何人知道如何与这两个两个数据设置正确绘制图表?
感谢您的答复。我试图使用_ReconstructFromData_方法,但它不起作用。 box.ReconstructFromData(); 我在SetChart方法结束时加入此行。结果是一样的。 :-( –
@BruceYang在进一步调查问题后,我们发现这不是一个错误,我更正了上面的答案 –
感谢您的详细信息,它运作良好! –