mirror of
https://github.com/NecroticBamboo/DeepTrace.git
synced 2025-12-21 11:21:51 +00:00
DEEP-32 Training page: export to CSV added
This commit is contained in:
parent
50fe5b03ca
commit
b9eb646229
@ -24,6 +24,7 @@ namespace DeepTrace.Controllers
|
||||
|
||||
var current = previousIntervals.First();
|
||||
var headers = string.Join(",", current.Data.Select((x, i) => $"Q{i + 1}min,Q{i + 1}max,Q{i + 1}avg,Q{i + 1}mean"));
|
||||
headers += string.Join(",",",Name");
|
||||
|
||||
|
||||
var writer = new StringBuilder();
|
||||
@ -41,16 +42,10 @@ namespace DeepTrace.Controllers
|
||||
var avg = queryData.Data.Average(x => x.Value);
|
||||
var mean = queryData.Data.Sum(x => x.Value) / queryData.Data.Count;
|
||||
|
||||
if (i == currentInterval.Data.Count - 1)
|
||||
{
|
||||
data += min + "," + max + "," + avg + "," + mean;
|
||||
}
|
||||
else
|
||||
{
|
||||
data += min + "," + max + "," + avg + "," + mean + ",";
|
||||
}
|
||||
|
||||
}
|
||||
data += currentInterval.Name;
|
||||
writer.AppendLine(data);
|
||||
}
|
||||
return new(Encoding.UTF8.GetBytes(writer.ToString()),"text/csv")
|
||||
|
||||
@ -18,8 +18,4 @@
|
||||
<ProjectReference Include="..\PrometheusAPI\PrometheusAPI.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Data\ExportedData\" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
||||
@ -92,10 +92,6 @@
|
||||
@*<MudNumericField @bind-Value="_queryForm.StepSec" Label="Step (sec)" Variant="Variant.Text" Min="0" />*@
|
||||
<MudTextField Label="Description" @bind-Value="_queryForm.Source.Description" Variant="Variant.Text" InputType="InputType.Search" Lines="3" />
|
||||
</MudCardContent>
|
||||
<MudCardActions>
|
||||
<p>Remove thus button!</p>
|
||||
<MudButton ButtonType="ButtonType.Submit" Variant="Variant.Filled" Color="MudBlazor.Color.Primary" Class="ml-auto" OnClick="@HandleTrain">Train</MudButton>
|
||||
</MudCardActions>
|
||||
</MudCard>
|
||||
</EditForm>
|
||||
</MudItem>
|
||||
|
||||
@ -67,7 +67,17 @@
|
||||
<MudButton ButtonType="ButtonType.Submit" Variant="Variant.Filled" Color="MudBlazor.Color.Primary" Class="ml-3" OnClick="@HandleTrain">Train</MudButton>
|
||||
</MudCardActions>
|
||||
|
||||
<MudTable Items="@_modelForm!.CurrentModel.IntervalDefinitionList" Hover="true" Breakpoint="Breakpoint.Sm" T="IntervalDefinition">
|
||||
<MudTable
|
||||
Items="@_modelForm!.CurrentModel.IntervalDefinitionList"
|
||||
Hover="true"
|
||||
FixedHeader="@fixed_header"
|
||||
CanCancelEdit="@canCancelEdit"
|
||||
RowEditPreview="@BackupInterval"
|
||||
RowEditCancel="ResetItemToOriginalValues"
|
||||
RowEditCommit="ItemHasBeenCommitted"
|
||||
Breakpoint="Breakpoint.Sm"
|
||||
T="IntervalDefinition"
|
||||
>
|
||||
<HeaderContent>
|
||||
<MudTh>From</MudTh>
|
||||
<MudTh>To</MudTh>
|
||||
@ -80,6 +90,14 @@
|
||||
<MudTd DataLabel="Name">@context.Name</MudTd>
|
||||
<MudIconButton Icon="@Icons.Material.Filled.Delete" Class="ml-3" OnClick="@(()=>HandleDeleteTableContent(context))"></MudIconButton>
|
||||
</RowTemplate>
|
||||
<RowEditingTemplate>
|
||||
<MudTd DataLabel="From">@context.From</MudTd>
|
||||
<MudTd DataLabel="To">@context.To</MudTd>
|
||||
<MudTd DataLabel="Name">
|
||||
<MudTextField @bind-Value="@context.Name" Required />
|
||||
</MudTd>
|
||||
<MudIconButton Icon="@Icons.Material.Filled.Delete" Class="ml-3" OnClick="@(()=>HandleDeleteTableContent(context))"></MudIconButton>
|
||||
</RowEditingTemplate>
|
||||
</MudTable>
|
||||
</MudCard>
|
||||
</MudItem>
|
||||
@ -100,6 +118,9 @@
|
||||
|
||||
private bool IsChartHidden => DisplayData == null;
|
||||
private bool IsChartShown => !IsChartHidden;
|
||||
private bool fixed_header = true;
|
||||
private bool canCancelEdit = true;
|
||||
private string _nameBackUp = "";
|
||||
|
||||
private class ModelForm
|
||||
{
|
||||
@ -338,6 +359,28 @@
|
||||
await InvokeAsync(StateHasChanged);
|
||||
}
|
||||
|
||||
private void BackupInterval(object element)
|
||||
{
|
||||
if(element is IntervalDefinition interval)
|
||||
{
|
||||
_nameBackUp = interval.Name;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void ResetItemToOriginalValues(object element)
|
||||
{
|
||||
if (element is IntervalDefinition interval)
|
||||
{
|
||||
interval.Name = _nameBackUp;
|
||||
}
|
||||
}
|
||||
|
||||
private void ItemHasBeenCommitted(object element)
|
||||
{
|
||||
Task.Run(async ()=>ModelService.Store(_modelForm!.CurrentModel));
|
||||
}
|
||||
|
||||
private async Task HandleRefresh()
|
||||
{
|
||||
var previousIntervals = _modelForm!.CurrentModel.IntervalDefinitionList;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user