Skip to content

Disable Datashader count aggregator self-intersect by default for curves #5975

@droumis

Description

@droumis

Describe the solution you'd like

The self-intersect option for a Datashader count aggregator controls whether pixel-crossings of the same line contribute toward a pixel's count.

It was decided that a more reasonable default behavior would be to disable self-intersect by default.

This only makes sense for curves, not paths; self-intersections of paths are usually valuable information.

Additional context


import pandas as pd
import numpy as np
import holoviews as hv
from holoviews.operation.datashader import rasterize
import datashader as ds

hv.extension('bokeh')

self_intersect = True
n_samples = 1000
data = np.random.randn(n_samples)
df = pd.DataFrame({'time': np.arange(len(data)), 'value': data})

hv_curve = rasterize(hv.Curve(df, 'time', 'value'), aggregator=ds.count(self_intersect=self_intersect)).opts(width=600)

hvplot_curve = df.hvplot.line('time', 'value', rasterize=True, aggregator=ds.count(self_intersect=self_intersect))

hv_curve + hvplot_curve

Screen.Recording.2023-11-02.at.4.56.59.PM.mov

Metadata

Metadata

Assignees

Labels

TRIAGENeeds triaging

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions