MCPInstall

syncfusion-wpf-bullet-graph

Implement Syncfusion WPF Bullet Graph (SfBulletGraph) components for performance indicators and KPI visualization. Use this when displaying metrics against targets, creating dashboard gauges, or visualizing performance in qualitative ranges. This skill covers featured measures, comparative measures, qualitative ranges, goal tracking, and compact data visualization for dashboards.

Installs
154
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-bullet-graph
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads syncfusion-wpf-bullet-graph automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Implementing Bullet Graphs in WPF

Guide for implementing the Syncfusion® WPF Bullet Graph (SfBulletGraph) component. A bullet graph is a compact, linear visualization designed to display performance metrics by showing a primary measure (current value) against a target measure within qualitative ranges that indicate performance levels.

When to Use This Skill

Use this skill when you need to:

  • Display performance metrics with current values versus targets
  • Create KPI dashboards with space-efficient visualizations
  • Show progress toward goals with visual performance indicators
  • Replace traditional gauges with more compact bullet graph displays
  • Visualize data in context using qualitative range backgrounds
  • Implement revenue analysis or expense tracking visualizations
  • Build dashboard environments where screen space is limited
  • Compare actual vs. target values in a single compact visualization

Component Overview

The SfBulletGraph is a variation of the bar graph designed as a replacement for dashboard gauges and meters. It features:

  • Featured Measure: The primary data value (e.g., current year-to-date revenue) displayed as a prominent bar
  • Comparative Measure: A target or reference value displayed as a perpendicular line marker
  • Qualitative Ranges: Background color bands that provide context (e.g., poor, satisfactory, good)
  • Quantitative Scale: Configurable axis with major/minor ticks and labels
  • Caption Support: Descriptive labels to identify what the bullet graph represents
  • Orientation Options: Horizontal or vertical layout
  • Compact Design: Shows substantial data in minimal space

Typical Use Cases:

  • Revenue vs. target tracking
  • Expense analysis against budgets
  • Performance metrics on dashboards
  • KPI visualization
  • Goal progress indicators

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Installation via NuGet or Syncfusion Reference Manager
  • Assembly references (Syncfusion.SfBulletGraph.WPF)
  • Namespace declarations
  • Basic bullet graph creation in XAML and C#
  • Theme support and customization
  • First working example

Quantitative Scale Configuration

📄 Read: references/quantitative-scale.md

  • Setting scale range (Minimum, Maximum, Interval)
  • Major tick configuration (size, stroke, color)
  • Minor tick configuration (per interval, size, stroke)
  • Label customization and formatting
  • Scale length adjustment
  • Tick and label visibility options

Performance Measures

📄 Read: references/measures.md

  • Featured measure implementation (primary data value)
  • Featured measure bar customization (stroke, thickness)
  • Comparative measure implementation (target/goal marker)
  • Comparative measure symbol customization
  • Visual hierarchy and layering
  • Measure value binding

Qualitative Ranges

📄 Read: references/ranges.md

  • Creating range collections (QualitativeRanges)
  • Range properties (RangeStart, RangeEnd, RangeStroke)
  • Range size and opacity customization
  • Binding range colors to ticks and labels
  • Common range patterns (Bad/Satisfactory/Good)
  • Best practices for range design

Caption Customization

📄 Read: references/caption.md

  • Adding captions to bullet graphs
  • Caption positioning (Near, Far)
  • Custom caption content and layouts
  • Multi-line captions with StackPanel
  • Caption styling and formatting
  • XAML and C# caption examples

Advanced Features

📄 Read: references/advanced-features.md

  • Orientation (Horizontal, Vertical)
  • Flow direction (RTL support)
  • Tooltip configuration and customization
  • Custom tooltip templates for measures and ranges
  • Data binding scenarios
  • MVVM pattern implementation
  • Performance optimization tips

Quick Start Example

Basic Bullet Graph in XAML

<Window xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
    <Grid>
        <syncfusion:SfBulletGraph 
            Minimum="0" 
            Maximum="10" 
            Interval="2"
            FeaturedMeasure="5" 
            ComparativeMeasure="7"
            MinorTicksPerInterval="3"
            MajorTickSize="15" 
            MinorTickSize="10">
            
            <syncfusion:SfBulletGraph.QualitativeRanges>
                <syncfusion:QualitativeRange RangeEnd="4.5" RangeStroke="#EBEBEB"/>
                <syncfusion:QualitativeRange RangeEnd="7.5" RangeStroke="#D8D8D8"/>
                <syncfusion:QualitativeRange RangeEnd="10" RangeStroke="#7F7F7F"/>
            </syncfusion:SfBulletGraph.QualitativeRanges>
        </syncfusion:SfBulletGraph>
    </Grid>
