80 lines
1.8 KiB
Plaintext
80 lines
1.8 KiB
Plaintext
|
@using ApexCharts
|
||
|
@using UI_SequentMicrosystems.Components
|
||
|
@using UI_SequentMicrosystems.Services
|
||
|
@using UI_SequentMicrosystems.Models
|
||
|
|
||
|
@inject RTD8TMService _RTD8TMService
|
||
|
|
||
|
<ApexChart TItem="RTD8TMGraphPointModel"
|
||
|
Title="Temperature"
|
||
|
Options="chartOptions"
|
||
|
@ref="chart">
|
||
|
|
||
|
@foreach (byte stack in _RTD8TMService.GetActualData().Keys)
|
||
|
{
|
||
|
for (byte chanel = 0; chanel < 8; chanel++)
|
||
|
{
|
||
|
if (_RTD8TMService.GetChanelName(stack, chanel) != "----------")
|
||
|
{
|
||
|
<ApexPointSeries TItem="RTD8TMGraphPointModel"
|
||
|
Items="@_RTD8TMService.GetChartData(stack, chanel)"
|
||
|
Name="@(_RTD8TMService.GetChanelName(stack, chanel))"
|
||
|
SeriesType="SeriesType.Line"
|
||
|
XValue="@(e => e.Time.ToString("HH:mm:ss"))"
|
||
|
YValue="@(e => (decimal)e.Value)"
|
||
|
OrderBy="e=>e.X" />
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
</ApexChart>
|
||
|
|
||
|
@code {
|
||
|
private ApexChart<RTD8TMGraphPointModel> chart;
|
||
|
private ApexChartOptions<RTD8TMGraphPointModel> chartOptions;
|
||
|
|
||
|
|
||
|
protected override void OnInitialized()
|
||
|
{
|
||
|
_RTD8TMService.EventUpdateGraph += UpdateChart;
|
||
|
|
||
|
|
||
|
chartOptions = new ApexChartOptions<RTD8TMGraphPointModel>
|
||
|
{
|
||
|
Theme = new Theme
|
||
|
{
|
||
|
Mode = Mode.Dark,
|
||
|
},
|
||
|
Legend = new Legend
|
||
|
{
|
||
|
Position = LegendPosition.Bottom,
|
||
|
FontSize = "20px",
|
||
|
HorizontalAlign = Align.Center
|
||
|
}
|
||
|
};
|
||
|
}
|
||
|
|
||
|
public async Task UpdateChart(object? o, bool b)
|
||
|
{
|
||
|
await InvokeAsync(() =>
|
||
|
{
|
||
|
chart.UpdateSeriesAsync(false);
|
||
|
|
||
|
StateHasChanged();
|
||
|
|
||
|
});
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
}
|