DevExpress WinForms使用教程:SankeyDiagramControl类使用介绍(Part 1)

    

DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!体验击下载>>

命名空间:DevExpress.XtraCharts.Sankey

程序集:DevExpress.XtraCharts.v20.2.UI.dll

声明

C#

[SerializationContext(typeof(SankeySerializationContext))]public class SankeyDiagramControl :Control,ISankeyContainer,IToolTipControlClient,ISupportLookAndFeel,ISankeyRenderProvider,IChartRenderProvider,IPrintable,IBasePrintable

VB.NET

<SerializationContext(GetType(SankeySerializationContext))>Public Class SankeyDiagramControlInherits ControlImplements ISankeyContainer,IToolTipControlClient,ISupportLookAndFeel,ISankeyRenderProvider,IChartRenderProvider,IPrintable,IBasePrintable
注释

Sankey图表描述系统中实体(也称为节点)之间的转移或流,该图可以帮助您找到对流程最重要的贡献。

下图显示了图元素:

DevExpress WinForms使用教程:Sankey Diagram控件

每个链接都连接源节点和目标节点,并具有分配的值-权重,链接的宽度与其重量成正比。

添加到项目

将SankeyDiagramControl组件从Toolbox拖放到窗体中,来将Sankey图添加到项目中。

DevExpress WinForms使用教程:Sankey Diagram控件

这会将对以下程序集的引用添加到项目中:

  • DevExpress.Charts.v20.2.Core.dll
  • DevExpress.Data.Desktop.v20.2.dll
  • DevExpress.Data.v20.2.dll
  • DevExpress.Printing.v20.2.Core.dll
  • DevExpress.XtraPrinting.v20.2.dll
  • DevExpress.Utils.v20.2.dll
  • DevExpress.Utils.v20.2.Core.dll
  • DevExpress.XtraBars.v20.2.dll
  • DevExpress.XtraCharts.v20.2.dll
  • DevExpress.XtraCharts.v20.2.UI.dll
  • DevExpress.XtraCharts.v20.2.Wizard.dll
  • DevExpress.XtraEditors.v20.2.dll

绑定到数据

使用DataSource属性将控件绑定到数据源,您可以为该属性分配一个实现以下任何接口的对象:IList,IListSource或IBindingList。

然后指定存储用于源节点、目标节点和权重数据的数据成员名称:

  • SourceDataMember – 指定包含源节点标签的数据成员的名称。
  • TargetDataMember – 指定包含目标节点标签数据成员的名称。
  • WeightDataMember (Optional) – 指定包含链接权重的数据成员名称,如果未指定WeightDataMember属性,则权重等于1。

C#

using System;using System.Collections.Generic;using System.Windows.Forms;using DevExpress.XtraCharts.Sankey;namespace SankeySample {public partial class Form1 : Form {public Form1() {InitializeComponent();}private void Form1_Load(object sender, EventArgs e) {sankeyDiagramControl1.DataSource = GetSankeyItems();sankeyDiagramControl1.SourceDataMember = "Source";sankeyDiagramControl1.TargetDataMember = "Target";sankeyDiagramControl1.WeightDataMember = "Value";sankeyDiagramControl1.Titles.Add(new SankeyTitle { Text = "Export/Import" });}List<SankeyItem> GetSankeyItems() {List<SankeyItem> data = new List<SankeyItem> {new SankeyItem { Source = "France", Target = "UK", Value = 53 },new SankeyItem { Source = "Australia", Target = "UK", Value = 72 },new SankeyItem { Source = "France", Target = "Canada", Value = 81 },new SankeyItem { Source = "China", Target = "Canada", Value = 96 },new SankeyItem { Source = "UK", Target = "France", Value = 61 },new SankeyItem { Source = "Canada", Target = "France", Value = 89 },};return data;}}public class SankeyItem {public string Source { get; set; }public string Target { get; set; }public double Value { get; set; }}}

VB.NET

Imports SystemImports System.Collections.GenericImports System.Windows.FormsImports DevExpress.XtraCharts.SankeyNamespace SankeySamplePublic Partial Class Form1Inherits FormPublic Sub New()InitializeComponent()End SubPrivate Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)sankeyDiagramControl1.DataSource = GetSankeyItems()sankeyDiagramControl1.SourceDataMember = "Source"sankeyDiagramControl1.TargetDataMember = "Target"sankeyDiagramControl1.WeightDataMember = "Value"sankeyDiagramControl1.Titles.Add(New SankeyTitle With {.Text = "Export/Import"})End SubPrivate Function GetSankeyItems() As List(Of SankeyItem)Dim data As List(Of SankeyItem) = New List(Of SankeyItem) From {New SankeyItem With {.Source = "France", .Target = "UK", .Value = 53},New SankeyItem With {.Source = "Australia", .Target = "UK", .Value = 72},New SankeyItem With {.Source = "France", .Target = "Canada", .Value = 81},New SankeyItem With {.Source = "China", .Target = "Canada", .Value = 96},New SankeyItem With {.Source = "UK", .Target = "France", .Value = 61},New SankeyItem With {.Source = "Canada", .Target = "France", .Value = 89}}Return dataEnd FunctionEnd ClassPublic Class SankeyItemPublic Property Source As StringPublic Property Target As StringPublic Property Value As DoubleEnd ClassEnd Namespace

结果:

DevExpress WinForms使用教程:Sankey Diagram控件

DevExpress技术交流群2:775869749      欢迎一起进群讨论

2020年终大促
标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月15日
下一篇 2020年10月15日

相关推荐

发表回复

登录后才能评论