## Is your feature request related to a problem?

#4947 added a new query to the backend – time to convert. It works well, just one point is kind of rough: bin width and count.

## Describe the solution you'd like

Currently the number of bins is hardcoded. Ideally we should have two options:
- return a user-specified number of bins,
- otherwise infer a reasonable number of bins using some algorithm (auto option).

@alexkim205 [suggested](https://github.com/PostHog/posthog/issues/4855#issuecomment-872423877) the [Freedman-Diaconis rule](https://en.wikipedia.org/wiki/Freedman%E2%80%93Diaconis_rule) for determining bin width (and interval based on that), but unfortunately from my testing its formula would not be the most practical – it's great for keeping a pretty constant "smoothness" of the histogram esp. with normal distribution, but we face some additional constraints that make it less than ideal:
- we can't have histograms too dense visually in the UI, from my testing a practical limit is 60 bins (above that it gets too dense),
- our data generally doesn't follow much of a normal distribution.

Clamping may help though, or maybe a different formula may work better outright – I'll be testing this.

## Additional context

Issue pertaining to the experience of time to convert: #4855

#### *Thank you* for your feature request – we love each and every one!

ee/clickhouse/queries/funnels/test/test_funnel_time_to_convert.py
from datetime import datetime, timedelta
from uuid import uuid4
import pytz
from ee.clickhouse.models.event import create_event
from ee.clickhouse.queries.funnels.funnel_time_to_convert import ClickhouseFunnelTimeToConvert
from ee.clickhouse.queries.funnels.funnel_trends import ClickhouseFunnelTrends
from ee.clickhouse.util import ClickhouseTestMixin
from posthog.constants import INSIGHT_FUNNELS, TRENDS_LINEAR
from posthog.models.filters import Filter
from posthog.models.person import Person
from posthog.test.base import APIBaseTest
FORMAT_TIME = "%Y-%m-%d %H:%M:%S"
FORMAT_TIME_DAY_END = "%Y-%m-%d 23:59:59"
def _create_person(**kwargs):
    person = Person.objects.create(**kwargs)
    return Person(id=person.uuid, uuid=person.uuid)
def _create_event(**kwargs):
    kwargs.update({"event_uuid": uuid4()})
    create_event(**kwargs)
class TestFunnelTrends(ClickhouseTestMixin, APIBaseTest):