找回密码
 立即注册

QQ登录

只需一步,快速开始

chensheng115

初级会员

9

主题

25

帖子

382

积分

初级会员

积分
382

活字格认证

[已处理] spreadchart问题

chensheng115
初级会员   /  发表于:2012-2-20 15:03  /   查看:4873  /  回复:1
我在调试spreadchart的时候碰到如下问题:
  1. DataTable dt = new DataTable("Test");
  2.             DataRow dr = default(DataRow);
  3.             dt.Columns.Add("Series1");
  4.             dt.Columns.Add("Series2");
  5.             dr = dt.NewRow();
  6.             dr[0] = 1;
  7.             dr[1] = 4;
  8.             dt.Rows.Add(dr);
  9.             dr = dt.NewRow();
  10.             dr[0] = 2;
  11.             dr[1] = 5;
  12.             dt.Rows.Add(dr);
  13.             dr = dt.NewRow();
  14.             dr[0] = 3;
  15.             dr[1] = 6;
  16.             dt.Rows.Add(dr);
  17.             fpSpread1.DataSource = dt;
  18.             PieSeries ps = new PieSeries();
  19.             FarPoint.Win.Spread.Model.CellRange cellRange = new FarPoint.Win.Spread.Model.CellRange(0, 0, 2, 2);
  20.             fpSpread1.Sheets[0].AddChart(cellRange, typeof(FarPoint.Win.Chart.PieSeries), 400, 400, 0, 0);
复制代码
这个画出来的图单击右键是可以更改图表类型的,也就是从饼状图改成折线图什么的都可以。
但是用
  1. XYPointSeries series0 = new XYPointSeries();

  2.             series0.SeriesName = "Series 0";
  3.             series0.XValues.Add(1.0);

  4.             series0.XValues.Add(2.0);

  5.             series0.XValues.Add(4.0);

  6.             series0.XValues.Add(8.0);

  7.             series0.YValues.Add(2.0);

  8.             series0.YValues.Add(4.0);

  9.             series0.YValues.Add(3.0);

  10.             series0.YValues.Add(5.0);


  11.             XYPlotArea plotArea = new XYPlotArea();
  12.             plotArea.Location = new PointF(0.2f, 0.2f);
  13.             plotArea.Size = new SizeF(0.6f, 0.6f);
  14.             plotArea.Series.Add(series0);
  15.             LabelArea label = new LabelArea();
  16.             label.Text = "XY Point Chart";
  17.             label.Location = new PointF(0.5f, 0.02f);
  18.             label.AlignmentX = 0.5f;
  19.             label.AlignmentY = 0.0f;
  20.             LegendArea legend = new LegendArea();
  21.             legend.Location = new PointF(0.98f, 0.5f);
  22.             legend.AlignmentX = 1.0f;
  23.             legend.AlignmentY = 0.5f;
  24.             ChartModel model = new ChartModel();
  25.             model.LabelAreas.Add(label);
  26.             model.LegendAreas.Add(legend);
  27.             model.PlotAreas.Add(plotArea);
  28.             FarPoint.Win.Spread.Chart.SpreadChart chart = new FarPoint.Win.Spread.Chart.SpreadChart();
  29.             chart.Size = new Size(200, 200);
  30.             chart.Location = new Point(100, 100);
  31.             chart.Model = model;
  32.             fpSpread1.ActiveSheet.Charts.Add(chart);
复制代码
却改不了图表类型。
我想既用后者,又能让用户改图表类型,有没有什么办法

1 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-2-20 16:33:00
沙发

回复 1# chensheng115 的帖子

chensheng115 你好,
第二种设置方式在给图表填充数据之后即可更改图表样式。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部