Visualize Thousands of nodes on Neo4J (on Screen / Zoom Out limit) - neo4j

I have a graph with 2000+ Nodes.
Using Neo4J Browser, I can display them "outside of the screen" and drag the viewport to navigate through the Graph, but I do not seem to be able to Zoom Out enough to display my whole graph on the same screen.
Reaching a certain point, the zoom out icon grays out, and one cannot get any further.
I read the Developer Manual / Reference but I did not come across sufficient information regarding this.
Any help/information is appreciated.

imho, the neo4j browser is an admin console. For custom viz needs, you should build a custom viz (lots of existing js libs)
The number of displayed nodes is limited to 300 by default in the browser. Might help to increase it (see the Gear tab then Graph Visualization/Initial Node Display)

Related

OpenLayers keyboard zoom not working in electron environment

I have a electron app that is used to do network graph analysis based on real world graphs such as electric networks. At the moment I'm trying to implement an option where I layer the graph over a map and one can see the exact position of the nodes on the map. It looks like this:
Adding the map is done by open layers. I also want to be able to pan and zoom in while the map is shown. For this the map and graph have to move together. This should be possible with keyboard commands of the arrow keys and + and - .
When I use the arrow keys to direct up ,down ,left ,right everything works apart from open layers loading the map slower than the graph moves sometimes. But when I zoom with the keyboard the map from open layers is not zooming at all. I also tried every key on the keyboard and apparently there is not a single key that zooms the map eventho I activated the keyboard in the options.
The + and - keys generally work in the electron app so this is not a problem. Furthermore, the graph also zooms. It's just the map that does not.
Is there a way to fix this? If not what would be the best option to find a different solution than using the keyboard buttons?

Variable inflation of obstacles in regards to costmap_2d?

I'm doing a robot navigation and path planning project based on simulating the turtlebot3 and driving with the A* planner.
I'm using a program that allows the robot to plan a route only through 'cells' with no cost value (aka. freespace with an inflation cost of 0). However, adjusting the inflation radius I'm experiencing that the robot either cannot pass through narrow openings when the inflation is higher, but drive along a wall when it is low.
I'm wondering if there is a way to control the inflation or something? My desires outcome is for the robot to drive in the center of wide hallways, not along walls, but be able to pass through doors that it should be able to fit through.
Thank you.
I managed to solve this problem thanks to some advice that made me look outside the box.
The problem was intrinsic to my planner, the fact that allowed space to navigate through was binary (aka. either perfectly allowed to drive through or not allowed).
Instead I changed it so that all space other than the walls were allowed space, and added the cost of a cell (from the cost map) to the cells. That way instead of being binary whether the drive can or can't drive in a cell, both the distance and cost of the cells affect the robots path, making it try to keep away from walls, but able to pass through places of high cost if there's no other way.

Before diving in, is this possible with Awesome WM?

