-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Range sliders specs #279
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Could you elaborate on I'd also vote for |
Right. I just realized that the |
For the slider component itself, we need to decide on a few things that are highly opinion based, so I figure we should all toss in our $0.02.
|
I like the d3 demo and Chromes. Chrome inverting what is greyed out is really interesting. I think I prefer that to the D3 example. Not a big fan of the big highchart paddles |
oh man @bpostlethwaite I was just going to say I liked the highchart paddles. |
There's parts of highcharts I don't really like and think go against the grain of what you would expect - mainly the inability to click&create a range, and to slide bounds past each other. We can match it - it's more just a question of what's the best interface? |
We already have precedent within plotlyjs with the zoombox, specifically the 1D zoom variant - which has handles (a little more subtle than highcharts), greys out the unselected area (ala chrome @bpostlethwaite), and lets you slide bounds past each other (@mdtusz)... the only real difference is it's not persistent. Seems to me we should mimic that, and then later if we want to tweak the style we tweak them both. |
For clarity, here's the 1D zoom effect we have now: And @mdtusz to your behavior checklist, my vote is all of the above. Drag the handles anywhere (including past each other), click & drag between the handles to move the region, click and drag outside to start a new region. |
It'd be pretty cool if colorbars could accept a rangeslider object as well! |
Hi Guys, My company adopted Plot.ly js partially because we were excited about the range slider. However, in development we noticed that the range slider renders the whole graph again and it doubles rendering time. Our customers are used to viewing a lot of data all at once. We decided the performance hit wasn't acceptable so we're shipping without it. What do you think about providing a more basic skin for the range slider behavior that doesn't introduce 100% more rendering cost? Something like: |
@ToothlessDragon thanks for the comment. I'm thinking that we should support range-slider-only traces that, as the name same suggests, would only appear in the range slider. For example, you could plot a 1e3 point scatter traces in the regular plot and plot a 100-pt aggregation in the range slider. Do you think that would solve your issues? |
Let me check whether I'm understanding you correctly: We'd set up our main graph as is I wonder whether that would also enable us to show the range slider as-is with a white background and no traces? That might also meet our needs. |
Exactly. Getting the API right will be tricky, but I'm thinking something like: var trace0 = {
type: 'scatter',
name: 'trace on main plot'
x: [1,2,3],
y: [2,1,2]
}
var trace1 = {
type: 'scatter',
name: 'trace in range slider plot',
visible: 'rangeslideronly', // similar to `visible: 'legendonly'`
x: [1,2,3],
y: [1.5]
}
Plotly.plot('graph', [trace0, trace1]) |
So by default, the trace wouldn't be rendered on the rangeslider? That is fine with me, but I want to clarify with you. |
@etpinard can you give me a rough idea of where this is on your list of priorities? |
By this you mean that |
Ah, thank you for the information.
…On Thu, Feb 9, 2017 at 11:11 AM Étienne Tétreault-Pinard < ***@***.***> wrote:
can you give me a rough idea of where this is on your list of priorities?
By *this* you mean that visible: 'rangeslideronly' feature? If so, it's a
very low priority I'm afraid.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#279 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AQF4oIYEArrgVsYtK2fNBUUa0Sbr_qpYks5ra2TUgaJpZM4Hhx9u>
.
|
Is there any news regarding y-axis slider. |
@r1z1a Have you tried using Plotly.js sliders for this (not range sliders)? |
@jackparmer Hi i looked at the normal sliders but it seems they are discrete, as in you can't have a smooth slider. Or at least the documentation makes it seem that way. Also with sliders you cant just adjust the range for y axis since the plot data don't have the yMin and yMax. Its not possible to get the range from the graph itself. |
@mdtusz @alexcjohnson @jackparmer @chriddyp
Range sliders à la Highcharts are coming to plotly.js.
I'm thinking that the most intuitive way to plug them into our attribute schema would be as part of the
layout.xaxis
object (and thelayout.yaxis
object down the road).Range sliders would be an axis component similar to axis titles. They would be drawn below their corresponding axes, and in the bottom margin if necessary.
Here's a tentative version of the specs:
Some re-factoring in
axes.js
may be required to ensure that slider changes don't have to go throughPlotly.relayout
on every update.The text was updated successfully, but these errors were encountered: