Loading...
Loading...
Implement Syncfusion Blazor Smith Chart for RF circuit analysis and transmission line impedance matching. Use this when visualizing impedance/admittance data, reflection coefficients, S-parameters, or antenna tuning in Blazor applications. This skill covers circular grid representations and RF network parameter analysis.
npx skill4agent add syncfusion/blazor-ui-components-skills syncfusion-blazor-smith-chartsSfSmithChartSyncfusion.Blazor.ChartsSfSmithChartSfSmithChartRenderTypeSmithChartEventsSmithChartSeriesCollectionSmithChartSeriesSmithChartHorizontalAxisSmithChartRadialAxisSmithChartLegendSettingsSmithChartTitleSmithChartSubtitleSmithChartSeriesMarkerSmithChartSeriesDatalabelSmithChartSeriesDataLabelBorderSmithChartSeriesTooltipSmithChartBorderSmithChartMarginRenderTypeSmithChartAlignmentSmithChartLabelIntersectActionAxisLabelPositionLegendPositionShapeExportTypeSfSmithChart@page "/smith-chart-basic"
@using Syncfusion.Blazor.Charts
<h3>Transmission Line Impedance</h3>
<SfSmithChart>
<SmithChartSeriesCollection>
<SmithChartSeries Name="Transmission Line 1"
DataSource="@TransmissionData"
Reactance="Reactance"
Resistance="Resistance">
<SmithChartSeriesMarker Visible="true"></SmithChartSeriesMarker>
</SmithChartSeries>
</SmithChartSeriesCollection>
</SfSmithChart>
@code {
public class SmithChartData
{
public double? Resistance { get; set; }
public double? Reactance { get; set; }
}
public List<SmithChartData> TransmissionData = new List<SmithChartData>
{
new SmithChartData { Resistance = 10, Reactance = 25 },
new SmithChartData { Resistance = 6, Reactance = 4.5 },
new SmithChartData { Resistance = 3.5, Reactance = 1.6 },
new SmithChartData { Resistance = 2, Reactance = 1.2 },
new SmithChartData { Resistance = 1, Reactance = 0.8 },
new SmithChartData { Resistance = 0, Reactance = 0.2 }
};
}@using Syncfusion.Blazor.Charts
<SfSmithChart Height="600px" Width="100%">
<SmithChartTitle Text="Antenna Impedance Matching"></SmithChartTitle>
<SmithChartLegendSettings Visible="true" Position="@Syncfusion.Blazor.Charts.LegendPosition.Bottom">
</SmithChartLegendSettings>
<SmithChartSeriesCollection>
<SmithChartSeries Name="Before Matching"
DataSource="@BeforeData"
Reactance="Reactance"
Resistance="Resistance"
Fill="#FF6B6B">
<SmithChartSeriesMarker Visible="true" Shape="@Syncfusion.Blazor.Charts.Shape.Circle"></SmithChartSeriesMarker>
<SmithChartSeriesTooltip Visible="true"></SmithChartSeriesTooltip>
</SmithChartSeries>
<SmithChartSeries Name="After Matching"
DataSource="@AfterData"
Reactance="Reactance"
Resistance="Resistance"
Fill="#4ECDC4">
<SmithChartSeriesMarker Visible="true" Shape="@Syncfusion.Blazor.Charts.Shape.Diamond"></SmithChartSeriesMarker>
<SmithChartSeriesTooltip Visible="true"></SmithChartSeriesTooltip>
</SmithChartSeries>
</SmithChartSeriesCollection>
</SfSmithChart>
@code {
public class SmithChartData
{
public double? Resistance { get; set; }
public double? Reactance { get; set; }
}
public List<SmithChartData> BeforeData = new List<SmithChartData>
{
new SmithChartData { Resistance = 10, Reactance = 25 },
new SmithChartData { Resistance = 6, Reactance = 4.5 },
new SmithChartData { Resistance = 3.5, Reactance = 1.6 },
new SmithChartData { Resistance = 2, Reactance = 1.2 },
new SmithChartData { Resistance = 1, Reactance = 0.8 },
new SmithChartData { Resistance = 0, Reactance = 0.2 }
};
public List<SmithChartData> AfterData = new List<SmithChartData>
{
new SmithChartData { Resistance = 2.5, Reactance = 1.2 },
new SmithChartData { Resistance = 2, Reactance = 0.8 },
new SmithChartData { Resistance = 1.6, Reactance = 0.5 },
new SmithChartData { Resistance = 1.3, Reactance = 0.3 },
new SmithChartData { Resistance = 1.1, Reactance = 0.1 },
new SmithChartData { Resistance = 1, Reactance = 0 }
};
}@using Syncfusion.Blazor.Charts
<SfSmithChart>
<SmithChartTitle Text="Frequency Sweep: 100MHz - 1GHz"></SmithChartTitle>
<SmithChartLegendSettings Visible="true" Position="@Syncfusion.Blazor.Charts.LegendPosition.Right">
</SmithChartLegendSettings>
<SmithChartSeriesCollection>
<SmithChartSeries Name="100MHz" DataSource="@Freq100Data"
Reactance="Reactance" Resistance="Resistance" Width="2">
</SmithChartSeries>
<SmithChartSeries Name="500MHz" DataSource="@Freq500Data"
Reactance="Reactance" Resistance="Resistance" Width="2">
</SmithChartSeries>
<SmithChartSeries Name="1GHz" DataSource="@Freq1000Data"
Reactance="Reactance" Resistance="Resistance" Width="2">
</SmithChartSeries>
</SmithChartSeriesCollection>
</SfSmithChart>
@code {
public class SmithChartData
{
public double? Resistance { get; set; }
public double? Reactance { get; set; }
}
public List<SmithChartData> Freq100Data = new List<SmithChartData>
{
new SmithChartData { Resistance = 10, Reactance = 20 },
new SmithChartData { Resistance = 8, Reactance = 12 },
new SmithChartData { Resistance = 6, Reactance = 6 },
new SmithChartData { Resistance = 4, Reactance = 3 },
new SmithChartData { Resistance = 2, Reactance = 1.5 },
new SmithChartData { Resistance = 1, Reactance = 0.8 }
};
public List<SmithChartData> Freq500Data = new List<SmithChartData>
{
new SmithChartData { Resistance = 8, Reactance = 15 },
new SmithChartData { Resistance = 6, Reactance = 8 },
new SmithChartData { Resistance = 4.5, Reactance = 4 },
new SmithChartData { Resistance = 3, Reactance = 2 },
new SmithChartData { Resistance = 1.8, Reactance = 1 },
new SmithChartData { Resistance = 1.2, Reactance = 0.4 }
};
public List<SmithChartData> Freq1000Data = new List<SmithChartData>
{
new SmithChartData { Resistance = 6, Reactance = 10 },
new SmithChartData { Resistance = 4.5, Reactance = 5 },
new SmithChartData { Resistance = 3, Reactance = 2.5 },
new SmithChartData { Resistance = 2, Reactance = 1.2 },
new SmithChartData { Resistance = 1.2, Reactance = 0.5 },
new SmithChartData { Resistance = 1, Reactance = 0 }
};
}| Property | Type | Description | When to Use |
|---|---|---|---|
| Collection | Container for all series | Always required to display data |
| IEnumerable | List of impedance data points | Bind your resistance/reactance data |
| string | Property name for resistance values | Map to your data model property |
| string | Property name for reactance values | Map to your data model property |
| Enum | Choose impedance or admittance rendering | Switch the Smith Chart coordinate interpretation |
| string | Radius of the Smith Chart plot area | Control the circular plot size |
| string | Spacing between chart elements | Tweak compact or dense layouts |
| string | Chart background color | Match the host UI theme |
| string | Built-in Smith Chart theme | Keep visual styling consistent |
| string | Chart element identifier | Useful for testing or scripting |
| Component | Marker configuration | Highlight data points visually |
| Component | Tooltip configuration | Show values on hover |
| Component | Legend configuration | Identify multiple series |
| Component | Horizontal axis settings | Customize straight-line axis |
| Component | Radial axis settings | Customize circular axis |
| string | Chart width (px or %) | Control chart dimensions |
| string | Chart height (px or %) | Control chart dimensions |
<SfSmithChart>SmithChartSeries