Skip to content

[Bug] Line chart tiny segments skipped, becoming a slope #21614

@rtub-prog

Description

@rtub-prog

Version

5.6.0

Link to Minimal Reproduction

https://codesandbox.io/p/sandbox/pdh82y?file=%2Findex.js

Steps to Reproduce

  1. change the time on datapoint1 from 08:59:30 to 08:55:30
  2. change the time on datapoint1 back
  3. repeat

Current Behavior

When we have the following data:

  • datapoint1=[08:59:30, 1]
  • datapoint2=[09:00:00, 1]
  • datapoint3=[09:00:00, 0]

With the following line chart setting:

  • type:'line'
  • step:'end'

The line chart ignores datapoint2 and draws a line from datapoint1 to datapoint3 which becomes a slope.

Expected Behavior

The line chart should draw the line vertically (not as a slope) from datapoint2 to datapoint3 to represent what the data is actually doing.

Environment

- OS: Windows 11
- Browser: Microsoft Edge Version 148.0.3967.54 (Official build) (64-bit)
- Framework:

Any additional comments?

The line of code that appears to be causing this behaviour is "/src/chart/line/poly.ts" at line 83. (The section for "Ignore Tiny Segment.")

            // Ignore tiny segment.
            if ((dx * dx + dy * dy) < 0.5) {
                idx += dir;
                continue;
            }

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugenThis issue is in EnglishpendingWe are not sure about whether this is a bug/new feature.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions