Comments (7)
Agree this would be nice. This sounds like the higher-order version of an egonet, no? So perhaps we can have H.neighbors
and H.egonet
or something like that.
from xgi.
I like this idea! I also tried to do something similar in another repo of mine (line 126). I would vote to create a dedicated function for this initially, and then if it becomes clear that we can have a single function, then that's great. Renaming to follow your convention is cool with me as well!
from xgi.
To move this forward we need a consensus on the name. Current alternatives are:
-
Rename the current function (returns all neighbors in a single list) to
graph_neighbors
and the new one would beneighbors
. -
Current function remains as
neighbors
and new one is calledegonet
. -
Something else.
Please vote!
from xgi.
Obviously, let's start a third option :D
- Keep this exact function with the name
neighbor_nodes
. Then, to get what I was proposing one could simply use themembership
function discussed in #40 and from there it would be straightforward.
What do you think?
from xgi.
Our reasoning to call it neighbor_nodes
instead of neighbor
is to make it explicit that it returns node IDs (and not edge IDs).
from xgi.
In that case I would also suggest a neighbor_edges
then.
Also, I think returning the edges a node is part of (its membership) vs returning the edges it is a part of but with that node removed are sufficiently different that they could be different methods. So this would leave suggestion number 3 as implementing neighbor_nodes
and neighbor_edges
, both returning lists of ids, and membership
and egonet
, returning lists of edges.
....which perhaps seems like overkill? Not sure
from xgi.
Perhaps a good compromise is to implement only two functions: members
and membership
and have them take one parameter, ids
, which controls whether they return a list of ids or a list of objects.
from xgi.
Related Issues (20)
- Warning when specifying node colors HOT 2
- change size of node labels? HOT 1
- Add NBQA
- Flagged lattices? HOT 3
- Add tensor functionality to eignevector centralities
- incorporate Network Geometry with Flavours
- incorporate pseudofractal generative models
- Allow `draw_nodes` to accept an iterable as the first argument.
- Should draw with convex hull be the default and only behavior? HOT 6
- Returning node positions from `xgi.draw` HOT 3
- how to calculate the average path length? HOT 9
- Add more statistics functionality HOT 1
- Fix warning in `draw_multilayer`
- katz centrality should return the same data type as the other centrality measures
- Add recipe for returning all IDs corresponding to the maximum.
- `rescale_sizes` doesn't work for numerical inputs HOT 3
- Other Resources should contain EasyGraph HOT 2
- weighted projection of hypergraphs HOT 3
- Add a way to specify `vmin` and `vmax` HOT 2
- add back edgecolor argument to draw hulls with white face but colored contour HOT 3
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 xgi.