cancel
Showing results for 
Search instead for 
Did you mean: 

Head's Up! Site maintenance this Wednesday, February 1. Disruptions expected as we migrate the forums.

GRASS file: How to insert a line feed

genealogy
Graph Buddy

I'm displaying nodes with 3 properties using a grass file. Everything is displaying, but I'd like a line feed between the properties displayed in the caption to get uniformity. Since the text length varies, the wrapping is inconsistent. I've tried
, \n, \r but they just show up as text.

Here's the grass element ...

node.Person {
  color: #569480;
  border-color: #447666;
  text-color-internal: #FFFFFF;
  defaultCaption: "<id>";
  caption: "{fullname} [{RN}] {tgs}";
  diameter: 100px;
}

I'd like the line feed between the fullname , RN and tgs properties.

Thanks!

Dave

4 REPLIES 4

Joel
Ninja
Ninja

this is eventually rendered by the browser, so you might try

<br>

interesting side note, if you put a url address into the label (without adding the <a href=) they become clickable links... something in the rendering process recognizes them and adds the <a href..


did not work. It shows up as text. Still looking for a solution!

Joel
Ninja
Ninja

Ok, so I spent some time trying all the things I could think of but I was unable to cajole the neo4j browser to render a new line, I also observe this is a somewhat futile endeavor anyway, since the text is clipped by the circle. Note, sometime back I spent considerable time trying to disable that circle clipping behavior, and could not find a clean way around it. Today I render interesting graphs using a flask backend and render the graph with cytoscape.js in the UI. Both clipping and new lines are easier to deal with when using cytoscape.js.

If you really (really) want it in the neo4j browser, the code is open source

so

  1. you could turn in a request to modify the browser capabilities in this regard
  2. examine the code and find a way to get the browser to do what you want (might still be a tricksy way to escape/insert html formatting?)
  3. clone the git and create your own version of the browser
  4. the url above shows a way to (temporarily) override javascript functions, with enough work probably can do anything that way, but that is going deep into javascript hacks (with a transient patch)

Personally I have found that using cytoscape.js (or other viz library) is faster, easer and a more practical approach than those options though.

Hi

I looked at the html generated by the neo4j browser. The text to be displayed is inside a text tag, which is inside a g tag, which is inside an svg tag. However only the text that can fit is actually included inside the html, so it appears that you cannot trick the browser into displaying more than one line. The really weird thing is that I have seen some nodes where the text is displayed in two lines.

Phil

Nodes 2022
Nodes
NODES 2022, Neo4j Online Education Summit

All the sessions of the conference are now available online