Skip to content

Commit 6adc81a

Browse files
committed
Performance demo
1 parent eee3c51 commit 6adc81a

File tree

1 file changed

+18
-37
lines changed
  • docs/BlazorApexCharts.Docs/Components/Features/Performance

1 file changed

+18
-37
lines changed

docs/BlazorApexCharts.Docs/Components/Features/Performance/Basic.razor

Lines changed: 18 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,27 @@
33

44

55

6-
<ItemSelect Label="JS Interop Strategy" Items="@(EnumHelper.GetList<JSInteropStrategy>())" @bind-SelectedValue="@jsInteropStrategy" Changed=LoadData/>
6+
<ItemSelect Label="JS Interop Strategy" Items="@(EnumHelper.GetList<JSInteropStrategy>())" @bind-SelectedValue="@jsInteropStrategy" Changed=LoadData />
77

88
<ItemSelect Label="Datapoints" Items=points @bind-SelectedValue=pointsToLoad Changed=LoadData />
99

1010

11-
<ApexChart TItem="TimeSeries"
12-
Title="Value"
13-
Height="150"
14-
XAxisType="XAxisType.Datetime"
15-
JSInteropStrategy=jsInteropStrategy
16-
@ref=chart>
11+
<ApexChart TItem="TimeSeries"
12+
Title="Value"
13+
Height="150"
14+
XAxisType="XAxisType.Datetime"
15+
JSInteropStrategy=jsInteropStrategy
16+
@ref=chart>
1717

1818

19-
<ApexPointSeries TItem="TimeSeries"
20-
Items="timeSeries.Take(pointsToLoad)"
21-
Name="Value"
22-
SeriesType="SeriesType.Line"
23-
XValue="@(e => e.Date.ToUnixTimeMilliseconds())"
24-
YValue="@( e=> e.Value)"
25-
Stroke="@(new SeriesStroke { Width = 2, Color="#1F15E5"})" />
26-
</ApexChart>
19+
<ApexPointSeries TItem="TimeSeries"
20+
Items="timeSeries.Take(pointsToLoad)"
21+
Name="Value"
22+
SeriesType="SeriesType.Line"
23+
XValue="@(e => e.Date.ToUnixTimeMilliseconds())"
24+
YValue="@( e=> e.Value)"
25+
Stroke="@(new SeriesStroke { Width = 2, Color="#1F15E5"})" />
26+
</ApexChart>
2727

2828

2929
@if (isLoading)
@@ -39,9 +39,9 @@ else
3939
@code {
4040
private JSInteropStrategy jsInteropStrategy = JSInteropStrategy.UnMarshalled;
4141
private ApexChart<TimeSeries> chart;
42-
private List<int> points = new List<int> { 100, 1000, 5000, 10000 };
42+
private List<int> points = new List<int> { 100, 1000, 5000, 10000,25000 };
4343
private int pointsToLoad = 100;
44-
private List<TimeSeries> timeSeries = new TimeSeriesGenerator(10000).TimeSeries;
44+
private List<TimeSeries> timeSeries = new TimeSeriesGenerator(25000).TimeSeries;
4545
private string message;
4646
private List<DataPoint<TimeSeries>> data;
4747

@@ -58,18 +58,13 @@ else
5858
sw.Start();
5959
isLoading = true;
6060

61-
await Task.Delay(10);
62-
61+
await Task.Delay(1);
6362

6463
PopulateData();
6564
message = $"{pointsToLoad} Points: Populate Data {sw.ElapsedMilliseconds.ToString("N0")}ms, ";
6665
sw.Restart();
67-
68-
//await Task.Delay(10);
69-
7066
await chart.UpdateSeriesAsync(false);
7167
sw.Stop();
72-
7368

7469
message += $"Update Chart {sw.ElapsedMilliseconds.ToString("N0")}ms";
7570
isLoading = false;
@@ -85,18 +80,4 @@ else
8580
Items = new List<TimeSeries> { e }
8681
}).ToList();
8782
}
88-
89-
private void SerializeTest()
90-
{
91-
var series = chart.Options.Series;
92-
var options = new ChartSerializer().GetOptions<TimeSeries>();
93-
var sw = new Stopwatch();
94-
sw.Start();
95-
96-
// var result = serializer.
97-
var result = System.Text.Json.JsonSerializer.Serialize(series, options);
98-
sw.Stop();
99-
message = $"Test [{pointsToLoad}] {sw.ElapsedMilliseconds.ToString("N")}ms";
100-
}
101-
10283
}

0 commit comments

Comments
 (0)