ASP.NET使用owc生成统计图表(代码+注释)
/// 生成统计图表
/// </summary>
private void makelinechart()
{
//y坐标轴
string[] dataname = { "星期一","星期二","星期三","星期四","星期五","星期六","星期日" };
//第一条曲线的数据
int [] data = { 0,10,20,100,40,50,60 };
//第二条曲线的数据
int[] data1 = {100,50,41,86};
//第三条曲线的数据
int [] data2 = { 10,50,100,30,50,60 };
string strvalue1 = "";
string strvalue = "";
string strvalue2 = "";
string strcateory = "";
//循环取得数据并格式化为owc需要的格式,(加'\t')
for( int i = 0; i < dataname.length; i++ )
{
strcateory += dataname[i] + '\t';
}
for( int i=0 ; i< data.length; i++ )
{
strvalue += data[i].tostring() + '\t';
}
for( int i=0 ; i< data1.length; i++ )
{
strvalue1 += data1[i].tostring() + '\t';
}
for( int i=0 ; i< data2.length; i++ )
{
strvalue2 += data2[i].tostring() + '\t';
}
//创建chartspace对象来放置图表
owc.chartspace myspace = new owc.chartspaceclass();
//在chartspace对象中添加图表,add方法返回chart对象
owc.wcchart mychart = myspace.charts.add(0);
//指定图表的类型为线性图
mychart.type = owc.chartcharttypeenum.chcharttypesmoothline;
//指定图表是否需要图例
mychart.haslegend = true;
//给定标题
mychart.hastitle = true;
mychart.title.caption = "交易曲线图";
//给定x\y轴的图示说明
mychart.axes[0].hastitle = true;
mychart.axes[0].title.caption = "数量";
mychart.axes[1].hastitle = true;
mychart.axes[1].title.caption = "日期";
//添加一个series
mychart.seriescollection.add(0);
//给定series的名字
mychart.seriescollection[0].setdata( owc.chartdimensionsenum.chdimseriesnames,(int)owc.chartspecialdatasourcesenum.chdataliteral,"购买" );
//给定series的分类
mychart.seriescollection[0].setdata( owc.chartdimensionsenum.chdimcategories,(int)owc.chartspecialdatasourcesenum.chdataliteral,strcateory );
//给定具体值
mychart.seriescollection[0].setdata( owc.chartdimensionsenum.chdimvalues,(int)owc.chartspecialdatasourcesenum.chdataliteral,strvalue );
//添加一个series
mychart.seriescollection.add(1);
//给定series的名字
mychart.seriescollection[1].setdata( owc.chartdimensionsenum.chdimseriesnames,(int)owc.chartspecialdatasourcesenum.chdataliteral,"出售" );
//给定series的分类
mychart.seriescollection[1].setdata( owc.chartdimensionsenum.chdimcategories,(int)owc.chartspecialdatasourcesenum.chdataliteral,strcateory );
//给定具体值
mychart.seriescollection[1].setdata( owc.chartdimensionsenum.chdimvalues,(int)owc.chartspecialdatasourcesenum.chdataliteral,strvalue1 );
//添加一个series
mychart.seriescollection.add(2);
//给定series的名字
mychart.seriescollection[2].setdata( owc.chartdimensionsenum.chdimseriesnames,(int)owc.chartspecialdatasourcesenum.chdataliteral,"总成交" );
//给定series的分类
mychart.seriescollection[2].setdata( owc.chartdimensionsenum.chdimcategories,(int)owc.chartspecialdatasourcesenum.chdataliteral,strcateory );
//给定具体值
mychart.seriescollection[2].setdata( owc.chartdimensionsenum.chdimvalues,(int)owc.chartspecialdatasourcesenum.chdataliteral,strvalue2 );
//输出成gif文件
string strabsolutepath = ( server.mappath(".") ) + @"\images\tempchart.gif";
myspace.exportpicture( strabsolutepath,"gif",300,300 );
//创建gif文件的相对路径
string strrelativepath = "../images/tempchart.gif";
//把图片添加到image
image.imageurl = strrelativepath;
}//end