m0_71677215 2023-02-07 20:53 采纳率: 0%
浏览 15

利用mathgl进行数据可视化

想要利用mathgl绘制出一个带有凸包的圆环,其中圆环的整体颜色一样,凸包的颜色与凸包上的点到圆环上面的距离有关。如下图二所示。所拥有的条件是该圆环的半径厚度,以及一个二维数组用于绘制凸包。如图1所示。

img


img

  • 写回答

1条回答 默认 最新

  • 梦想橡皮擦 优质创作者: python技术领域 2023-02-07 21:08
    关注

    方案来自 梦想橡皮擦 狂飙组基于 GPT 编写的 “程秘”


    使用MathGL库中的mglGraph类实现这一功能。

    using System;
    using MathGL;
    
    namespace MathGLExample
    {
        class Program
        {
            static void Main(string[] args)
            {
                int radius = 10;
                int thickness = 2;
                int[,] convexHullData = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 } };
    
                var graph = new mglGraph();
                graph.Ring(0, 0, radius, thickness);
    
                for (int i = 0; i < convexHullData.GetLength(0); i++)
                {
                    int x = convexHullData[i, 0];
                    int y = convexHullData[i, 1];
                    double distance = Math.Sqrt(x * x + y * y);
    
                    graph.SetColor(distance / radius, "g");
                    graph.Ball(x, y, distance / 10);
                }
    
                graph.WritePNG("ring_with_convex_hull.png");
            }
        }
    }
    
    

    在这个示例中,我们使用了Ring方法绘制圆环,并使用一个二维数组绘制凸包。
    关于凸包的绘制颜色,我们使用了一个简单的计算方式:将凸包上的点与圆环上的距离除以圆环的半径。
    最后,我们使用了WritePNG方法将图形输出为PNG格式。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月7日