Skip to content

Streamz hvplot resets zoom and pan on each update #472

@josephwinston

Description

@josephwinston

I'm plotting a large amount of streaming data using streamz and I'm very happy with the performance.

Here is how I create the stream, data frame, and the line:

        self.stream = streamz.Stream()
        example = pd.DataFrame({'Time': [], 'Depth': []}, index=[])
        df = streamz.dataframe.DataFrame(self.stream, example=example)

        self.line = df.hvplot.line(width=800,
                                   x='Time',
                                   y='Depth',
                                   ).opts(
            title='Depth',
            xlabel='Time',
            ylabel='Depth')

The data frame is periodically updated like this:

        df = pd.DataFrame([(date, value)], columns=['Time', 'Depth'])

        self.stream.emit(df)

This builds a nice line that changes as new data arrives. However, zooming and panning don't work as the historical data is apparently not present for the hvplot.line.

Ideally, I can provide the missing data. If this is possible, please point me to some documentation or example.

If I cannot use zooming and panning, what is the correct way to disable them?

See
https://discourse.holoviz.org/t/streamz-hvplot-resets-zoom-and-pan-on-each-update/4609/1
for the first report of this I can find.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions