读书人

於OWCY定的,100分求

发布时间: 2012-01-31 21:28:41 作者: rapoo

於OWCY定的,100分求解,分不再加!!!!!在等
OWCY的:
1.有需要定到右的Y,在有一可以,另一不行,是默以左的Y
2.想把返修率和目不良率以%的形式示,但示出

忙解下以上,分不再加,先了。

C# code
string xdata=string.Empty;string ydata=string.Empty;string zdata=string.Empty;string zdata1=string.Empty;string zdata2=string.Empty;string xdata2=string.Empty;xdata="374,296,240,100,300,200";ydata="9,7,15,10,0,6";zdata="0.0374,0.069,0.084,0.065,0,0.023";zdata1="0.05,0.05,0.05,0.05,0.05,0.05";OWC10.ChartSpaceClass myspace=new  OWC10.ChartSpaceClass();                        //myspace.Border.Color="Red" ; // 这样就看不到框线了..            //添加图表            //OWC10.ChChart mychart=myspace.Charts.Add(0);            OWC10.ChChart mychart=myspace.Charts.Add(0);            //指定图的类型            //mychart.Type=OWC10.ChartChartTypeEnum.chChartTypeColumnClustered;            mychart.Type=OWC10.ChartChartTypeEnum.chChartTypeColumnClustered;            //是否有图例            mychart.HasLegend=true;                        //是否有title            mychart.HasTitle=true;            mychart.Title.Caption="公司所有人员省别分析图";            mychart.Title.Font.Bold=true;            //为x轴加说明//            mychart.Axes[0].HasTitle=true;//            //mychart.Axes[0].Title.Caption="省别";//            mychart.Axes[0].Font.Color="Blue";//            mychart.Axes[0].HasTickLabels=true;            //为y轴加说明            //mychart.Axes[1].HasTitle=true;            //mychart.Axes[1].Title.Caption="人数";            mychart.Axes[1].Font.Color="Blue";            //mychart.Axes[1].MajorGridlines.Line.Color="Red"; //格线颜色            //mychart.Axes[1].MajorGridlines.Line.DashStyle=OWC10.ChartLineDashStyleEnum.chLineLongDash; //格线颜色            mychart.Axes[1].MajorGridlines.Line.DashStyle=OWC10.ChartLineDashStyleEnum.chLineLongDash; //格线颜色            mychart.Axes[1].MajorUnit=50;            //mychart.Axes[1].MajorTickMarks=OWC10.ChartTickMarkEnum.chTickMarkAutomatic;            mychart.Axes[1].MajorTickMarks=OWC10.ChartTickMarkEnum.chTickMarkAutomatic;                    //把资料读入            string picname="项目";            string picname1="生产数";            string picname2="不良数";            string picname3="返修率";            string picname4="目标不良率";            mychart.SeriesCollection.Add(0);            mychart.SeriesCollection[0].DataLabelsCollection.Add();            mychart.SeriesCollection[0].DataLabelsCollection[0].HasValue=true;            mychart.SeriesCollection[0].DataLabelsCollection[0].Interior.Color="yellow"; //数值的背景色            mychart.SeriesCollection.Add(1);            mychart.SeriesCollection[1].Ungroup(true);            OWC10.ChAxis seAxes=mychart.Axes.Add(mychart.SeriesCollection[1].get_Scalings(OWC10.ChartDimensionsEnum.chDimValues));            seAxes.Position   =   OWC10.ChartAxisPositionEnum.chAxisPositionRight;               seAxes.HasMajorGridlines   =   false;               seAxes.NumberFormat   =   "0.00%";            seAxes.MajorUnit   =  0.01;            seAxes.MajorTickMarks=OWC10.ChartTickMarkEnum.chTickMarkAutomatic;            mychart.SeriesCollection[1].DataLabelsCollection.Add();            mychart.SeriesCollection[1].DataLabelsCollection[0].HasValue=true;                                    mychart.SeriesCollection.Add(2);                         mychart.SeriesCollection[2].DataLabelsCollection.Add();            //mychart.SeriesCollection[2].DataLabelsCollection[0].HasValue=true;            mychart.SeriesCollection[2].Type=OWC10.ChartChartTypeEnum.chChartTypeLine;                                      //mychart.SeriesCollection[3].DataLabelsCollection[0].HasPercentage=true;                                            mychart.SeriesCollection.Add(3);            mychart.SeriesCollection[3].DataLabelsCollection.Add();            mychart.SeriesCollection[3].Type=OWC10.ChartChartTypeEnum.chChartTypeLine;                         //mychart.SeriesCollection[3].DataLabelsCollection[0].HasValue=false;            //mychart.SeriesCollection[3].DataLabelsCollection[0].HasPercentage=true;                    //汇出为图档            mychart.SeriesCollection[0].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,picname1);            mychart.SeriesCollection[1].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,picname2);            mychart.SeriesCollection[2].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,picname4);            mychart.SeriesCollection[3].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,picname3);                                 //给定分类(生产数)            mychart.SeriesCollection[0].SetData(OWC10.ChartDimensionsEnum.chDimCategories,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,xdata);            mychart.SeriesCollection[0].SetData(OWC10.ChartDimensionsEnum.chDimValues,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, ydata);            //(不良数)            mychart.SeriesCollection[1].SetData(OWC10.ChartDimensionsEnum.chDimCategories,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,xdata);            mychart.SeriesCollection[1].SetData(OWC10.ChartDimensionsEnum.chDimValues,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, zdata);            //返修率            mychart.SeriesCollection[3].SetData(OWC10.ChartDimensionsEnum.chDimCategories,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,xdata);            mychart.SeriesCollection[3].SetData(OWC10.ChartDimensionsEnum.chDimValues,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, zdata2);            //目标不良率            mychart.SeriesCollection[2].SetData(OWC10.ChartDimensionsEnum.chDimCategories,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral,xdata);            mychart.SeriesCollection[2].SetData(OWC10.ChartDimensionsEnum.chDimValues,+(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, zdata1);                                                 //汇出为图档            string mypath=(Server.MapPath(".")) + "\\ShowData.gif";            myspace.ExportPicture(mypath,"GIF",890,240); 



