Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted Companies

Overview

The ASP.NET Core Sankey Diagram is a flow based visualization that proportionally represents the movement of values across different stages within a process. It is ideal for demonstrating complex workflows, energy distribution models, and any use case that involves directional data flow between stages.


Why choose the Syncfusion ASP.NET Core Sankey Diagram?

Aspnetcore Sankey Interactive image

Interactive Sankey Diagram

Integrated tooltip interactions allow users to examine the Sankey Diagram and access in depth details about nodes and their connecting links.

Aspnetcore Sankey Rich Feature Set image

Rich feature set

The ASP.NET Core Sankey Diagram offers support for legends, layout directions, labels, titles, themes, events, customizable nodes and links, as well as printing and export functionality.

Aspnetcore Sankey Adapts To Any Resolution image

Adapts to any resolution

The Sankey Diagram is built with a fully responsive layout that adjusts smoothly across desktops, touch enabled devices, and smartphones. It delivers consistent performance on iOS, Android, and Windows platforms.

Aspnetcore Sankey Customizable Themes image

Attractive, customizable themes

Provides professionally crafted themes such as Material 3, Fluent 2, Tailwind CSS, Bootstrap, Material, and Fabric to complement a wide range of application designs.

Aspnetcore Sankey Elegant Animation image

Elegant animation

The Sankey Diagram incorporates polished animations to present data changes with clear and fluid transitions.


ASP.NET Core Sankey Diagram code example

Begin working with the ASP.NET Core Sankey Diagram using just a few lines of CSHTML and C# code, as illustrated below. You can also explore our ASP.NET Core Sankey sample to gain deeper insight into component rendering and configuration.

<div class="control-section" align="center">
        <ejs-sankey id="sankey-container" title="Device Usage">
            <e-sankey-nodes>
                @foreach (var node in Model.Nodes)
                {
                    <e-sankey-node id="@node.Id" color="@node.Color"></e-sankey-node>
                }
            </e-sankey-nodes>
            <e-sankey-links>
                @foreach (var link in Model.Links)
                {
                    <e-sankey-link sourceId="@link.SourceId" targetId="@link.TargetId" value="@link.Value"></e-sankey-link>
                }
            </e-sankey-links>
            <e-sankey-nodesettings width="30" padding="10"></e-sankey-nodesettings>
            <e-sankey-linksettings colorType="Source"></e-sankey-linksettings>
            <e-sankey-legendsettings visible="true" position="Bottom"></e-sankey-legendsettings>
        </ejs-sankey>
</div>
public class HomeController : Controller 
{
    public ActionResult Index() 
    {  
        public class SankeyNode
        {
            public string Id { get; set; } = "";
            public string? Color { get; set; }
        }

        public class SankeyLink
        {
            public string SourceId { get; set; } = "";
            public string TargetId { get; set; } = "";
            public double Value { get; set; }
        }

        public List<SankeyNode> Nodes { get; set; } = new();
        public List<SankeyLink> Links { get; set; } = new();

        public void OnGet()
        {
            Nodes = new()
            {
                new SankeyNode { id = "Female", label = new { text = "Female (58%)" } },
                new SankeyNode { id = "Male", label = new { text = "Male (42%)" } },
                new SankeyNode { id = "Tablet", label = new { text = "Tablet (12%)" } },
                new SankeyNode { id = "Mobile", label = new { text = "Mobile (40%)" } },
                new SankeyNode { id = "Desktop", label = new { text = "Desktop (48%)" } },
                new SankeyNode { id = "< 18", label = new { text = "< 18 years (8%)" } },
                new SankeyNode { id = "18-26", label = new { text = "18-26 years (35%)" } },
                new SankeyNode { id = "27-40", label = new { text = "27-40 years (38%)" } },
                new SankeyNode { id = "> 40", label = new { text = "> 40 years (19%)" } }
            };

            Links = new()
            {
                new SankeyLink { sourceId = "Female", targetId = "Tablet", value = 12 },
                new SankeyLink { sourceId = "Female", targetId = "Mobile", value = 14 },
                new SankeyLink { sourceId = "Female", targetId = "Desktop", value = 32 },
                new SankeyLink { sourceId = "Male", targetId = "Mobile", value = 26 },
                new SankeyLink { sourceId = "Male", targetId = "Desktop", value = 16 },
                new SankeyLink { sourceId = "Tablet", targetId = "< 18", value = 4 },
                new SankeyLink { sourceId = "Tablet", targetId = "> 40", value = 8 },
                new SankeyLink { sourceId = "Mobile", targetId = "< 18", value = 4 },
                new SankeyLink { sourceId = "Mobile", targetId = "18-26", value = 24 },
                new SankeyLink { sourceId = "Mobile", targetId = "27-40", value = 10 },
                new SankeyLink { sourceId = "Mobile", targetId = "> 40", value = 2 },
                new SankeyLink { sourceId = "Desktop", targetId = "18-26", value = 11 },
                new SankeyLink { sourceId = "Desktop", targetId = "27-40", value = 28 },
                new SankeyLink { sourceId = "Desktop", targetId = "> 40", value = 9 }
            };
        }
    }
}

