When refresh chart data the text of RadzenSeriesAnnotation is displaced.
The code:
<RadzenChart @ref=chartTopVendas>
<RadzenColumnSeries Data="@graficoTopMes" CategoryProperty="Nome" ValueProperty="Valor" Title="Vendas" LineType="LineType.Dashed">
<RadzenSeriesDataLabels Visible="false" />
</RadzenColumnSeries>
<RadzenColumnOptions Radius="5" />
<RadzenValueAxis Formatter="@FormatterEmReal">
<RadzenGridLines Visible="true" />
<RadzenAxisTitle Text="Vendas em R$" />
</RadzenValueAxis>
<RadzenLineSeries Data="@graficoTopMes" CategoryProperty="Nome" ValueProperty="Valor" Title="Evolução" LineType="LineType.Dashed">
<RadzenMarkers Visible="true" MarkerType="MarkerType.Circle" />
@for (var i = 0; i < graficoTopMes.Count(); i++)
{
<RadzenSeriesAnnotation TItem="DadosGrafico" Data="@graficoTopMes[i]" OffsetY="-16" Text="@(graficoTopMes[i].Anotacao1)" />
}
</RadzenLineSeries>
<RadzenLegend Position="LegendPosition.Bottom" />
</RadzenChart>
async Task ObterDadosGraficos()
{
var cnpjNormalizado = Cnpj.NormalizarCnpj();
totalVendasMes = await dbContext.Vendas
.Where(v => v.Cnpj == cnpjNormalizado
&& v.DataVenda.Value.Year == anoSelecionado
&& v.DataVenda.Value.Month == mesSelecionado)
.SumAsync(v => v.ValorTotal.Value);
var query = await dbContext.Vendas
.Where(v => v.Cnpj == cnpjNormalizado
&& v.DataVenda.Value.Year == anoSelecionado
&& v.DataVenda.Value.Month == mesSelecionado)
.GroupBy(v => v.Produto)
.Select(g => new
{
Produto = g.Key,
TotalVenda = g.Sum(v => v.ValorTotal),
PercentualVenda = (g.Sum(v => v.ValorTotal) / totalVendasMes)
})
.OrderByDescending(g => g.TotalVenda)
.Take(10)
.ToListAsync();
graficoTopMes = query.Select(q => new DadosGrafico
{
Nome = q.Produto!,
Valor = q.TotalVenda.GetValueOrDefault(),
Anotacao1 = q.PercentualVenda.GetValueOrDefault().ToString("P1", culturaPtBr)
}).ToList();
chartTopVendas.Reload();
}



