A distant reading project on undead literature
Undead Networks is a digital humanities project that studies vampiric and revenant figures across literary traditions, from the strigoi of Romanian folklore and fiction to the Gothic canon and the pulp magazines of the early twentieth century.
Each novel or story in the archive is converted into a structured dataset of its dialogue. From that dataset we build two complementary analyses: a character network showing who interacts with whom, and a vocabulary profile showing how each character speaks and how their language changes from one interlocutor to another. A third strand, now in development, adds literary geography: the places each work moves through and how its characters travel between them.
The project is based in Sibiu, Romania, at the Lucian Blaga University of Sibiu, and was founded by Anca-Simina Martin and Andrei-Nicolae Martin-Căluțiu.
Why study the undead as a network?
A vampire story is almost always a story about relationships. The undead figure feeds on a household, seduces or haunts a chosen victim, and spreads through a community. Often it is noticed less through its own words than through what others say about it. These patterns of intimacy, contagion, isolation and exclusion are social structures, and social structures can be mapped.
Modelling each text as a network of characters lets us ask questions that are hard to answer by reading alone:
- Where does the monster sit in the social fabric of the story? Is it a central hub, a bridge between otherwise separate groups, or a marginal figure that is talked about more than it talks?
- Who mediates? Which characters connect the world of the living to the world of the undead?
- How do communities form around the threat? Do families, lovers, servants or investigators form distinct clusters, and where do they overlap?
- Does the undead speak differently? Is its vocabulary richer or poorer, more exclusive, or more closely tied to particular interlocutors than those of the human characters?
- How does gender shape the network? Who speaks, who is spoken to, and who is silenced?
- How do traditions compare? Does a Romanian strigoi novel organise its world differently from a German Gothic tale or an American pulp story?
- Where does the undead travel? Is the monster tied to one place, or does it cross borders and carry its threat with it? Who moves, and who stays behind?
The models are not meant to replace interpretation with numbers. They raise new questions, test critical intuitions, and point readers back to specific passages in the texts.
The archive
The archive brings together undead fiction from several traditions: Romanian novels built around the strigoi and the vampire, international fiction set in Romania, and German Gothic and American pulp stories. Each work has two analyses, a character network and a vocabulary profile.
Because every text passes through the same pipeline, the works can be compared with one another, and the archive is designed to keep growing as new texts are processed.
A human-in-the-loop pipeline
Every analysis is produced by an open-source pipeline built in Python. Computation handles the repetitive, large-scale work. Researchers make the interpretive decisions a machine cannot make reliably: who is speaking, who is being addressed, and who is silently present in a scene.
-
1
Dialogue extraction Automatic
The digitised text is parsed and every line of direct speech is extracted. For Romanian texts, the extractor recognises dialogue introduced by an em-dash (—) and speech in Romanian quotation marks („…”). Short attribution-only fragments such as — zise el ("he said") are filtered out, so the dataset holds only what characters actually say.
-
2
Dialogue validation Researcher
Each extracted line is reviewed in a dedicated browser interface, where it can be accepted, corrected, flagged, deleted, or supplemented with dialogue the algorithm missed. The result is a verified corpus of utterances that stays faithful to the source text.
-
3
Character assignment Researcher
For every utterance, a researcher records the speaker, the dialogue partner being addressed, and the silent participants present in the scene. The third category matters especially in undead fiction, where the most important figure in a room is often the one who says nothing.
-
4
Dataset normalisation Automatic
The annotated material is cleaned into a stable, reusable dataset. Each record holds the utterance, its word count, the speaker, the addressee and the silent participants.
-
5
Character metadata Researcher
Each character is annotated with gender (male, female, or collective for groups such as villagers or servants), which allows gendered patterns of speech and silence to be compared across the corpus. When an undead figure appears under several names or guises, its aliases can be linked to one identity.
-
6
Network construction Automatic
The dialogues become a weighted graph. Direct interaction edges connect speakers and addressees, weighted by how often they talk. Co-presence edges connect characters who share a scene without necessarily talking to each other. Centrality measures and communities are then calculated on this graph.
-
7
Vocabulary analysis Automatic
All dialogue is tokenised, tagged for part of speech and lemmatised with Stanza, Stanford's natural language processing library. Profiles are built from content words (nouns, verbs, adjectives and adverbs), with stopwords removed, for each character and for each relationship.
What the network tells us
Standard social network analysis measures describe each character's position in the story's social world.
- Degree centrality
- How many other characters someone is connected to.
- Closeness centrality
- How close a character is, on average, to everyone else in the story.
- Betweenness centrality
- How often a character lies on the path between two others, acting as a bridge or go-between.
- Eigenvector centrality
- Whether a character is connected to other well-connected, important characters.
- Communities
- Groups of characters who interact mainly with each other, found by greedy modularity optimisation.
- Edge weight
- The strength of a relationship, measured by the number of exchanges or shared scenes.
How the characters speak
The vocabulary analysis looks at the language of each character and of each relationship.
- Type–token ratio (TTR)
- The share of distinct words in a character's speech; a simple measure of lexical variety.
- MTLD
- Measure of Textual Lexical Diversity. Less sensitive than TTR to how much a character speaks, so better for comparison.
- Part-of-speech profile
- Whether a character's speech leans towards naming, acting or describing.
- Top and exclusive words
- Most frequent words, and words a character uses only with a particular partner.
- Vocabulary overlap
- Jaccard similarity between a relationship's vocabulary and the character's overall vocabulary: does someone speak differently depending on who is listening?
- Reliability flag
- Measures from small samples are unreliable. Relationships under 30 words of dialogue are marked accordingly.
Exploring the visualisations
Each network is an interactive, force-directed graph built with D3.js. In each view you can:
- filter characters by number of dialogues and relationships by strength;
- switch between direct-dialogue and co-presence links;
- collapse the network into its detected communities;
- merge the different names of the undead figure into a single node;
- click any character to open a panel with their network statistics, connections, vocabulary profile, relationship-specific word use and community cohesion;
- export any view as SVG or PNG for teaching, presentations or publication.
We encourage readers to move between the graph and the text, and to test what they see against their own reading.
Open source and reusable
The full pipeline, from extraction through the annotation interfaces to network generation and visualisation, is released under the GNU General Public License v3.0.
It was first built for Romanian novels but can be adapted to other languages and corpora by replacing the input text, the character list, the attribution verbs, the stopword list and the Stanza language model. We welcome researchers, teachers and students who want to apply it to their own texts, extend the archive, or propose comparative studies.
Literary geography and mobility
Undead fiction is also a fiction of places: the remote castle, the village at the edge of the forest, the manor, the city the monster reaches from abroad. Alongside the character networks, we are developing geographical analyses for selected works in the archive.
- Settings: identifying the real and imagined places each work mentions or moves through, and mapping them.
- Character mobility: tracing how characters move between places, which characters travel and which remain fixed, and whether the undead figure is bound to a place or crosses borders.
- Place networks: linking locations through the characters who move between them, to show how a story's world is connected.
- Time: following how settings and movements shift over the course of the narrative and across periods and traditions.
These analyses will appear in the archive alongside the existing network and vocabulary studies as they become available.
Team
Anca-Simina Martin has (co-)prefaced a newly rediscovered interwar translation of Dracula into Romanian (Dezarticulat, 2023) and the first Romanian vampire novel (Vampirul, Dezarticulat, 2024). Her recent scholarly contributions include “The Interwar Romanian Translation of Dracula: A Story of Lost and Found” (Babel, 2024) and “The Vampire in Late Communist Cinema: From Internal Enemy to Foreign Threat” (Studies in East European Thought, 2025).
How to cite
If you use the analyses or the pipeline in your work, please cite the project:
Get in touch
For questions, collaborations, or suggestions for works to add to the archive, write to us at andreinicolae@tuta.io.