<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Search on brege.org</title>
    <link>https://brege.org/tags/search/</link>
    <description>Recent content in Search on brege.org</description>
    <generator>Hugo</generator>
    <language>en</language>
    <copyright>Copyright (c) 2016-2026 Wyatt Brege</copyright>
    <lastBuildDate>Sun, 12 Apr 2026 21:45:09 -0400</lastBuildDate>
    <atom:link href="https://brege.org/tags/search/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Les Miserables</title>
      <link>https://brege.org/post/les-miserables-graph-search/</link>
      <pubDate>Sat, 24 Dec 2022 05:30:47 -0500</pubDate>
      <guid>https://brege.org/post/les-miserables-graph-search/</guid>
      <description>A network graph of character connections from one of my favorite books
and authors of all time, Victor Hugo&amp;rsquo;s Les Miserables.</description>
      <content:encoded><![CDATA[<p><em>Les Miserables is one of my favorite books.  I read most of the original translation on a train ride to Portland, OR from Chicago, IL back in 2008 and enjoyed the remainder on the return trip back East.  It taught me compassion: when Valjean places the coin in Cosette&rsquo;s shoe.  Father Christmas always misses her.  There was an earlier passage of a man stepping on a coin in front of her, while she swept dressed in rags.</em></p>
<p>The graph may take a moment to load.</p>
<p>



<style>
  #network { height: 60vh; }   
</style>

<div id="network" data-nodes-path=data/nodes.json data-edges-path=data/edges.json></div>

<script src="https://visjs.github.io/vis-network/standalone/umd/vis-network.min.js"></script>
<script src="js/lesmis-network.js"></script>



<link rel="stylesheet" href="/css/search-bar.css">
<div id="searchbox">
  <div id="search-form" data-search-path=data/nodes.json>
    <input id="search-input" autofocus placeholder="Search.." aria-label="search" type="search" autocomplete="off">
  </div>
  <div id="search-results-container" aria-label="search results"></div>
</div>
<script src="/js/search-plots.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fuse.js/3.4.6/fuse.min.js" ></script>

</p>
<p>The search bar is the major addition to the graphing methods.
Nodes can be clicked and added to a subgraph builder.
You can continue to search for new node members in the search bar
(which has a rudimentary autofill that&rsquo;s a straight json query)
and clicking on them will add them to the builder.
Simultaneously, the graph will reduce to a graph containing only
all nodes with edges linked to nodes in the builder.</p>
<p>Items can be removed from the builder either by clicking the little builder tabs or re-clicking the node.  Clearing the builder bar completely will redraw the whole graph.</p>
<p>Testing and development was done on the mini pesto data set I made for <a href="/post/what-is-pesto/">What is Pesto?</a>.  Recipe builder coming soon(!)</p>
<p>Please email me at <a href="mailto:wyatt@brege.org">wyatt@brege.org</a> with any questions.</p>
<p>Dataset can be found here:</p>
<ul>
<li><a href="data/nodes.json"><code>nodes.json</code></a></li>
<li><a href="data/edges.json"><code>edges.json</code></a></li>
</ul>
<blockquote>
<p>Lingering annoyances:</p>
<ul>
<li>Slow</li>
<li>Javascript needs clean up</li>
<li>I have great fear running this on my 700x3000 dataset..</li>
</ul>
</blockquote>
]]></content:encoded>
    </item>
  </channel>
</rss>
