龙葵穿越到花样男子:实例298 折线图表分析商品价格走势

来源:百度文库 编辑:偶看新闻 时间:2024/05/02 09:53:57
实例298  折线图表分析商品价格走势
实例说明
商品在市场中的价格经常会由于各种原因而产生波动,企业应及时分析商品的价格走势,了解商品的市场行情,以帮助企业更好地制订生产和销售计划。本实例以折线图表的形式反映各月份商品价格走势,运行结果如图13.11所示。
  
图13.11  折线图表分析商品价格走势
技术要点
本实例通过SQL语句从数据库中检索出符合条件的数据,在绘制图形时,将对应的数据进行计算,并以适当的比例绘制到图形中。实例中主要用到Graphics类中的DrawLines方法来绘制折线,DrawLines方法的详细说明请参见实例297。
实现过程
(1)新建一个网站,将其命名为Ex13_11,默认主页为Default.aspx,添加新Web窗体,将其命名为CountMonth.aspx。
(2)本实例中图像的基本框架绘制方法和实例297基本相同,这里就不再赘述。本实例在绘制折线过程中算法与实例297有所不同。本实例中检索数据并绘制折线的代码如下:
int[] Count = new int[12];
string cmdtxt2 = "SELECT * FROM tb_10 WHERE ID="+ID+"";
SqlCommand Com1 = new SqlCommand(cmdtxt2, Con);
SqlDataAdapter da = new SqlDataAdapter( );
da.SelectCommand = Com1;
DataSet ds = new DataSet( );
da.Fill(ds);
int j = 0;
for(j=0;j<12;j++)
{
Count[j] = Convert.ToInt32(ds.Tables[0].
Rows[0][j+2].ToString( )) *26/ 500 ;
}
//显示折线效果
SolidBrush mybrush = new SolidBrush(Color.Red);
Point[] points = new Point[12];
points[0].X = 60; points[0].Y = 340 - Count[0];
points[1].X = 100; points[1].Y = 340 - Count[1];
points[2].X = 140; points[2].Y = 340 - Count[2];
points[3].X = 180; points[3].Y = 340 - Count[3];
points[4].X = 220; points[4].Y = 340 - Count[4];
points[5].X = 260; points[5].Y = 340 - Count[5];
points[6].X = 300; points[6].Y = 340 - Count[6];
points[7].X = 340; points[7].Y = 340 - Count[7];
points[8].X = 380; points[8].Y = 340 - Count[8];
points[9].X = 420; points[9].Y = 340 - Count[9];
points[10].X = 460; points[10].Y = 340 - Count[10];
points[11].X = 500; points[11].Y = 340 - Count[11];
g.DrawLines(mypen2, points);  //绘制折线
举一反三
根据本实例,读者可以:
开发汽车价格分析模块;
开发全天公路交通流量分析模块。