thechiselgroup / biomixer

BioMixer
http://bio-mixer.appspot.com/
16 stars 13 forks source link

Search for Terms in Graph #451

Closed everbeek closed 9 years ago

everbeek commented 9 years ago

Search box to highlight nodes in the graph. To show them, could dim out all others, or could add halos around matches, or could deselect all non-matches in the cherry picker. It might be worth putting the search in that panel, but with a trigger that is made more prominent?

If halo is desired, use independent search box. If dimming is used, selection via checkboxes would be most...stable and coherent.

everbeek commented 9 years ago

I have the search and UI component done, but I am trying to decide on the visual effect to designate results. Should it be animated? Colored? I am leaning towards having a crawling node border. That is, rendering nodules that move around the perimeter of the matched nodes. Or, I could have the size oscillate gently.

everbeek commented 9 years ago

Interrupting Chained Animations: http://bl.ocks.org/mbostock/10520338 Circle "Particles": http://bl.ocks.org/mbostock/1062544 Circle with Timer: http://bl.ocks.org/mbostock/9539958 Multitouch Circle "Lifting": http://bl.ocks.org/mbostock/9631744 http://tutorials.jenkov.com/svg/rect-element.html

Play with those.

everbeek commented 9 years ago

I will try the "particle" expanding circle animation. How do I have the user trigger the beginning and the end? I suppose each time they click "Find" it will trigger one sequence of circles (perhaps a flash of three). then there are not animations hanging around to be cancelled.

everbeek commented 9 years ago

Have the search function working. Fires a node-colored ring out from each matching node. I trim the search string, lower case compare it to each node name, and fire a D3 animation of a ring growing and fading to 0 opacity. The input box responds to enter key presses, as does the Find button next to it.

I could have it search synonyms too...thinking about that for a moment...although it would be useful (more of a semantic search when synonyms are present), it would also be confusing and unfortunate if the user wants to find a node only by name and there are a lot of mapping with synonyms. I will leave it be.