2016-01-31 150 views
1

我嘗試學習使用oxyplot。當我在表單上顯示一個圖形時,該圖形將覆蓋所有表單區域(如下所示)。我想把它放在與尺寸有關的特定座標上。設置OXYPLOT C的位置和大小#

我該怎麼做?

我的代碼:

private void Plot() 
{ 

    PlotView pv = new PlotView(); 
    pv.Dock = DockStyle.Fill; 
    this.Controls.Add(pv); 

    LinearAxis XAxis = new LinearAxis { Position = OxyPlot.Axes.AxisPosition.Bottom }; 
    LinearAxis YAxis = new LinearAxis(); 
    PlotModel pm = new PlotModel(); 
    pm.Axes.Add(XAxis); 
    pm.Axes.Add(YAxis); 
    pm.Background = OxyColor.FromRgb(0, 0, 255); 
    pv.Model = pm; 
    pv.Model.Series.Add(GetFunction()); 
} 

private FunctionSeries GetFunction() 
    { 
     FunctionSeries fs = new FunctionSeries(); 
     for(int x=-10;x<=10;x++) 
      for(int y=-10;y<10;y++) 
      { 
       DataPoint data = new DataPoint(x, y); 
       fs.Points.Add(data); 
      } 
     return fs; 
    } 

結果:

enter image description here

回答

1

你應該創建XAML中PlotView,PlotView Model屬性綁定到代碼的PlotModel身後,然後,把它作爲一個正常的框架元素:

<oxy:PlotView Model="{Binding pm}" Height="200" Width="200" 
       HorizontalAlignment="Right" Margin="20"/> 
+0

我找不到任何有關我的f的xaml文件ORM。它在哪裏? – ffttyy

+0

對不起,我認爲你使用WPF,但你是在窗體上。也許你可以在後面的代碼中編輯視圖的相同屬性,就像你一直在做的那樣。 – Jose

+0

@ffttyy,在這種情況下,只需在控制包中添加'pv'而不是主窗體。 –