-
Notifications
You must be signed in to change notification settings - Fork 377
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
Suggestion: add an angle property to d3.forceRadial() to define the forces in this angle #152
Comments
Nice idea. See https://observablehq.com/@fil/forceangular for an implementation. |
Thank you for your reply. Actually, I've learned a lot from your coding. |
New iteration of the code. The things that I was not happy with in the first iteration were:
In both cases the result is mathematically justified, so I think the code is final. I don't know if it should be included in d3-force or not. If it is included, and we want to modify d3.forceRadial to take into account the angle, there's a difficulty with the order of arguments: forceRadial(r, x, y) can't be easily expanded to forceRadial(r, a, x, y). However we could define forcePolar(r, a, x, y), and make syntactic sugar for forceRadial(r, x, y) and forceAngular(a, x, y). |
I think these new forces are very useful for various scenarios. Thanks for putting them together @Fil! In case they don't make it to |
I've mixed them into forcePolar https://observablehq.com/@fil/forcepolar with syntactic sugar for forceRadial and forceAngular |
Related: #113 |
It's a ground truth that in Polar coordinate system we need (
angle
,radius
) to determine a position of a point. When I used3.forceRadial
to add a radial force on nodes, I surmise it could be more applicable if anangle()
function is added tod3.forceRadial
to define a force on an angle of radial. I thought it derives naturally without which we need to used3.lineRadial
to tranform this problem to whatd3.forceCenter
can solve.For example, I want to draw a graph as the following.
Each circle in the graph needs to be positioned just at the cover of an arc as if an magnet force existed.
The text was updated successfully, but these errors were encountered: