初涉C#之读取txt文件并绘制坐标曲线图

     这两天由于各种原因,不得不迫使自己学些傍身的东西。所以开始找一些编程语言来武装武装自己。C#没有C++那么复杂,但也相对于VB要高级一些,或许是个不错的选择呢。这两天看了下读取文本数据的资料,也在网上查了各种绘制坐标图的方法。怎么说呢,可能是自己领悟能力比较弱,进展比较慢。现在终于能够顺利的完成数据的读写和用chart绘制坐标曲线了(之前也写过用Picturebox绘制坐标轴,但是感觉没有chart来的直接,所以就直接上chart了)。这些东西可能对很多人来说都是小菜一碟了,我自己现在也是一只菜鸟,就当给自己留个笔记,如果能顺便帮助下刚入门的你,那也再好不过了。废话不多说,咱们直接进入正题。

    这里先给出程序运行之后的图片,以直观显示。初涉C#之读取txt文件并绘制坐标曲线图_第1张图片

其中最左边的为一个textbox,右边在一个TabControl控件,在TabPage1中放置一个chart控件。左边的text将读取的文本数据显示出来,chart根据读进来的数据绘制坐标曲线。

下面,先贴出button“打开”实现读取文件的代码:

 private void btbutton1_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Title = "Open File";
            ofd.Filter = "txt文件|*.txt|所有文件|*.*";
            double[] temp=new double[1000];
            int Len = 0;

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                txtBox1.Text = ofd.FileName;
                FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read);
                StreamReader sr = new StreamReader(fs);

                string strLine;
                
                while (sr.EndOfStream == false)
                {
                    strLine = sr.ReadLine();
                    txtBox2.Text = txtBox2.Text + strLine + "\r\n";
                    temp[Len] = Convert.ToDouble(strLine);
                    Len++;
                }   
                sr.Dispose();
                fs.Dispose();
            }

        }
接下来,是将读进来的数据绘制成曲线,这个用chart实现的话比较简单,就设置几个属性就基本OK了。

初涉C#之读取txt文件并绘制坐标曲线图_第2张图片初涉C#之读取txt文件并绘制坐标曲线图_第3张图片

将其设置成Line就基本OK了,对于其中的一些参数的意义,这里就不做介绍了,直接上代码吧。

 for (int pointIndex = 0; pointIndex < Len; pointIndex++)
            {
                chart1.Series["line1"].Points.AddY(temp[pointIndex]);
            }

在我自己的代码中,设置的是在点击打开按钮,读取数据显示在text中的同时,在chart中绘制数据曲线,所以,上边的那个函数是直接写在前面click事件里边的,即将上述代码直接贴到click最后面就OK了。这样一来,我们就完成了文本数据的读取和曲线的绘制。总的来说,功能还是比较简单,继续努力吧!



你可能感兴趣的:(C#学习)