找回密码
 立即注册

QQ登录

只需一步,快速开始

婧友521

银牌会员

28

主题

59

帖子

3423

积分

银牌会员

积分
3423

活字格认证

婧友521
银牌会员   /  发表于:2012-6-13 10:51  /   查看:5565  /  回复:1
如下图:
这个柱形图我怎样使它的y轴显示为0~100%,中间间隔为20%,x轴则格式化为0.00%
2012-06-13_104536.png

1 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-6-13 11:26:00
沙发
回复 1楼婧友521的帖子

测试代码如下:

  1. protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (IsPostBack)
  4.                 return;
  5.             //设置数据源
  6.             DataTable dt = new DataTable("Test");
  7.             DataRow dr = default(System.Data.DataRow);
  8.             dt.Columns.Add("名称");
  9.             dt.Columns.Add("数量");

  10.             dr = dt.NewRow();
  11.             dr[0] = "电器";
  12.             dr[1] = 0.2;
  13.             dt.Rows.Add(dr);

  14.             dr = dt.NewRow();
  15.             dr[0] = "服装";
  16.             dr[1] = 0.5;
  17.             dt.Rows.Add(dr);

  18.             dr = dt.NewRow();
  19.             dr[0] = "家具";
  20.             dr[1] = 0.3;
  21.             dt.Rows.Add(dr);

  22.             //设置 BarSeries
  23.             FarPoint.Web.Chart.BarSeries series = new FarPoint.Web.Chart.BarSeries();

  24.             //设置图表展示数据
  25.             series.Values.DataSource = dt;
  26.             series.Values.DataField = dt.Columns[1].ColumnName;
  27.             
  28.             //使用多样化颜色显示
  29.             series.VaryColors = true;

  30.             series.LabelNumberFormat = "00.0%";

  31.             //设置 X 轴显示名称
  32.             series.CategoryNames.Add("电器");
  33.             series.CategoryNames.Add("服装");
  34.             series.CategoryNames.Add("家具");
  35.             series.LabelVisible = true;

  36.             //设置 YPlotArea
  37.             FarPoint.Web.Chart.YPlotArea plotArea = new FarPoint.Web.Chart.YPlotArea();
  38.             //设置 Y 轴显示为 Percentage
  39.             plotArea.YAxes[0].LabelNumberFormat = "00.0%";
  40.             // 设置刻度
  41.             plotArea.YAxes[0].AutoMajorUnit = false;
  42.             plotArea.YAxes[0].AutoMaximum = false;
  43.             plotArea.YAxes[0].AutoMinimum = false;
  44.             // 设置刻度间隔为 20%
  45.             plotArea.YAxes[0].MajorUnit = 0.2;

  46.             //设置 YPlotArea 显示位置
  47.             plotArea.Location = new System.Drawing.PointF(0.2F, 0.2F);
  48.             //设置 YPlotArea 大小
  49.             plotArea.Size = new System.Drawing.SizeF(0.6F, 0.6F);


  50.             plotArea.Series.Add(series);

  51.             //设置图例
  52.             LegendArea legend = new LegendArea();
  53.             legend.Location = new PointF(0.98f, 0.5f);
  54.             legend.AlignmentX = 1.0f;
  55.             legend.AlignmentY = 0.5f;

  56.             //设置图表标签
  57.             LabelArea label = new LabelArea();
  58.             label.Text = "产品分布";
  59.             label.Location = new PointF(0.5f, 0.02f);
  60.             label.AlignmentX = 0.5f;
  61.             label.AlignmentY = 0.0f;

  62.             FarPoint.Web.Chart.ChartModel model = new FarPoint.Web.Chart.ChartModel();
  63.             model.PlotAreas.Add(plotArea);
  64.             model.LegendAreas.Add(legend);
  65.             model.LabelAreas.Add(label);
  66.             
  67.             FarPoint.Web.Spread.Chart.SpreadChart chart = new FarPoint.Web.Spread.Chart.SpreadChart();
  68.             chart.ViewType = ChartViewType.View3D;
  69.             chart.Model = model;
  70.             FpSpread1.Sheets[0].Charts.Add(chart);
  71.         }
复制代码


fpchart.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部