I've been trying different tiling WM's to see which one best fits my needs. Every time I try a new one, it looks good but I find other things that don't quite work the way I like. My requirements have evolved as I go. Initially, I didn't want to get into Awesome because having to learn Lua is not on my wish list but maybe I should give it a try IF it can do what I want better than the other tiling WM's out there.
I'm going to as specific as I can about what I want. I am running a 3440x1440 monitor. I want to use as much vertical space as possible (meaning, a full width, persistent but mostly empty status bar is not an option, but I do like the notification area and a date/time).
I understand it may not do everything exactly the way I want, which is oke. If it does more or less most of what I want I can weigh my options between Awesome and other tiling WM's (actually, only i3 which is what I'm using now but I'm open to better suggestions). I would very much appreciate it if people don't just say no to something it can't do, but say "no, but it can do ...". In other words, feel free to suggest alternatives that might be helpful as well.
Divide the screen in 3 columns, initially 30/45/25, with the right column split horizontally; Fully adjustable and resizable as needed during my work session;
Persistent layout; when closing the last application in a tile, I don't want that tile to disappear and the remaining tiles to resize. Just show an empty space and leave all tiles as they are.
tabbed tiles, so I see which applications are running in a tile (similar to i3).
Resizable tiles with the keyboard into 1 direction; When making the middle column/tile wider, I want that into a specific direction into another tile and leave the other side alone.
Certain applications I want to always launch into a specific tile. For instance, terminals always go into the right-most column top/bottom, browser/spotify always into the middle, atom/IDE always into the left. Some applications should always be floating. Obviously I want to be able to send them to a different tile after launch.
I don't want a 100% width status bar. It will be mostly empty which is a waste of screen estate. Preferably, I'd like a statusbar part of a tile, for example in the right-most tile, resizing with it. Otherwise I'd like it to be fixed to 30% and allow tiles which are not beneath it to use the full height of the screen. My reason for a statusbar is mute; I actually only want a notification area and a date time permanently visible. I don't need a "start menu", dmenu or similar is perfect, which I believe it has integrated.
Many thanks in advance!
The general answer is "Awesome configuration is code and it can do whatever you want". But there is a catch. Can Awesome be configured like you describe? Yes, totally. There is at least 2 distributions coming close enough (mine[1] and worron[2]) (at least for the tiling workflow, not the look).
The "catch" is that the workflow you describe isn't really the "Awesome way". Awesome is usually used as an automatic tiler. You have layouts that describe a workflow (code, web, internet) and manage the clients according to their programming. Manual tile management is rarely necessary once you have proper layouts. That doesn't mean you can't, I did, but it might be worth thinking outside the box and see if you can automate your workflow a bit further.
Also, the default layout system isn't very modern and makes it hard to implement the features you requested. My layout system (see link below) can be used as a module or as a branch and supports all features described above. Awesome is extremely configurable and it's components can be replaced by modules.
https://github.com/awesomeWM/awesome/pull/644
The layout "serialization" documentation is here:
https://elv13.github.io/libraries/awful.layout.html#awful.layout.suit.dynamic.manual
It is similar to i3 but has more layouts and containers. As for the "leaving blank space" part, it is configured using the fill_strategy:
https://awesomewm.org/doc/api/classes/wibox.layout.ratio.html#wibox.layout.ratio.inner_fill_strategy
As a word of conclusion, I would note that what you ask is "work exactly like i3". If you want such thing, well, use i3. Awesome is a window manager framework. Its goal and purpose is to create a customized desktop shell / WM. If it's what you want, then go ahead and learn it, nothing else can come close to the possibility and the level of control you can get out of it. However it takes time and effort to get to the point where you have "your own perfect desktop". Our users perfect desktops:
https://github.com/awesomeWM/awesome/issues/1395
[1] https://gfycat.com/SmallTerribleAdamsstaghornedbeetle
[2] https://www.youtube.com/watch?v=-yNALqST1-Y
The WM your are looking for is herbstluftwm (hlwm). Its a manual tiling window manager. The tiles which you are talking about are called frames in hlwm. Each frame can contain multiple windows. A frame can also be empty. Only if you kill a frame the other frames will automatically resize. You can add new frames vertically and horizontally and resize them. Each frame can also have a different layout to organize the windows inside. The layout you are looking for is max. This will stack the windows inside a frame on each other. It doesn't show you tabs like i3 however. hlwm allows you to create rules to open certain applications always in certain frames and workspaces. hlwm doesn't have a statusbar buildin. I personally like to use tint2. It can be used as a replacement for your requirement to see running applications as tabs.

Gephi graph disappeared after adding few more nodes and edges

I am quite new to Gephi, but after reading the tutorials on the official page I manged to make a decent graph. However, after adding few more nodes and edges to the database (currently has 31 nodes and 45 edges -see below) and re-generating the graph from layout tab, the graph disappeared and the "Force Atlas" distribution won't stop loading. I tried with other layout distributions with same results and I also tried with the zoom to extents icon but nothing would show up.
Can anyone tell me why is this happening and how could I fix that?
I am attaching two csv files which contain an anonymized version of my nodes and edges:
Nodes.csv
Edges.csv
I have found a workaround in order to solve my problem: I ran the randomized layout (name may differ, as I am using a localized version), which results in a not so nice layout which fits in the screen (which is its main achievement). After that, I can run other distributions such as "Force Atlas" and nodes and edges would show up and fit on the screen.

Automatic background removal from still image without user interaction

I am trying to develop an image search application. I have crawled through e-commerce websites and obtained some data set of images(~2.5 Million). Now I want to identify the object of interest from each image so that when i do a feature comparison on large scale the results will be accurate(generally there is only one object of interest in each image). I went through grab cuts and graph cuts but that require user interaction of some sort. Is there any way where i can remove the user interaction aspect and do this automatically.
Thanks in anticipation.

Resources