</Window>

Basic Bullet Graph in C#

using Syncfusion.UI.Xaml.BulletGraph;

SfBulletGraph bulletGraph = new SfBulletGraph();
bulletGraph.Minimum = 0;
bulletGraph.Maximum = 10;
bulletGraph.Interval = 2;
bulletGraph.FeaturedMeasure = 5;
bulletGraph.ComparativeMeasure = 7;
bulletGraph.MinorTicksPerInterval = 3;
bulletGraph.MajorTickSize = 15;
bulletGraph.MinorTickSize = 10;

bulletGraph.QualitativeRanges.Add(new QualitativeRange() 
{ 
    RangeEnd = 4.5, 
    RangeStroke = new SolidColorBrush(Color.FromRgb(235, 235, 235)) 
});
bulletGraph.QualitativeRanges.Add(new QualitativeRange() 
{ 
    RangeEnd = 7.5, 
    RangeStroke = new SolidColorBrush(Color.FromRgb(216, 216, 216)) 
});
bulletGraph.QualitativeRanges.Add(new QualitativeRange() 
{ 
    RangeEnd = 10, 
    RangeStroke = new SolidColorBrush(Color.FromRgb(127, 127, 127)) 
});

this.Grid.Children.Add(bulletGraph);

Common Patterns

Revenue Dashboard with Caption

<syncfusion:SfBulletGraph 
    Minimum="0" 
    Maximum="100" 
    Interval="20"
    FeaturedMeasure="65" 
    ComparativeMeasure="80"
    CaptionPosition="Far"
    QualitativeRangesSize="30">
    
    <syncfusion:SfBulletGraph.Caption>
        <StackPanel Margin="0,0,10,0">
            <TextBlock Text="Revenue YTD" FontSize="13" HorizontalAlignment="Center"/>
            <TextBlock Text="$ in Thousands" FontSize="13" HorizontalAlignment="Center"/>
        </StackPanel>
    </syncfusion:SfBulletGraph.Caption>
    
    <syncfusion:SfBulletGraph.QualitativeRanges>
        <syncfusion:QualitativeRange RangeEnd="35" RangeStroke="Red" RangeOpacity="1"/>
        <syncfusion:QualitativeRange RangeEnd="70" RangeStroke="Yellow" RangeOpacity="1"/>
        <syncfusion:QualitativeRange RangeEnd="100" RangeStroke="Green" RangeOpacity="1"/>
    </syncfusion:SfBulletGraph.QualitativeRanges>
</syncfusion:SfBulletGraph>

Vertical Bullet Graph

<syncfusion:SfBulletGraph 
    Orientation="Vertical"
    Minimum="0" 
    Maximum="100" 
    Interval="25"
    FeaturedMeasure="75" 
    ComparativeMeasure="90"
    FeaturedMeasureBarStroke="Black">
    
    <syncfusion:SfBulletGraph.QualitativeRanges>
        <syncfusion:QualitativeRange RangeEnd="40" RangeStroke="#FF6B6B"/>
        <syncfusion:QualitativeRange RangeEnd="75" RangeStroke="#FFE66D"/>
        <syncfusion:QualitativeRange RangeEnd="100" RangeStroke="#95E1D3"/>
    </syncfusion:SfBulletGraph.QualitativeRanges>
</syncfusion:SfBulletGraph>

Bullet Graph with Tooltips

<syncfusion:SfBulletGraph 
    Minimum="0" 
    Maximum="10" 
    FeaturedMeasure="6.5" 
    ComparativeMeasure="8"
    ShowToolTip="True"
    QualitativeRangesSize="30">
    
    <syncfusion:SfBulletGraph.QualitativeRanges>
        <syncfusion:QualitativeRange RangeEnd="4" RangeStroke="Red" RangeOpacity="0.8"/>
        <syncfusion:QualitativeRange RangeEnd="7" RangeStroke="Yellow" RangeOpacity="0.8"/>
        <syncfusion:QualitativeRange RangeEnd="10" RangeStroke="Green" RangeOpacity="0.8"/>
    </syncfusion:SfBulletGraph.QualitativeRanges>
</syncfusion:SfBulletGraph>

Key Properties

Scale Properties

  • Minimum - Starting value of the quantitative scale
  • Maximum - Ending value of the quantitative scale
  • Interval - Distance between major ticks
  • MinorTicksPerInterval - Number of minor ticks between major ticks
  • QuantitativeScaleLength - Length of the scale in pixels