[解决办法]
好长的代码阿,没有耐心看
[解决办法]
我试了1下,只要mychart.SeriesCollection[0]和mychart.SeriesCollection[1]还是可以的
估计问题在多个表共用数轴的问题上把
[解决办法]
试一下每个表都用一个轴,2,3表的数轴设置为不可见
[解决办法]
.. 还是做不出来,不过奇怪的是,2,3数据都变成柱状图了,给你我调试的例子,

string xdata = string.Empty;
string ydata = string.Empty;
string zdata = string.Empty;
string zdata1 = string.Empty;
string zdata2 = string.Empty;
string xdata2 = string.Empty;

xdata = "374,296,240,100,300,200";
//ydata = "9,7,15,10,0,6";
//zdata = "0.0374,0.069,0.084,0.065,0,0.023";
//zdata1 = "0.05,0.05,0.05,0.05,0.05,0.05";
ydata = "9,7,15,10,0,6";
zdata = "0.0374,0.069,0.084,0.065,0,0.023";
zdata1 = "0.05,0.05,0.05,0.05,0.05,0.05";
zdata2 = "0.03,0.04,0.05,0.02,0.06,0.07";

OWC10.ChartSpaceClass myspace = new OWC10.ChartSpaceClass();
OWC10.ChChart mychart = myspace.Charts.Add(0);
mychart.Type = OWC10.ChartChartTypeEnum.chChartTypeColumnClustered;

mychart.HasLegend = true;
mychart.Axes[1].MajorUnit = 50;
mychart.Axes[1].MajorTickMarks = OWC10.ChartTickMarkEnum.chTickMarkAutomatic;
//把资料读入
string picname = "项目";
string picname1 = "生产数";
string picname2 = "不良数";
string picname3 = "返修率";
string picname4 = "目标不良率";
mychart.SeriesCollection.Add(0);
mychart.SeriesCollection[0].DataLabelsCollection.Add();
mychart.SeriesCollection[0].DataLabelsCollection[0].HasValue = true;
mychart.SeriesCollection[0].DataLabelsCollection[0].Interior.Color = "yellow"; //数值的背景色
mychart.SeriesCollection.Add(1);
mychart.SeriesCollection[1].Ungroup(true);
OWC10.ChAxis seAxes = mychart.Axes.Add(mychart.SeriesCollection[1].get_Scalings(OWC10.ChartDimensionsEnum.chDimValues));
seAxes.Position = OWC10.ChartAxisPositionEnum.chAxisPositionRight;
seAxes.HasMajorGridlines = false;
seAxes.NumberFormat = "0.00%";
seAxes.MajorUnit = 0.01;
seAxes.MajorTickMarks = OWC10.ChartTickMarkEnum.chTickMarkAutomatic;
//seAxes.HasTitle = false;
//seAxes.HasTickLabels = false;

