Describe the bug
Cannot label time series. Always get errors in console, rect cannot be drawn
attr.js:17 Error: <rect> attribute width: A negative value is not valid. ("-191.30731102850064")
Error: <g> attribute transform: Expected number, "translate(NaN,0)".
Sometimes I can draw a rect (without seeing it) and the resulting label outputs look like:
{
"from_name": "label",
"id": "2rncPqglWD",
"to_name": "ts",
"type": "timeserieslabels",
"value": {
"end": "0NaN-NaN-NaN NaN:NaN:NaN",
"instant": false,
"start": "0NaN-NaN-NaN NaN:NaN:NaN",
"timeserieslabels": [
"Off"
]
}
}
Those NaN's look suspicious.
Note: I don't have any NaN's in my data.
To Reproduce
Steps to reproduce the behavior:
See below, I've added my setup and some lines of the file
Environment (please complete the following information):
Additional context
Here is my setup file:
<View>
<Header value="Inverter Data" style="font-weight: normal"></Header>
<TimeSeriesLabels name="label" toName="ts">
<Label value="Off" background="#5b5"></Label>
<Label value="On" background="#55f"></Label>
</TimeSeriesLabels>
<TimeSeries name="ts" timeColumn="time"
sep="," value="$new_data"
timeFormat="%Y-%m-%d %H:%M:%S">
<Channel column="val" />
</TimeSeries>
</View>
Below the first 110 lines of the data file:
time , new_data
2020-11-30 14:35:00 , {"value": 50.0}
2020-11-30 14:30:00 , {"value": 49.99}
2020-11-30 14:25:00 , {"value": 50.0}
2020-11-30 13:45:00 , {"value": 50.01}
2020-11-30 13:40:00 , {"value": 50.0}
2020-11-30 13:35:00 , {"value": 49.96}
2020-11-30 13:30:00 , {"value": 49.99}
2020-11-30 13:25:00 , {"value": 50.0}
2020-11-30 13:20:00 , {"value": 49.99}
2020-11-30 13:15:00 , {"value": 49.97}
2020-11-30 13:10:00 , {"value": 49.98}
2020-11-30 13:05:00 , {"value": 49.99}
2020-11-30 13:00:00 , {"value": 50.02}
2020-11-30 12:55:00 , {"value": 50.01}
2020-11-30 12:50:00 , {"value": 49.99}
2020-11-30 12:45:00 , {"value": 50.01}
2020-11-30 12:40:00 , {"value": 50.01}
2020-11-30 12:35:00 , {"value": 49.99}
2020-11-30 12:30:00 , {"value": 50.01}
2020-11-30 12:25:00 , {"value": 50.03}
2020-11-30 12:20:00 , {"value": 49.98}
2020-11-30 12:15:00 , {"value": 50.0}
2020-11-30 12:10:00 , {"value": 49.99}
2020-11-30 12:05:00 , {"value": 49.97}
2020-11-30 12:00:00 , {"value": 50.01}
2020-11-30 11:55:00 , {"value": 50.01}
2020-11-30 11:50:00 , {"value": 50.01}
2020-11-30 11:45:00 , {"value": 50.01}
2020-11-30 11:40:00 , {"value": 50.01}
2020-11-30 11:35:00 , {"value": 49.99}
2020-11-30 11:30:00 , {"value": 50.01}
2020-11-30 11:25:00 , {"value": 50.01}
2020-11-30 11:20:00 , {"value": 50.03}
2020-11-30 11:15:00 , {"value": 50.01}
2020-11-30 11:10:00 , {"value": 50.01}
2020-11-30 11:05:00 , {"value": 49.99}
2020-11-30 11:00:00 , {"value": 50.0}
2020-11-30 10:55:00 , {"value": 50.0}
2020-11-30 10:50:00 , {"value": 50.0}
2020-11-30 10:45:00 , {"value": 49.98}
2020-11-30 10:40:00 , {"value": 49.99}
2020-11-30 10:35:00 , {"value": 49.97}
2020-11-30 10:30:00 , {"value": 50.01}
2020-11-30 10:25:00 , {"value": 50.01}
2020-11-30 10:20:00 , {"value": 50.02}
2020-11-30 10:15:00 , {"value": 50.0}
2020-11-30 10:10:00 , {"value": 49.97}
2020-11-30 10:05:00 , {"value": 49.96}
2020-11-30 10:00:00 , {"value": 50.0}
2020-11-30 09:55:00 , {"value": 50.01}
2020-11-30 09:50:00 , {"value": 50.02}
2020-11-30 09:45:00 , {"value": 50.02}
2020-11-30 09:40:00 , {"value": 50.02}
2020-11-30 09:35:00 , {"value": 49.98}
2020-11-30 09:30:00 , {"value": 50.02}
2020-11-30 09:25:00 , {"value": 49.99}
2020-11-30 09:20:00 , {"value": 50.01}
2020-11-30 09:15:00 , {"value": 50.01}
2020-11-30 09:10:00 , {"value": 50.0}
2020-11-30 09:05:00 , {"value": 49.97}
2020-11-30 09:00:00 , {"value": 50.0}
2020-11-30 08:55:00 , {"value": 50.02}
2020-11-30 08:50:00 , {"value": 50.01}
2020-11-30 08:45:00 , {"value": 50.02}
2020-11-30 08:40:00 , {"value": 50.03}
2020-11-30 08:35:00 , {"value": 49.99}
2020-11-30 08:30:00 , {"value": 50.01}
2020-11-30 08:25:00 , {"value": 50.0}
2020-11-30 08:20:00 , {"value": 50.02}
2020-11-30 08:15:00 , {"value": 50.02}
2020-11-30 08:10:00 , {"value": 49.98}
2020-11-30 08:05:00 , {"value": 49.98}
2020-11-30 08:00:00 , {"value": 50.0}
2020-11-30 07:55:00 , {"value": 50.02}
2020-11-30 07:50:00 , {"value": 50.0}
2020-11-30 07:45:00 , {"value": 49.98}
2020-11-30 07:40:00 , {"value": 49.98}
2020-11-30 07:35:00 , {"value": 49.99}
2020-11-30 07:30:00 , {"value": 50.0}
2020-11-30 07:25:00 , {"value": 50.0}
2020-11-30 07:20:00 , {"value": 50.0}
2020-11-30 07:15:00 , {"value": 49.99}
2020-11-30 07:10:00 , {"value": 50.0}
2020-11-30 07:05:00 , {"value": 50.01}
2020-11-30 07:00:00 , {"value": 49.98}
2020-11-30 06:55:00 , {"value": 49.97}
2020-11-30 06:50:00 , {"value": 49.97}
2020-11-30 06:45:00 , {"value": 49.99}
2020-11-30 06:15:00 , {"value": 49.99}
2020-11-30 06:10:00 , {"value": 49.98}
2020-11-30 06:05:00 , {"value": 50.07}
2020-11-30 06:00:00 , {"value": 0.0}
2020-11-30 05:55:00 , {"value": 0.0}
2020-11-30 05:50:00 , {"value": 0.0}
2020-11-30 05:45:00 , {"value": 0.0}
2020-11-30 05:40:00 , {"value": 0.0}
2020-11-30 05:35:00 , {"value": 0.0}
2020-11-30 05:30:00 , {"value": 0.0}
2020-11-30 05:25:00 , {"value": 0.0}
2020-11-30 06:40:00 , {"value": 49.99}
2020-11-30 06:35:00 , {"value": 49.98}
2020-11-30 06:30:00 , {"value": 50.01}
2020-11-30 06:25:00 , {"value": 50.0}
2020-11-30 06:20:00 , {"value": 49.99}
2020-11-30 06:15:00 , {"value": 49.99}
2020-11-30 06:10:00 , {"value": 49.98}
2020-11-30 06:05:00 , {"value": 50.07}
2020-11-30 06:00:00 , {"value": 0.0}
2020-11-30 05:55:00 , {"value": 0.0}
2020-11-30 05:50:00 , {"value": 0.0}
2020-11-30 05:45:00 , {"value": 0.0}
2020-11-30 05:40:00 , {"value": 0.0}
2020-11-30 05:35:00 , {"value": 0.0}
2020-11-30 05:30:00 , {"value": 0.0}
2020-11-30 05:25:00 , {"value": 0.0}
2020-11-30 14:15:00 , {"value": 50.01}
2020-11-30 14:10:00 , {"value": 50.01}
2020-11-30 14:05:00 , {"value": 50.01}
2020-11-30 14:00:00 , {"value": 50.02}
2020-11-30 13:55:00 , {"value": 49.99}
2020-11-30 13:50:00 , {"value": 50.0}
2020-11-30 13:45:00 , {"value": 50.01}
2020-11-30 13:40:00 , {"value": 50.0}
2020-11-30 13:35:00 , {"value": 49.96}
2020-11-30 13:30:00 , {"value": 49.99}
2020-11-30 13:25:00 , {"value": 50.0}
2020-11-30 13:20:00 , {"value": 49.99}
2020-11-30 13:15:00 , {"value": 49.97}
2020-11-30 13:10:00 , {"value": 49.98}
2020-11-30 13:05:00 , {"value": 49.99}
2020-11-30 13:00:00 , {"value": 50.02}
2020-11-30 12:55:00 , {"value": 50.01}
2020-11-30 12:50:00 , {"value": 49.99}
2020-11-30 12:45:00 , {"value": 50.01}
2020-11-30 12:40:00 , {"value": 50.01}
2020-11-30 12:35:00 , {"value": 49.99}
2020-11-30 12:30:00 , {"value": 50.01}
2020-11-30 12:25:00 , {"value": 50.03}
2020-11-30 12:20:00 , {"value": 49.98}
2020-11-30 12:15:00 , {"value": 50.0}
2020-11-30 12:10:00 , {"value": 49.99}
2020-11-30 12:05:00 , {"value": 49.97}
2020-11-30 12:00:00 , {"value": 50.01}
2020-11-30 11:55:00 , {"value": 50.01}
2020-11-30 11:50:00 , {"value": 50.01}
2020-11-30 11:45:00 , {"value": 50.01}
2020-11-30 11:40:00 , {"value": 50.01}
2020-11-30 11:35:00 , {"value": 49.99}
2020-11-30 11:30:00 , {"value": 50.01}
2020-11-30 11:25:00 , {"value": 50.01}
2020-11-30 11:20:00 , {"value": 50.03}
2020-11-30 11:15:00 , {"value": 50.01}
2020-11-30 11:10:00 , {"value": 50.01}
2020-11-30 11:05:00 , {"value": 49.99}
2020-11-30 11:00:00 , {"value": 50.0}
2020-11-30 10:55:00 , {"value": 50.0}
2020-11-30 10:50:00 , {"value": 50.0}
2020-11-30 10:45:00 , {"value": 49.98}
2020-11-30 10:40:00 , {"value": 49.99}
2020-11-30 10:35:00 , {"value": 49.97}
2020-11-30 10:30:00 , {"value": 50.01}
2020-11-30 10:25:00 , {"value": 50.01}
2020-11-30 10:20:00 , {"value": 50.02}
2020-11-30 10:15:00 , {"value": 50.0}
2020-11-30 10:10:00 , {"value": 49.97}
2020-11-30 10:05:00 , {"value": 49.96}
2020-11-30 10:00:00 , {"value": 50.0}
2020-11-30 09:55:00 , {"value": 50.01}
2020-11-30 09:50:00 , {"value": 50.02}
2020-11-30 09:45:00 , {"value": 50.02}
2020-11-30 09:40:00 , {"value": 50.02}
2020-11-30 09:35:00 , {"value": 49.98}
2020-11-30 09:30:00 , {"value": 50.02}
2020-11-30 09:25:00 , {"value": 49.99}
2020-11-30 09:20:00 , {"value": 50.01}
2020-11-30 09:15:00 , {"value": 50.01}
2020-11-30 09:10:00 , {"value": 50.0}
2020-11-30 09:05:00 , {"value": 49.97}
2020-11-30 09:00:00 , {"value": 50.0}
2020-11-30 08:55:00 , {"value": 50.02}
2020-11-30 08:50:00 , {"value": 50.01}
2020-11-30 08:45:00 , {"value": 50.02}
2020-11-30 08:40:00 , {"value": 50.03}
2020-11-30 08:35:00 , {"value": 49.99}
2020-11-30 08:30:00 , {"value": 50.01}
2020-11-30 08:25:00 , {"value": 50.0}
2020-11-30 08:20:00 , {"value": 50.02}
2020-11-30 08:15:00 , {"value": 50.02}
2020-11-30 08:10:00 , {"value": 49.98}
2020-11-30 08:05:00 , {"value": 49.98}
2020-11-30 08:00:00 , {"value": 50.0}
2020-11-30 07:55:00 , {"value": 50.02}
2020-11-30 07:50:00 , {"value": 50.0}
2020-11-30 07:45:00 , {"value": 49.98}
2020-11-30 07:40:00 , {"value": 49.98}
2020-11-30 07:35:00 , {"value": 49.99}
2020-11-30 07:30:00 , {"value": 50.0}
2020-11-30 07:25:00 , {"value": 50.0}
2020-11-30 07:20:00 , {"value": 50.0}
2020-11-30 07:15:00 , {"value": 49.99}
2020-11-30 07:10:00 , {"value": 50.0}
2020-11-30 07:05:00 , {"value": 50.01}
2020-11-30 07:00:00 , {"value": 49.98}
2020-11-30 06:55:00 , {"value": 49.97}
2020-11-30 06:50:00 , {"value": 49.97}
2020-11-30 06:45:00 , {"value": 49.99}
2020-11-30 06:15:00 , {"value": 49.99}
2020-11-30 06:10:00 , {"value": 49.98}
2020-11-30 06:05:00 , {"value": 50.07}
2020-11-30 06:00:00 , {"value": 0.0}
2020-11-30 05:55:00 , {"value": 0.0}
2020-11-30 05:50:00 , {"value": 0.0}
2020-11-30 05:45:00 , {"value": 0.0}
2020-11-30 05:40:00 , {"value": 0.0}
2020-11-30 05:35:00 , {"value": 0.0}
2020-11-30 05:30:00 , {"value": 0.0}
2020-11-30 05:25:00 , {"value": 0.0}
2020-11-30 06:40:00 , {"value": 49.99}
2020-11-30 06:35:00 , {"value": 49.98}
2020-11-30 06:30:00 , {"value": 50.01}
2020-11-30 06:25:00 , {"value": 50.0}
2020-11-30 06:20:00 , {"value": 49.99}
2020-11-30 06:15:00 , {"value": 49.99}
2020-11-30 06:10:00 , {"value": 49.98}
2020-11-30 06:05:00 , {"value": 50.07}
2020-11-30 06:00:00 , {"value": 0.0}
2020-11-30 05:55:00 , {"value": 0.0}
2020-11-30 05:50:00 , {"value": 0.0}
2020-11-30 05:45:00 , {"value": 0.0}
2020-11-30 05:40:00 , {"value": 0.0}
2020-11-30 05:35:00 , {"value": 0.0}
2020-11-30 05:30:00 , {"value": 0.0}
2020-11-30 05:25:00 , {"value": 0.0}
I appreciate any help fixing this :)
Could you reproduce a project with this bug here (copy your labeling config and upload your task)?
https://app.labelstud.io/api/project-switch?uuid=d06c34c8-f89c-417c-9c2e-3e399e26c5fe
I just did. I change the data I've uploaded to json, as this seems a bit more "logical" than the csv format.
This is the labeling config
<View>
<Header value="Inverter Data" style="font-weight: normal"></Header>
<TimeSeriesLabels name="label" toName="ts" timeFormat="%Y-%m-%d %H:%M:%S">
<Label value="Off" background="#5b5"></Label>
<Label value="No Data" background="#55f"></Label>
</TimeSeriesLabels>
<TimeSeries name="ts" timeColumn="time"
sep="," value="$new_data"
timeFormat="%Y-%m-%d %H:%M:%S"
valueType="json">
<Channel column="val" />
</TimeSeries>
</View>
Full json data:
https://gist.github.com/mimre25/ac022c64016750bb338cf69ef33f5fc1
I think the data format is confusing in general. When I import csv, even when I set valueType to json, labelstudio reads it as a list of links.
When I download sample data and upload that, it works fine. Any idea what could be wrong?
@mimre25 Thank you very much, we are working on it.
Any updates on this? Any way I could help?
@mimre25 I've explored your project carefully. I found that time values are sorted in descending order. And I think it's the problem. May you try to order them in ascending?
2020-11-30 05:35:00 , {"value": 0.0}
2020-11-30 05:30:00 , {"value": 0.0}
2020-11-30 05:25:00 , {"value": 0.0}
=>
2020-11-30 05:25:00 , {"value": 0.0}
2020-11-30 05:30:00 , {"value": 0.0}
2020-11-30 05:35:00 , {"value": 0.0}
That was one of my thoughts but I was quite busy and couldn't try it until now.
It works fine. Thanks!
Suggestion: add to the docs that this is necessary
Most helpful comment
That was one of my thoughts but I was quite busy and couldn't try it until now.
It works fine. Thanks!
Suggestion: add to the docs that this is necessary