我有这个从 csv 文件加载数据的 Jscharting 脚本。它工作得很好,但不幸的是,如果源中有任何空数据,它根本不会加载。您将如何将处理空数据添加到以下脚本中?
JSC.fetch(
'./js/data.csv'
).then(function(response) {
response.text().then(function(t) {
var jsonData = JSC.csv2Json(t,{coerce:function(d){
return {
Date: d.date,
s1: parseFloat(d.s1),
s2: parseFloat(d.s2),
}
}});
var s1Points = JSC.nest()
.key('Date')
.rollup('s1')
.points(jsonData);
var s2Points = JSC.nest()
.key('Date')
.rollup('s2')
.points(jsonData);
var chart = JSC.chart('chartDiv', {
debug: true,
type: 'line',
legend_visible: false,
defaultCultureName: "hu-SK",
xAxis: {
crosshair_enabled: true,
scale: {
type: 'time',
time: {
parser: 'YYYY-MM-DD',
}
},
formatString: 'd',
},
yAxis: {
orientation: 'opposite',
formatString: 'c'
},
defaultSeries: {
firstPoint_label_text: '<b>%seriesName</b>',
defaultPoint_marker: {
type: 'circle',
fill: 'white',
outline: { width: 2, color: 'currentColor' }
}
},
series: [
{
name: 's1',
points: s1Points
},
{
name: 's2',
points: s2Points
}
]
});
});
});
我尝试了简单的事情:
s1: (parseFloat(d.s1) || '0'),
s2: (parseFloat(d.s2) || '0'),
...但结果非常难以理解:
如果可能的话,我希望在这种情况下打破实线而不是零值。