Comments (13)
still interest in implementing it?
Yep, we still have interest (that's why we keep the issue opened), but it's not part of any short-term plans for plotly.js team members.
from plotly.js.
👍
(right, SI and B are only different in how they show 10^9 - G or B)
Binary vs decimal might need to be a separate item from exponentformat
though - because even in binary mode, you might want to use exponentformat
of 'none'
(512, 1024, 2048...), 'power'
(2^9, 2^10, 2^11...), or 'SI'
(512, 1K, 2K... that's not technically SI but it seems like the logical extension?). And if we're putting in binary, we might as well allow for other bases too.
So I'm thinking of exponentbase
, which would default to 10 but you could set it to 2, 8, 16, and if we're feeling energetic 'e'
or an arbitrary (positive) number. But then only some exponentformat
s would be allowed - 'none'
and 'power'
are always good, 'SI'
is only good for powers of 2 or 10, and 'e'
, 'E'
, and 'B'
are only valid for 10. The default is 'B'
for base 10, seems like 'SI'
would be a good default for powers of 2, and 'power'
for other bases.
from plotly.js.
I like the sound of exponentbase
+1
from plotly.js.
+1, exponentbase makes more sense than my original proposal. Thanks for considering!
from plotly.js.
@etpinard @alexcjohnson how should we handle if users use SI
and an exponentbase
other than 2 or 10, or use B
, e
, E
with bases other than 10? Throw an error, or should we just fallback to defaults?
from plotly.js.
Fallback to default.
This logic should be implemented at the defaults step here.
from plotly.js.
I'm interested in coding this up and making a pull request. Since anything but base 2 and base 10 is definitely a corner case, and it doesn't really make sense to say base-2-SI, my suggestion is to add new options power2
(2^1, 2^2, ..., 2^n) and IEC
(the binary equivalent to SI). What do you think?
from plotly.js.
@jonashaag thanks for interest.
@mdtusz made a PR (see #116) back in December about this.
We noticed a few inconsistency with the approach (see comments in #116), the PR stalled and we moved on to more important things.
Feel free to give this a shot!
from plotly.js.
Wow, that PR looks like a lot of work, and changes many things in many places. It would take me too many hours to rewrite/conflict-resolve this.
from plotly.js.
That's part of the reason that the branch went stale. I wouldn't try to rebase if you do decide to work on it - it's probably easier to just start from scratch based on the diffs - too much has changed in the plotly.js structure since when the PR was opened.
from plotly.js.
See https://github.com/plotly/plotly.js/tree/exponent-base for some WIP work.
from plotly.js.
I agree with the decision to close #116, but I'd still love to see this feature. Is there still interest in implementing it?
from plotly.js.
This issue has been tagged with NEEDS SPON$OR
A community PR for this feature would certainly be welcome, but our experience is deeper features like this are difficult to complete without the Plotly maintainers leading the effort.
Sponsorship range: $10k-$15k
What Sponsorship includes:
- Completion of this feature to the Sponsor's satisfaction, in a manner coherent with the rest of the Plotly.js library and API
- Tests for this feature
- Long-term support (continued support of this feature in the latest version of Plotly.js)
- Documentation at plotly.com/javascript
- Possibility of integrating this feature with Plotly Graphing Libraries (Python, R, F#, Julia, MATLAB, etc)
- Possibility of integrating this feature with Dash
- Feature announcement on community.plotly.com with shout out to Sponsor (or can remain anonymous)
- Gratification of advancing the world's most downloaded, interactive scientific graphing libraries (>50M downloads across supported languages)
Please include the link to this issue when contacting us to discuss.
from plotly.js.
Related Issues (20)
- Mismatch between legend and line colors when using uppercase css colors HOT 1
- Item toggle behavior when using multiple legends HOT 8
- insiderange on multiple overlaid axes edge case
- [Feature Request] Adding a Button to Copy Image to Clipboard HOT 1
- BUG: standoff causes axis title position to break if no tick labels
- Shapes - fill to infinity/-infinity
- Adding a dendrogram to heatmaps
- Smith Chart (scattersmith) pan & zoom functionality HOT 2
- axes range not working. Range is +-1, data is 0->1.6e10 HOT 3
- ScatterGL throws ` TypeError: r[v] is undefined` when using frames HOT 1
- Clicks are sometimes missed with clickmode layout key HOT 4
- Tooltip pointer (triangle) not correctly positioned with hovermode 'x'
- Plotly chart conflict with touchstart / touchmove event to scroll smartphone screen HOT 1
- [BUG] Rangeslider won't reset after zooming out HOT 1
- Inconsistent behavior when providing an array of marker sizes in "markers" mode on scatter3D
- hoverdistance broken in 3D scatter plots; hover radius vs click radius?
- `scattergl` line plots no longer working after upgrading to 2.29.1 HOT 3
- Combining rangemode tozero and tickformat set to "," produces unexpected results
- REOPENING BUG - pie chart hover label hidden
- Hoverlabel overlaps each other
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plotly.js.