mychart.SeriesCollection[1].DataLabelsCollection.Add();
mychart.SeriesCollection[1].DataLabelsCollection[0].HasValue = true;

mychart.SeriesCollection.Add(2);
mychart.SeriesCollection[2].DataLabelsCollection.Add();
mychart.SeriesCollection[2].Type = OWC10.ChartChartTypeEnum.chChartTypeLine;

mychart.SeriesCollection.Add(3);
mychart.SeriesCollection[3].DataLabelsCollection.Add();
mychart.SeriesCollection[3].Type = OWC10.ChartChartTypeEnum.chChartTypeLine;

mychart.SeriesCollection[0].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, picname1);
mychart.SeriesCollection[1].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, picname2);
mychart.SeriesCollection[2].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, picname4);
mychart.SeriesCollection[3].SetData(OWC10.ChartDimensionsEnum.chDimSeriesNames, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, picname3);



//给定分类(生产数)
mychart.SeriesCollection[0].SetData(OWC10.ChartDimensionsEnum.chDimCategories, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, xdata);
mychart.SeriesCollection[0].SetData(OWC10.ChartDimensionsEnum.chDimValues, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, ydata);
//(不良数)
mychart.SeriesCollection[1].SetData(OWC10.ChartDimensionsEnum.chDimCategories, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, xdata);
mychart.SeriesCollection[1].SetData(OWC10.ChartDimensionsEnum.chDimValues, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, zdata);
//返修率
mychart.SeriesCollection[3].SetData(OWC10.ChartDimensionsEnum.chDimCategories, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, xdata);
mychart.SeriesCollection[3].SetData(OWC10.ChartDimensionsEnum.chDimValues, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, zdata2);
//目标不良率
mychart.SeriesCollection[2].SetData(OWC10.ChartDimensionsEnum.chDimCategories, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, xdata);
mychart.SeriesCollection[2].SetData(OWC10.ChartDimensionsEnum.chDimValues, +(int)OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, zdata1);

OWC10.ChAxis seAxes2 = mychart.Axes.Add(mychart.SeriesCollection[2].get_Scalings(OWC10.ChartDimensionsEnum.chDimValues));
seAxes2.Position = OWC10.ChartAxisPositionEnum.chAxisPositionRight;
seAxes2.HasMajorGridlines = false;
seAxes2.NumberFormat = "0.00%";
seAxes2.MajorUnit = 0.01;
seAxes2.MajorTickMarks = OWC10.ChartTickMarkEnum.chTickMarkAutomatic;
seAxes2.HasTitle = false;
seAxes2.HasTickLabels = false;

OWC10.ChAxis seAxes3 = mychart.Axes.Add(mychart.SeriesCollection[3].get_Scalings(OWC10.ChartDimensionsEnum.chDimValues));
seAxes3.Position = OWC10.ChartAxisPositionEnum.chAxisPositionRight;
seAxes3.HasMajorGridlines = false;
seAxes3.NumberFormat = "0.00%";
seAxes3.MajorUnit = 0.01;
seAxes3.MajorTickMarks = OWC10.ChartTickMarkEnum.chTickMarkAutomatic;
seAxes3.HasTitle = false;
seAxes3.HasTickLabels = false;

string mypath = (Server.MapPath(".")) + "\\ShowData.gif";
myspace.ExportPicture(mypath, "GIF", 890, 240);
[解决办法]
ASP.NET 2.0中OWC生成柱状图和饼状图的源代码

读书人网 >asp.net

热点推荐