找回密码
 立即注册

QQ登录

只需一步,快速开始

liuyinlong

初级会员

24

主题

59

帖子

448

积分

初级会员

积分
448

活字格认证

liuyinlong
初级会员   /  发表于:2012-12-27 08:37  /   查看:6893  /  回复:7
请问 spread 图表怎么用代码设置颜色啊? 谢谢!

7 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-12-27 09:38:00
沙发
liuyinlong 你好

请问你创建的是什么类型的图表,折线图、柱状图、条形图、饼图?

能否截个图来看一看。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-12-27 11:02:00
板凳
回复 1楼liuyinlong的帖子

比如我有以下类型的图表:

74.png

可以通过以下代码来修改颜色:
  1.     private void Form1_Load(object sender, EventArgs e)
  2.     {
  3.         SpreadChart chart = fpSpread1.ActiveSheet.Charts[0] as SpreadChart;
  4.         FarPoint.Win.Chart.LineSeries ls = chart.Model.PlotAreas[0].Series[0] as FarPoint.Win.Chart.LineSeries;
  5.         ls.LineBorder = new SolidLine(Color.Aquamarine, 2.0f);

  6.         ls = chart.Model.PlotAreas[0].Series[1] as FarPoint.Win.Chart.LineSeries;
  7.         ls.LineBorder = new SolidLine(Color.YellowGreen, 2.0f);

  8.         ls = chart.Model.PlotAreas[0].Series[1] as FarPoint.Win.Chart.LineSeries;
  9.         ls.LineBorder = new SolidLine(Color.BlueViolet, 2.0f);
  10.     }
复制代码
回复 使用道具 举报
liuyinlong
初级会员   /  发表于:2012-12-28 09:33:00
地板
回复 3楼dof的帖子


未命名.jpg (6.43 KB, 下载次数: 389)
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-12-28 12:03:00
5#
回复 4楼liuyinlong的帖子

liuyinlong 你好

这里有一篇文章介绍了如何设置饼图颜色:自定义饼图的显示样式
回复 使用道具 举报
liuyinlong
初级会员   /  发表于:2012-12-28 15:00:00
6#
回复 5楼dof的帖子

你好 那一系列颜色是怎么弄的?没看太懂,几种颜色和饼图颜色数量也对不上啊,能说明一下吗?

或者说明一下 设置某一块的颜色代码怎么设置? 谢谢啦
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-12-28 15:34:00
7#
预定义的颜色数量可以比饼图的分区多,多余的不会显示到饼图中。

  1.         private void _7498_Pie_Load(object sender, EventArgs e)
  2.         {
  3.             // 预定义一些颜色,颜色数量可能会比饼图的分区数量要多,多余的不会显示到饼图中
  4.             string colors = "#ffbb22,#ff9911,#aacc33,#aabbbb,#bb0033,#00cc33,#990099,#0011aa,#14D0EE,#B17EC3,#E67F16,#EE5907,#6A2DA1,#0A35F0,#A816D7,#D218AD,#EE0A96,#5A4DAE,#ACE9D9";

  5.             // 取出Spread中的第一个图表
  6.             SpreadChart chart0 = fpSpread1.ActiveSheet.Charts[0];

  7.             // 对所有系列的填充方案进行修改
  8.             foreach (PieSeries series in chart0.Model.PlotAreas[0].Series)
  9.             {
  10.                 // 饼图各个区域的现有填充方法
  11.                 FillCollection fc = series.PieFills;

  12.                 // 根据上面定义的颜色创建饼图的新填充方法
  13.                 List<SolidFill> list = new List<SolidFill>();
  14.                 foreach (var color in colors.Split(new char[] { ',' }))
  15.                 {
  16.                     list.Add(new SolidFill(ColorTranslator.FromHtml(color)));
  17.                 }

  18.                 // 清除现有的填充颜色
  19.                 fc.Clear();

  20.                 // 添加新的填充颜色
  21.                 fc.AddRange(list.ToArray());
  22.             }
  23.         }
复制代码
回复 使用道具 举报
liuyinlong
初级会员   /  发表于:2012-12-28 16:32:00
8#
回复 7楼dof的帖子

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