elastic / elastic-charts

https://elastic.github.io/elastic-charts/storybook
Other
372 stars 120 forks source link

Add support for Box and Whisker / Candlestick chart type #1675

Open hbharding opened 2 years ago

hbharding commented 2 years ago

Is your feature request related to a problem? Please describe.

I'm working on our new Synthetics App with @drewpost and we'd like to use a Box and Whisker chart to show various high frequency data points (performance metrics) as a 30/60/90/365+ day timeseries. Each day, a synthetics monitor might capture between 6 and 1,440 events depending on the monitor's frequency. If we were able to plot "execution time" (for example) as a Box and Whisker chart, we'd be able to show the high and low (whisker) and the 25th, median, and 75th percentile (box) values. This visualization would be helpful in describing how a monitor actually behaved on a certain day, and could be used to help spot "anomalies" or areas of interest for further analysis.

Describe the solution you'd like

image

Add support for Box and Whisker chart types. It should behave similar to our other time series chart types. Our intention is to use vertical bars in a time series, but a horizontal layout option could be interesting and maybe useful as well.

image

I created a mockup for this before I realized Elastic Charts currently doesn't support this, hence why I'm creating this issue 😄 . I designed this as a Candle Stick chart (by mistake, it's something I'm more familiar with) before I understood what a Box and Whisker chart was... but what we actually want is a Box and Whisker chart. My design doesn't indicate a "median", but I'd like to show one somehow.

I mention the "Candle Stick" backstory in case it makes sense for you to build this capability as well since the chart types are so similar. I have no data to back this up, but maybe there are users who want to view financial data on a dashboard in a way they're already familiar with 🤷‍♂️.

Describe alternatives you've considered

I tried using a band area chart. We can use this for now, but it's not exactly what we want. It places too much emphasis on the highs and lows.

image

Additional context

We intend to GA our product in 8.5, so it would be great to have this capability before then.

Kibana Cross Issues

Will add when they exist...

Checklist

Delete any items that are not applicable to this feature request.

ghudgins commented 2 years ago

Related Kibana issue https://github.com/elastic/kibana/issues/4157

monfera commented 2 years ago

Linking an older prototype with a few slides from here