用于交互式和可定制图表的免费 C# .NET 库
强大的开源免费 C# .NET 图表库,可轻松创建和管理交互式图表、图表和图形。
在软件开发中,制作交互式且美观的图表可能很困难。无论您是在制作流程图、组织结构图还是任何以图表为中心的项目,拥有一个强大的库来提供帮助都是关键。这就是 .NET 库 GoDiagram 发挥作用的地方。GoDiagram 是 .NET 开发人员的强大工具,它提供了广泛的功能,让您在 Windows 窗体和 WPF 应用程序中更轻松地创建和自定义交互式图表。
GoDiagram 是一个灵活的 .NET 库,它使像您这样的软件开发人员能够为各种应用程序制作引人入胜且个性化的图表。这个库由著名的图表解决方案专家 Northwoods Software 创建,提供了广泛的功能。它为您提供了一个强大的工具包,可让您在 Windows 窗体和 WPF 平台上轻松开发图表应用程序。它的目标是简化开发过程,让您轻松制作、修改和处理图表,同时赋予它们时尚精致的外观。
使用 GoDiagram,您可以使用工具为业务流程设计和网络结构显示等各个领域创建应用程序。此资源提供各种图表部分,如节点、链接和组,您可以根据自己的需求进行调整。它还附带布局算法,让您以视觉上吸引人的方式组织节点和链接,而无需任何麻烦。如果您正在处理需要为工作、学校或任何其他领域创建图表的项目,GoDiagram 可以让您的工作更轻松,并改善人们与您的创作的互动方式。为什么不测试一下,看看它能做什么,并在您的 .NET 项目中挖掘图表的潜力呢?
开始使用 GoDiagram
安装 GoDiagram 的推荐方法是使用 NuGet。请使用以下命令顺利安装。
通过 NuGet 安装 GoDiagram
Install-Package Northwoods.GoDiagram.WinForms -Version 10.0.6
通过 C# API 创建简单图表
开源 GoDiagram 库已包含对从头开始创建新图表并在 C# 应用程序内管理其属性的全面支持。它支持创建各种类型的图表,例如流程图、状态图、组织结构图、框图、Pert 图、可视化树等等。这是一个简单示例,演示了软件开发人员如何使用 C# .NET 命令创建基本图表。根据需要自定义和扩展图表也非常容易。
如何在 C# 应用程序内生成具有单个节点的基本图表?
// Create a GoView control
GoView myView = new GoView();
// Add it to your Windows Forms or WPF application
// Create a node
GoBasicNode myNode = new GoBasicNode();
myNode.Text = "My Node";
// Add the node to the view
myView.Document.Add(myNode);
通过 C# 库将图表转换为图像
GoDiagram 库使软件开发人员能够在 .NET 应用程序内将现有图表转换为不同类型的图像格式。该库提供了两种从图表创建图像的方法,第一种方法生成 Base64 图像数据字符串,第二种方法以图像数据为源生成新图像。以下示例显示如何将现有图表转换为 PNG 图像格式。您可以根据特定用例的需要轻松自定义导出格式和文件路径。
如何使用 .NET 库将图表转换为图像格式?
using System;
namespace GoDiagramToImage
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
InitializeGoDiagram();
}
private void InitializeGoDiagram()
{
// Create a GoView control and add it to the form
GoView goView = new GoView();
goView.Dock = DockStyle.Fill;
Controls.Add(goView);
// Load a sample diagram from a file (you can load your own diagram here)
goView.Document.Clear();
goView.Document.Add(new GoBasicNode() { Location = new PointF(100, 100), Text = "Sample Node 1" });
goView.Document.Add(new GoBasicNode() { Location = new PointF(300, 100), Text = "Sample Node 2" });
goView.Document.Add(new GoLink() { FromPort = goView.Document[0].BottomPort, ToPort = goView.Document[1].TopPort });
// Optional: Perform an automatic layout to arrange the diagram nicely
goView.Document.Layout = new GoLayoutForceDirected();
}
private void exportButton_Click(object sender, EventArgs e)
{
// Create a Bitmap to render the diagram
Bitmap diagramImage = new Bitmap(goView.ClientSize.Width, goView.ClientSize.Height);
Graphics graphics = Graphics.FromImage(diagramImage);
// Render the diagram onto the Bitmap
goView.DrawView(graphics);
// Save the Bitmap as an image file (e.g., PNG)
diagramImage.Save("Diagram.png", System.Drawing.Imaging.ImageFormat.Png);
// Clean up resources
graphics.Dispose();
diagramImage.Dispose();
}
}
}
多功能节点/链接类型和序列化支持
GoDiagram 库提供各种内置节点和链接类型,包括简单形状、文本标签和自定义元素。您可以轻松创建和自定义这些元素以表示应用程序中的数据或概念。无论您需要绘制流程图、组织结构图还是任何其他类型的图表,该库都能满足您的需求。此外,该库还允许用户以各种格式保存和加载图表,包括 XML、二进制和图像文件。此功能使保存用户创建的图表并在不同平台之间共享它们变得容易。