Draw Charts

Visualize data with bar charts, breakdown charts, and calendars

When you need to visualize data in the terminal, use chart widgets.

Create a Bar Chart

To compare values, use BarChart.

AnsiConsole.Write(new BarChart()
    .Label("[green]Sales by Region[/]")
    .AddItem("North", 85, Color.Blue)
    .AddItem("South", 62, Color.Yellow)
    .AddItem("West", 94, Color.Green));

Create a Breakdown Chart

To show proportions, use BreakdownChart.

AnsiConsole.Write(new BreakdownChart()
    .AddItem("C#", 65, Color.Green)
    .AddItem("TypeScript", 25, Color.Blue)
    .AddItem("Python", 10, Color.Yellow));

Show a Calendar

To highlight dates, use Calendar.

var calendar = new Calendar(2025, 1)
    .AddCalendarEvent(2025, 1, 15)
    .AddCalendarEvent(2025, 1, 20)
    .HighlightStyle(Style.Parse("yellow bold"));
  
AnsiConsole.Write(calendar);

Add a Rule

To draw a separator, use Rule.

AnsiConsole.Write(new Rule("[yellow]Results[/]"));

See Also