decodeLineRendererConfig<D> static method
Decodes the object from a Map-like dynamic structure. This expects the JSON format to be of the following structure:
{
"areaOpacity": <double>,
"customRendererId": <String>,
"dashPattern": <List<int>>,
"includeArea": <bool>,
"includeLine": <bool>,
"includePoints": <bool>,
"layoutPaintOrder": <int>,
"radiusPx": <double>,
"roundEndCaps": <bool>,
"stacked": <bool>,
"strokeWidthPx": <double>,
"symbolRenderer": <SymbolRenderer>
}
See also
Implementation
static charts.LineRendererConfig<D>? decodeLineRendererConfig<D>(
dynamic map, {
bool validate = false,
}) {
charts.LineRendererConfig<D>? result;
if (map is charts.LineRendererConfig<D>) {
result = map;
} else if (map != null) {
assert(SchemaValidator.validate(
schemaId: '$_baseSchemaUrl/line_renderer_config',
value: map,
validate: validate,
));
result = charts.LineRendererConfig<D>(
areaOpacity: JsonClass.parseDouble(map['areaOpacity']) ?? 0.1,
customRendererId: map['customRendererId']?.toString(),
dashPattern: map['dashPattern'] == null
? null
: List<int>.from(
map['dashPattern'].map((e) => JsonClass.parseInt(e)!),
),
includeArea: JsonClass.parseBool(map['includeArea']),
includeLine: JsonClass.parseBool(
map[''],
whenNull: true,
),
includePoints: JsonClass.parseBool(map['includePoints']),
layoutPaintOrder: JsonClass.parseInt(map['layoutPaintOrder']) ??
charts.LayoutViewPaintOrder.line,
radiusPx: JsonClass.parseDouble(map['radiusPx']) ?? 3.5,
roundEndCaps: JsonClass.parseBool(map['roundEndCaps']),
stacked: JsonClass.parseBool(map['stacked']),
strokeWidthPx: JsonClass.parseDouble(map['strokeWidthPx']) ?? 2.0,
symbolRenderer: decodeSymbolRenderer(
map['symbolRenderer'],
validate: false,
),
);
}
return result;
}