Search code examples
javascriptpythonbokeh

Bokeh source.change.emit() Uncaught TypeError: value.toFixed


I currently do not have a reproducible example but will provide one asap.

I have a bokeh dashboard that updates with new data once a day and until this morning everything worked, so I can't explain right now why I am getting this error.

I have a JS callback that filters the data and the code runs fine up until updating the data source with source.change.emit();. This throws the error "Uncaught TypeError: value.toFixed is not a function".

Interestingly, the error only occurs when filtering for categories in a specific column, the same callback for categories in another column works perfectly fine. As said, until recently it worked for both columns.

Any idea if something on the bokeh side changed / what could cause the error?

Best, Oliver


Solution

  • Sounds like a data issue

    If value is not a number then it does not have a toFixed method to call.

    If it is a string, cast it to number first, if null or undefined, cast it to 0 if needed

    let a = 0
    console.log(a.toFixed(2))
    let b = ""
    console.log(b.toFixed(2))