LargeScaleAreaConfig.fromJson constructor
LargeScaleAreaConfig.fromJson(
- Map<String, dynamic> j
)
Implementation
factory LargeScaleAreaConfig.fromJson(Map<String, dynamic> j) {
final rawSeriesData = ChartSeriesJson.firstSeriesRawData(j['series']);
final xFromSeries = <double>[];
final yFromSeries = <double>[];
for (final item in rawSeriesData) {
final tuple = JsonValue.list(item);
final map = JsonValue.map(item);
if (tuple != null && tuple.length >= 2) {
xFromSeries.add(JsonValue.doubleOrNull(tuple[0]) ?? 0);
yFromSeries.add(JsonValue.doubleOrNull(tuple[1]) ?? 0);
} else if (map != null) {
xFromSeries.add(JsonValue.doubleOrNull(map['x']) ?? 0);
yFromSeries.add(JsonValue.doubleOrNull(map['y']) ?? 0);
}
}
final x = JsonValue.doubleList(j['xData']) ?? xFromSeries;
final y = JsonValue.doubleList(j['yData']) ?? yFromSeries;
return LargeScaleAreaConfig(
xData: x,
yData: y,
targetPoints: JsonValue.intOrNull(j['targetPoints']) ?? 500,
seriesName: j['seriesName']?.toString(),
seriesColor: j['seriesColor']?.toString(),
fillOpacity: JsonValue.doubleOrNull(j['fillOpacity']) ?? 0.25,
title: j['title'] != null ? TitlesData.fromJson(j['title']) : null,
tooltip: j['tooltip'] != null
? ChartTooltip.fromJson(j['tooltip'])
: null,
legend: j['legend'] != null ? ChartLegend.fromJson(j['legend']) : null,
toolbox: j['toolbox'] != null
? ChartToolbox.fromJson(j['toolbox'])
: null,
grid: j['grid'] != null ? GridData.fromJson(j['grid']) : null,
);
}