2017-06-02 33 views
1

我是C#的新手,但我已經對它強大的開發環境(Visual Studio 2017)感到驚訝。我想知道是否有辦法將兩個x軸放在默認支持的一個mschart上。如何在mschart中添加多個x軸?

我的程序很簡單。它獲得「45.1」,「45.2」,45.3「和」115958「,」115959「,」120000「(hh:mm:ss)等字符串的」Y值「和」時間「數據以及程序圖一系列進來每當OnReceiveData事件發生時的y值」的。

的下面示出的代碼和它的圖表。

namespace WindowsFormsApp1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      this.OnReceiveData += this.OnReceiveRealData; 
     } 

     private void OnReceiveRealData(object sender, OpenAPILib._OpenAPIEvents_OnReceiveRealDataEvent e) 
     { 
      this.chart1.Series[0].Points.AddY(OpenAPI1.GetCommRealData(e.sRealType, "Y-Value").Trim()); 
     } 
    } 
} 

enter image description here

X軸示出了「Y值的數量這個程序已經收到了,但並不是每秒鐘都會得到「Y值」(或者每秒發生一次事件),有時事件會在一秒鐘內發生幾次,有時幾秒鐘不會發生。所以,我想添加另一個X軸,看看它已經過了多少時間,或者在這段時間內收到了多少「Y值」,可能就像下面這樣。

enter image description here

如何添加另一個X軸的MSChart?我可以得到一些有關這方面的建議或鏈接嗎?

回答

1

您可以啓用二次 x軸:

yourChartArea.AxisX2.Enabled = AxisEnabled.True; 

您可以將一系列給它設置

someSeries.XAxisType = AxisType.Secondary; 

它將,默認關聯,坐在上面,你可以使用Crossing來移動它。

對於更加強大和很多很多更復雜的額外軸看here ..其實我不建議這一點,因爲它不是爲微弱的心臟或新手;-)

Secondary軸可風格就像Primary一樣..

+0

謝謝你的回答! – maynull