Bug description

It's possible to Drill to Detail an Echarts chart by an Axis value. This is currently not working properly in case the Axis column has a label defined at the dataset level.

  1. Edit your dataset, to add a label to a column.
  2. Create Bar Chart, using the column from step 1 as the X-Axis.
  3. Add a metric and a dimension, and save this chart to a dashboard.
  4. Access the dashboard.
  5. Right-click any bar, and use the Drill to Detail by $AXIS_VALUE option.

Expected results

The D2D table should list only results that match that axis value.

Actual results

The D2D table shows all values.

Screenshots/recordings

No response

Superset version

master / latest-dev

Python version

3.11

Node version

18 or greater

Browser

Chrome

Additional context

No response

Checklist

  • [x] I have searched Superset docs and Slack and didn't find a solution to my problem.
  • [x] I have searched the GitHub issue tracker and didn't find a similar bug report.
  • [x] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Comment From: dosubot[bot]

This is a confirmed bug: when the axis column in an Echarts chart has a label (verbose name) defined at the dataset level, Drill to Detail (D2D) by axis value does not filter correctly and shows all values. The root cause is that the D2D filter construction uses the axis label (verbose name) instead of the true column name, but the backend expects the real column name for filtering. As a result, the filter is ignored and all rows are shown. There is currently no mapping from label back to column name in the Echarts plugin's D2D logic, which is why this happens. The generic D2D modal expects filters to reference the true column name, so this is specific to how the Echarts plugin constructs the filter payloads. No existing tickets, docs, or PRs address this specific issue yet. For more technical details, see the relevant code in the EchartsTimeseries plugin and DrillDetailPane component (source, source).

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Join Discord Share on X

Comment From: geido


🎉 Preset Bounty Available: $150 USD 🎉

To claim this bounty, please carefully follow the steps below.


📋 Steps to Participate

  1. Review Guidelines:
    Read through the Preset Bounty Program Contribution Guide for complete details on bounty requirements.

  2. Show Your Interest:
    Complete the Preset Bounty Program Survey and comment this issue to express your interest.

  3. Join the Slack Channel:
    After completing the survey, you’ll receive an invitation to the dedicated Apache Superset Slack channel.

  4. Get Assigned:
    To officially start, ensure a Bounty Program Manager has assigned you to this issue.

  5. Submit Your Solution:
    When ready, submit your solution with the Fixes #{issue_number} notation in your Pull Request description.

  6. Claim Your Bounty:
    Sign up at GitPay.me and submit your solution via: https://gitpay.me/#/task/1216


💡 Additional Notes

  • Only developers assigned by a Bounty Program Manager should start working on this issue to win the bounty.
  • Be sure to follow the guide closely to avoid any delays in payment. Please, allow a few days after your PR has been merged for the bounty to be released.

Good luck, and happy coding! 🎉

Comment From: abhishek818

@geido can I take this up?

Comment From: msyavuz

Hey, @abhishek818 let's have a chat on Apache Superset Slack

Comment From: zaminalishah

@msyavuz I would love to start my journey with superset with this issue could you assign it to me. Thanks.