找回密码
 立即注册

QQ登录

只需一步,快速开始

鲁丰恺

注册会员

1

主题

4

帖子

11

积分

注册会员

积分
11
  • 34

    金币

  • 1

    主题

  • 4

    帖子

最新发帖
鲁丰恺
注册会员   /  发表于:2024-10-11 16:19  /   查看:241  /  回复:5
本帖最后由 鲁丰恺 于 2024-10-11 16:56 编辑

请问一下,我通过c1Chart3D1控件,绘制3D的柱状图。
怎么清空c1Chart3D1中的数据?

5 个回复

倒序浏览
鲁丰恺
注册会员   /  发表于:2024-10-11 16:22:32
沙发
这是我写入数据的代码:

   #region
            Random nex = new Random();
            
            // 创建数据源
            List<DataPoint> categorySales1 = new List<DataPoint>
            {
                new DataPoint(nex.Next(0,10), nex.Next(0,10), nex.Next(0,1200)),
                new DataPoint(nex.Next(0,10), nex.Next(0,10), nex.Next(0,1200)),
                new DataPoint(nex.Next(0,10), nex.Next(0,10), nex.Next(0,2200)),
                new DataPoint(nex.Next(0,10), nex.Next(0,10), nex.Next(0,1200)),
                new DataPoint(nex.Next(0,10), nex.Next(0,10), nex.Next(0,1200))
            };
            #endregion
              
            grid.RowCount = 11;
            grid.ColumnCount = 11;

            for (int i = 0; i < categorySales1.Count; i++)
            {
                var point = categorySales1[i];
                grid[Convert.ToInt32(point.X), Convert.ToInt32(point.Y)] = point.Z;
                textBox1.Text += point.X + "," + point.Y + "," + point.Z + "\r\n";
            }
            
            c1Chart3D1.UseAntiAliasedGraphics = true;//获取或设置一个值,该值指示在呈现时是否使用抗锯齿
回复 使用道具 举报
鲁丰恺
注册会员   /  发表于:2024-10-11 16:55:25
板凳
用了最笨的办法:




    grid.RowCount = 1;
                grid.ColumnCount = 1;

            for (int i = 0; i < categorySales1.Count; i++)
            {
                var point = categorySales1[i];
                grid[Convert.ToInt32(point.X), Convert.ToInt32(point.Y)] = point.Z;
                textBox1.Text += point.X + "," + point.Y + "," + point.Z + "\r\n";
            }



写入一个数据,强制清空,然后再重新写入有效数据。

回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-10-11 18:10:47
地板
你想要的清空后的效果是怎样的。如果仍是要保持这个3d图的行列数

那么把grid二维数组的z值都设置成0就行
回复 使用道具 举报
鲁丰恺
注册会员   /  发表于:2024-10-11 18:19:57
5#
Richard.Ma 发表于 2024-10-11 18:10
你想要的清空后的效果是怎样的。如果仍是要保持这个3d图的行列数

那么把grid二维数组的z值都设置成0就行

我不想保留,我想回到控件创建的初始状态,因为我下一次行列的数量可能会发生变化。

如果把grid的Z轴设置成0,在波形图上的XY轴平面就会出现方块。

请问还有没有更好的办法?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-10-12 11:26:03
6#
我没明白你说的初始状态是什么状态,如果是想要完全展示一个空的chart3d,那么直接把当前的chart3d对象直接给赋值一个新的C1Chart3D对象就行
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部