Legend in ASP.NET Core Sankey Diagram.

Legend

The ASP.NET Core Sankey Diagram supports customizable legends that clarify node related information. When a legend item is hovered, its corresponding data flow paths are visually emphasized.


Tooltips

Tooltip support enables users to view accurate values and detailed information for nodes and links when hovering over them.

Tooltip in ASP.NET Core Sankey Diagram.


Print and export ASP.NET Core Sankey Diagram.

Export the ASP.NET Core Sankey Diagram as a PDF file or image formats such as PNG and JPEG directly on the client side. The diagram can also be printed directly from the browser.


Orientation

The Sankey Diagram supports both horizontal and vertical orientations, allowing you to select the layout that best reflects your data flow.

Orientations in ASP.NET Core Sankey Diagram.


Node labels in ASP.NET Core Sankey Diagram.

Node labels

Node labels can be displayed to present descriptive details, improving readability and helping users easily understand each stage in the flow.


Customization

Flexible APIs allow you to adjust node widths and customize the colors of nodes, links, and labels to align with your application’s visual style.

Customization in ASP.NET Core Sankey Diagram.


Accessibility

Keyboard navigation in ASP.NET Core Sankey Diagram.

Keyboard navigation

All elements of the Sankey Diagram are fully accessible via keyboard interaction. Essential actions, including legend highlighting, can be performed without using a mouse, ensuring inclusive usability.

Accessibility and screen reader support in ASP.NET Core Sankey Diagram.

Screen reader support

The Sankey Diagram is fully compliant with WAI ARIA standards and works seamlessly with screen readers. High contrast visuals support users with low vision, while accessible UI descriptions further enhance the overall experience.

Show right-to-left language in ASP.NET Core Sankey Diagram.

Right to left (RTL) support

RTL rendering displays the Sankey Diagram’s layout and text from right to left, improving usability and accessibility for users working with right to left languages.




140+ ASP.NET CORE UI CONTROLS

Frequently Asked Questions

With the Syncfusion ASP.NET Core Sankey Diagram component, you can:

  • Visualize and analyze complex flow systems with nodes and links.
  • Implement one of the best ASP.NET Core Sankey Diagram components on the market.
  • Enjoy simple configuration and APIs.
  • Deploy confidently to all modern browsers.
  • Implement a touch-friendly and responsive component.
  • Take advantage of expansive learning resources such as demos and documentation to get started quickly.

You can find our ASP.NET Core Sankey demo here, which demonstrates how to render and configure the Sankey Diagram.

No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.

A good place to start would be our comprehensive getting started documentation.

Our Customers Love Us

Having an excellent set of tools and a great support team, Syncfusion® reduces customers’ development time.
Here are some of their experiences.

See Real Success Stories

Developers around the world trust Syncfusion’s Essential Studio to simplify complex projects and speed up delivery. With a vast library of UI controls, powerful SDKs, and reliable support, Essential Studio helps teams build enterprise-ready applications with confidence.

Read Our Customer Stories


Rated by users across the globe

Transform your applications today by downloading our free evaluation version
Download Free Trial No credit card required.

Awards

Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion® is proud to hold the following industry awards.

Up arrow icon