Measure Properties

  • FeaturedMeasure - Primary data value (current performance)
  • FeaturedMeasureBarStroke - Color of the featured measure bar
  • FeaturedMeasureBarStrokeThickness - Thickness of the featured measure bar
  • ComparativeMeasure - Target or comparison value
  • ComparativeMeasureSymbolStroke - Color of the comparative measure marker
  • ComparativeMeasureSymbolStrokeThickness - Thickness of the comparative measure marker

Tick and Label Properties

  • MajorTickSize - Size of major tick marks
  • MajorTickStroke - Color of major tick marks
  • MinorTickSize - Size of minor tick marks
  • MinorTickStroke - Color of minor tick marks
  • LabelStroke - Color of scale labels

Range Properties

  • QualitativeRanges - Collection of qualitative range objects
  • QualitativeRangesSize - Height/width of the range bands
  • BindRangeStrokeToLabels - Sync label colors with range colors
  • BindRangeStrokeToTicks - Sync tick colors with range colors

Layout Properties

  • Orientation - Horizontal or Vertical layout
  • FlowDirection - LeftToRight or RightToLeft
  • Caption - Descriptive content for the bullet graph
  • CaptionPosition - Near (left/top) or Far (right/bottom)

Tooltip Properties

  • ShowToolTip - Enable/disable tooltip display
  • FeaturedMeasureToolTipTemplate - Custom template for featured measure tooltip
  • ComparativeMeasureToolTipTemplate - Custom template for comparative measure tooltip
  • QualitativeRangeToolTipTemplate - Custom template for range tooltip

FAQ

What does the syncfusion-wpf-bullet-graph skill do?

Implement Syncfusion WPF Bullet Graph (SfBulletGraph) components for performance indicators and KPI visualization. Use this when displaying metrics against targets, creating dashboard gauges, or visualizing performance in qualitative ranges. This skill covers featured measures, comparative measures, qualitative ranges, goal tracking, and compact data visualization for dashboards.

How do I install syncfusion-wpf-bullet-graph?

Run npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-bullet-graph in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-wpf-bullet-graph/ (personal) or .claude/skills/syncfusion-wpf-bullet-graph/ (project).

Which AI agents can use syncfusion-wpf-bullet-graph?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is syncfusion-wpf-bullet-graph safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains syncfusion-wpf-bullet-graph?

It is published by syncfusion in syncfusion/wpf-ui-components-skills. It has 154 recorded installs.

More from syncfusion/wpf-ui-components-skills

View all →

syncfusion-wpf-theming

syncfusion/wpf-ui-components-skills

Implement and customize themes for Syncfusion WPF controls using SfSkinManager. Apply built-in themes (Windows 11, Fluent, Material, Office 2019), create custom themes with Theme Studio, and control visual effects like reveal animations and acrylic backgrounds. Use this skill whenever user needs to theme WPF applications, apply Syncfusion themes, customize colors/fonts, or configure theme-based visual effects and accessibility features.

Frontend & Design184 installs

syncfusion-wpf-datagrid

syncfusion/wpf-ui-components-skills

Implements Syncfusion WPF DataGrid (SfDataGrid) component for displaying and manipulating tabular data in Windows Presentation Foundation applications. Use this when working with data grids, table views, or data binding scenarios. Supports sorting, filtering, grouping, editing, Excel/PDF export, drag and drop, master-detail views, summaries, and extensive styling options.

Frontend & Design176 installs

syncfusion-wpf-carousel

syncfusion/wpf-ui-components-skills

Implements the Syncfusion WPF Carousel for displaying items in rotating or custom path interfaces with navigation support. Use when building image carousels, rotating galleries, or custom-path item displays with templates and data binding.

Frontend & Design164 installs

syncfusion-wpf-button

syncfusion/wpf-ui-components-skills

Implement Syncfusion WPF ButtonAdv controls for configurable button UIs. Use this when adding, configuring, or customizing a Syncfusion WPF ButtonAdv — including labels, icons, size modes, toggle/checkable behavior, MVVM command binding, multiline text, corner radius, IsDefault/IsCancel modes, icon templates, and themes.

Frontend & Design163 installs

syncfusion-wpf-combobox

syncfusion/wpf-ui-components-skills

Open the skill to read its SKILL.md instructions.

Frontend & Design163 installs

syncfusion-wpf-color-palette

syncfusion/wpf-ui-components-skills

Open the skill to read its SKILL.md instructions.

Frontend & Design162 installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.