VC++6.0,从TXT文件中读取数据,然后制成曲线图(100分)

  • 主题发起人 主题发起人 cxjahwle
  • 开始时间 开始时间
C

cxjahwle

Unregistered / Unconfirmed
GUEST, unregistred user!
数据是这样的,如下:
20.3
20.4


25.6
文件中只有数据
制成曲线图后,要能将此图打印出来
清大家帮忙,分数我不吝惜,不够可以加
 
读数据:
CArray<double,double&amp;> m_Array;
FILE* fp=fopen("data.txt","r+");
while( !feof(fp))
{
float ftmp;
fscanf(fp,"%f/n",&amp;ftmp);
m_Array.Add(ftmp);
}
fclose(fp);
绘制图形、打印图形,都是一些GDI的操作。参考一下VC内幕就有。
 
谢谢你,能在清楚点吗,就是把文件中的数据读出来,在绘成点
步骤具体点,我不太会VC++,郁闷死了
最好有中文解释
 
//X&amp;iexcl;&amp;cent;Y&amp;Ecirc;&amp;Ccedil;&amp;Aacute;&amp;frac12;&amp;cedil;&amp;ouml;&amp;para;&amp;thorn;&amp;Icirc;&amp;not;&amp;Ecirc;&amp;yacute;×é&amp;pound;&amp;not;·&amp;Ouml;±&amp;eth;±&amp;pound;&amp;acute;&amp;aelig;X&amp;pound;&amp;not;Y&amp;Ouml;&amp;micro;
CDC* pDC=GetDC();
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
/*&amp;raquo;&amp;shy;&amp;micro;&amp;atilde;&amp;sup3;&amp;Igrave;&amp;ETH;ò
//str.Format("%d,%d",i,j);
//pDC->TextOut(150*X[j]+360,150*Y[j]+360,str);
pDC->SetPixel(CPoint(150*X[j]+380,150*Y[j]+360),RGB(0,0,255));
pDC->SetPixel(CPoint(150*X[j]+380-1,150*Y[j]+360-1),RGB(0,0,255));
pDC->SetPixel(CPoint(150*X[j]+380+1,150*Y[j]+360+1),RGB(0,0,255));
pDC->SetPixel(CPoint(150*X[j]+380+1,150*Y[j]+360-1),RGB(0,0,255));
pDC->SetPixel(CPoint(150*X[j]+380-1,150*Y[j]+360+1),RGB(0,0,255));
/**/
//&amp;Iuml;&amp;Acirc;&amp;Atilde;&amp;aelig;&amp;Ecirc;&amp;Ccedil;&amp;raquo;&amp;shy;&amp;Iuml;&amp;szlig;&amp;iexcl;&amp;pound;&amp;micro;&amp;Atilde;&amp;micro;&amp;frac12;&amp;Ograve;&amp;raquo;&amp;cedil;&amp;ouml;&amp;Iacute;&amp;oslash;&amp;cedil;&amp;ntilde;
if(i-1 >=0)
{
pDC->MoveTo(CPoint(150*X[j]+380,150*Y[j]+360));
pDC->LineTo(CPoint(150*X[i-1][j]+380,150*Y[i-1][j]+360));
}
if(i+1 <M)
{
pDC->MoveTo(CPoint(150*X[j]+380,150*Y[j]+360));
pDC->LineTo(CPoint(150*X[i+1][j]+380,150*Y[i+1][j]+360));
}
if(j-1>=0)
{
pDC->MoveTo(CPoint(150*X[j]+380,150*Y[j]+360));
pDC->LineTo(CPoint(150*X[j-1]+380,150*Y[j-1]+360));
}
if(j+1<N)
{
pDC->MoveTo(CPoint(150*X[j]+380,150*Y[j]+360));
pDC->LineTo(CPoint(150*X[j+1]+380,150*Y[j+1]+360));
}

}

}
ReleaseDC(pDC);
 
用EXCEL控件吧
 
用BCB的TChart控件很方便
int i = 0;
FILE* fp=fopen("data.txt","r+");
while( !feof(fp))
{
float ftmp;
fscanf(fp,"%f/n",&amp;ftmp);
Chart1->Series[0]->AddXY(i,ftmp,"",clTeeColor);
i++;
}
fclose(fp);
 
后退
顶部