Hands-on Activity: Using Graph Theory to Analyze Drama

Contributed by: IMPART RET Program, College of Information Science & Technology, University of Nebraska-Omaha

Two images: A circular collection of ~100 dots (nodes) of various colors, interconnected with lines (edges). The node colors indicate betweenness. A photo shows two robed characters performing a scene from a Shakespeare play.
A graph showing betweenness of nodes. For the characters in your favorite play, what is the betweeness centrality, or measure of importance based on the frequency of communication between each of them?
Copyright © 2007 (top) Claudio Rocchini, Wikipedia Commons; (bottom) National Endowment for the Arts http://commons.wikimedia.org/wiki/File:Graph_betweenness.svg http://www.nea.gov/national/shakespeare/Photos.html


Students analyze dramatic works using graph theory. They gather data, record it in Microsoft Excel and use Cytoscape (a free, downloadable application) to generate graphs that visually illustrate the key characters (nodes) and connections between them (edges). The nodes in the Cytoscape graphs are color-coded and sized according to the importance of the node (in this activity nodes represent characters in the work and their relative importance to the story). After the analysis, the graphs are further examined to see what the visual depiction of the story in the form of a graph tells readers about the inner workings of the dramatic work. Students gain practice with graph theory vocabulary, including node, edge, betweeness centrality and degree on interaction, and learn about a range of engineering applications of graph theory.
This engineering curriculum meets Next Generation Science Standards (NGSS).

Engineering Connection

The mathematical structures of graph theory are widely applied in computer science, mathematics and engineering to model relationships between objects in sets of objects.

Software engineers use graphs to represent communication networks, data organization, computational devices, the flow of computation and more. They also exploit the relationships documented in social networks on websites like Facebook to market products to consumers. And they use graph theory to represent website structures, with the vertices being web pages and the edges being links between pages.

Electrical engineers and computer electronic engineers employ graph theory in the design of integrated circuits. Complex layered microcircuits can be represented as nodes interconnected by lines or arcs. The use of graph theory helps engineers optimize the density of components and minimize the connections, which optimizes processing speed and electrical efficiency.

Learning Objectives

After this activity, students should be able to:

  • Apply graph theory to dramatic works of literature.
  • Use Microsoft Excel and Cytoscape to develop graphs of dramatic works of literature.
  • Analyze graphs to determine the importance of characters and the quality (subtlety) of communication between characters of dramatic works of literature.
  • Create a social graph for a dramatic text.
  • Derive meaning from the graphs they have created and craft an essay explaining the results.

More Curriculum Like This

Graph Theory in Drama

Students use graph theory to create social graphs for their own social networks and apply what learn to create a graph representing the social dynamics found in a dramatic text.

High School Lesson
Graphing Your Social Network

Students analyze their social networks using graph theory. They gather data on their own social relationships, either from Facebook interactions or the interactions they have throughout the course of a day, recording it in Microsoft Excel and using Cytoscape (a free, downloadable application) to gen...

High School Activity
Making the Connection

Students learn and apply concepts and methods of graph theory to analyze data for different relationships such as friendships and physical proximity. They are asked about relationships between people and how those relationships can be illustrated.

High School Lesson
Complex Networks and Graphs

Students learn about complex networks and how to represent them using graphs. They also learn that graph theory is a useful mathematical tool for studying complex networks in diverse applications of science and engineering, such as neural networks in the brain, biochemical reaction networks in cells...

High School Lesson

Educational Standards

Each TeachEngineering lesson or activity is correlated to one or more K-12 science, technology, engineering or math (STEM) educational standards.

All 100,000+ K-12 STEM standards covered in TeachEngineering are collected, maintained and packaged by the Achievement Standards Network (ASN), a project of D2L (www.achievementstandards.org).

In the ASN, standards are hierarchically structured: first by source; e.g., by state; within source by type; e.g., science or mathematics; within type by subtype, then by grade, etc.

  • Design a solution to a complex real-world problem by breaking it down into smaller, more manageable problems that can be solved through engineering. (Grades 9 - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Synthesize data, analyze trends, and draw conclusions regarding the effect of technology on the individual, society, and environment. (Grades 9 - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • There are many ways to communicate information, such as graphic and electronic means. (Grades 9 - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Communicate the problem, process, and solution (Grades 9 - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Use tools and technology to make detailed qualitative and quantitative observations (Grades 9 - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Analyze and interpret data, synthesize ideas, formulate and evaluate models, and clarify concepts and explanations (Grades 9 - 12) Details... View more aligned curriculum... Do you agree with this alignment?
Suggest an alignment not listed above

Materials List

Each group needs:


In this activity, you will analyze the interactions between characters in a dramatic work using graph theory. Who else uses graph theory?

Software engineers use graph theory to analyze your (and everyone else's) relationships on Facebook. By using graph theory, software engineers can predict who will be interested in the things you are interested in and as a result, target ads to potentially interested parties. This is how the value of Facebook is created. It provides the ability to market products to the people most likely to buy them.

Other engineers use graph theory to represent many different systems including applications in chemical, civil, electrical and mechanical engineering. Graph theory can also be applied to problems in engineering design and analysis. For instance, when designing a solution to a problem, the interactions between different components must be understood. A directed graph (graph theory) is a visual way to understand complex interactions.

In electrical engineering, graph theory is applied in communication networks and coding theory. Computer and software engineers apply graph theory as algorithms and computations. Software engineers further apply graph theory in object-oriented programming with the analysis, design and implementation of systems employing classes as modules. The study of graph properties (graph theory) can be valuable in many ways for understanding the characteristics of the underlying software systems.

Your experiences in this activity will enable you to see a book or play that you are reading in a different way. You will more clearly see the relationships between characters, with the most important characters being represented by larger nodes, visually rather than just by discussing the relationships verbally. To draw and analyze your network, you will use Microsoft Excel and Cytoscape software applications.


betweenness: Betweenness is a centrality measure of a node (vertex) within a graph. It measures the number of times a node connects two other nodes by the shortest path. It is a measure of importance for nodes in the graph. The higher the betweenness centrality, the more important the node; in a social network, the more important the "friend."

child vertex: Nodes in a graph that are connected to a given node.

Cytoscape: An open source bioinformatics software application for visualizing interactions between nodes in a network. See www.cytoscape.org.

degree of interaction: The number of edges connected to a node, with loops (interactions with itself) counted twice.

edge: A connection between nodes.

graph theory: The study of mathematical structures that model relationships between objects from a collection.

node/vertex: The fundamental unit of which graphs are formed.

sibling vertex: Nodes in a graph that are not directly connected to a given node. Sibling vertices are both children to the same parent.



Work through the activity before conducting it with students so as to understand the process and how Cytoscape works. To do this, follow the detailed instructions in the Dramatic Networks Activity Instructions. It is recommended that you conduct the social networks activity (Graphing Your Social Network) first and then the dramatic networks activity (this document), although the order is not that critical.

In this activity, students explore an application of graph theory by mapping the networks that they discover by reading drama texts. Greek drama and Shakespeare have both been examined using this activity, but any play lends itself to this activity. See Example Dramatic Network Graphs for example completed graphs from dialog in the dramatic works of Macbeth, Romeo and Juliet and Julius Caesar (also see Figure 2).

The overall activity goal is for students to visually identify relationships among the characters in dramatic works. This activity is a good experience for all students, especially visual learners, because it enables them to experience a dramatic work in an entirely different way. The full procedure for the activity is explained in the Dramatic Networks Activity Instructions. Students perform two main steps: 1) data collection and 2) data application.

During data collection, students track and record interactions between characters in a play. The challenge for students is to interpret whom a character is talking to in any given line. This helps students take on the role of a director of drama rather than a general reader. Students capture the results of the interactions into an Excel spreadsheet, essentially documenting a network.

In the data application step, students use the open source program Cytoscape to examine the networks they have documented. The Cytoscape application generates a graph of the character relationships, indicating the more important nodes in different sizes and colors than less-important nodes. These graphs are visual representations that show the importance of the characters in the dramatic works.

Before the Activity

  • Install the Microsoft and Cytoscape software on student computers. The free, open-source application Cytoscape is available at http://www.cytoscape.org/. Click "Download Cytoscape now" and follow the instructions to download.
  • Make copies of the Dramatic Networks Activity Instructions and Dramatic Networks Assessment, one each per student.
  • Students collect data on their own plays, but can share a computer in small groups, helping each other generate the Cytoscape graphs or taking turns.

With the Students—Data Collection

  1. Hand out the instruction sheets and give students some time to read through them and ask questions.
  2. Select a section of the literature for students to use for data collection or allow students to select their own. Depending on the length of the dramatic work, this may be the entire text or a section of a chosen length.
  3. Students analyze the text and create an Excel spreadsheet that documents all interactions between characters. Direct students to the instruction sheet for examples to help guide them in this process.
  4. Remind students that not all interactions are between just two characters. Sometimes they must decide if a character is speaking to one other character or a group of characters. If a character is speaking to a group and only one character responds, students are to only record 1 interaction between the first character and the group and 2 between the character and the second character who responds.

With the Students—Data Application

Direct students to refer to the instructions as they use the Cytoscape open source application to look closer at the networks they have created.

A right-pointing arrow points to a black and gray circular icon logo with the letter C in its center.

  1. Open Cytoscape. The icon looks like this:
  2. Click File > Import > Network from table (Text/MS Excel)
  3. Click on the Select File(s) button > select the Excel file you created from where you saved it on the computer.
  4. Select the interaction relationship.
  • Set Source Interaction to the column containing the first character.
  • Set Interaction Type to the column containing the number of interactions between character #1 and character #2.
  • Set Target Interaction to the column containing character #2.
    The image shows a graph of a network composed of 14 identical nodes (dots of the same color and size). Each node is labeled with a character name, such as Medea, Jason, Nurse or chorus. The nodes are arranged in a matrix with three nodes in four rows, and two nodes in the fifth row. Various edges (blue lines) are drawn between the nodes, corresponding to the interactions between the nodes (representing play characters).
    Figure 1. Rough version of a network graph created by Cytoscape of characters in "Medea."
    Copyright © 2012 Ramsey Young, University of Nebraska-Omaha
  1. Click Import and Cytoscape renders a rough version of the network, similar to Figure 1.
  2. In order to make the data useful, click on the Plugins menu at the top of the page > select Network Analysis > click on Analyze Network.
  3. Select the Treat Network as Undirected bubble > click OK.
  4. Select Visualize Parameters, which alters the nodes and connections.
  5. Set the Map node size to "degree." This represents the characters that do the most communicating as larger nodes.
  6. Set the Map node color to "BetweennessCentrality." This changes to warmer colors the characters (nodes) that do the most communicating with great numbers of other characters.
  7. Set the layout: Click the Layouts menu > select Cytoscape Layouts > select the Attribute Circle Layout option > set it to "degree." This generates a final product—a visual representation of the relationships among the characters of the play (see the Figure 2 example).
  8. As necessary, use your mouse to spread out the nodes so that they do not block each other.
    A graphic shows a circular arrangement of ~40 dots (nodes, representing play characters) of different colors and sizes, each with a first name identifier, placed in order from most important to least important (largest to smallest dots), in a clockwise direction. The nodes are linked by various lines (edges). The node size and color indicate a character's importance, based on his/her number of interactions with other characters. For example, the node for Brutus is large and red; the node for Soldier 2 is small and green (a less-important character). This is not a connected graph, as some smaller interactions exist (off to the side) that are not part of the larger circular graph.
    Figure 2. Example dramatic network graph for "Julius Caesar," generated using Cytoscape.
    Copyright © 2012 Ramsey Young, University of Nebraska-Omaha
  9. Lead a class discussion to share and compare the resulting Cytoscape social graphs of dramatic texts: Now you have a visual representation of the character relationships in a dramatic work of literature. (Example discussion questions follow.) What does the visual depiction of the story tell us about the inner workings of the dramatic work? What do you observe in this visualization? Which characters have the most interactions, the most communication with other characters? Is this what you expected? Any surprises? What does the graph tell you about the importance of the various characters and the quality of communication between characters? Which characters might have the greatest influence with other people? Looking at the degree of interactions and betweenness shown by the graphs, what else do you notice about the relationships?
  10. Conclude by handing out the assessment sheets for a summary writing assignment, as described in the Assessment section.



Pre-Activity Assessment

Questions: Ask students the following questions to assess their base knowledge and prepare them for the activity:

  • How does graph theory apply to engineering? (Example answers: Engineers use graph theory in many ways to represent complex systems. Networks and circuits are represented by electrical engineers using graphs. Engineers employ graph theory to help design solutions using the design process.)
  • Can you think of any situations that can be represented using graph theory? (Example answer: A family tree could be represented using a directed graph. The nodes are the people and the edges are the family relationships.)
  • Do you think you can apply an engineering/mathematical concept like graph theory to drama? (Example answer: Yes. A directed graph can be used to represent character interactions.)

Activity Embedded Assessment

  • Observations and Discussion: While students are gathering and analyzing data, observe their work and use of the software to make sure they understand what they are doing and are moving forward. Lead a concluding discussion to further assess their comprehension.

Post-Activity Assessment

Essays: At activity end, assign students to complete a performance assessment, as provided in the Dramatic Networks Assessment and below.

Pick a dramatic text, chart the relationships in the text and apply graph theory to that text using the Cytoscape software. As you interpret your findings, answer the following questions.

  • What has this graph taught you about the different characters' roles in the play?
  • Who are the most socially crucial characters in the play? Did this coincide with your pre reading expectations?
  • What do the degree and betweeness centrality statistics tell you about how characters should be represented in a play? Use specific examples.

As a summation of the assignment, write an essay detailing your findings. Essay requirements: 2 pages double spaced with 0 set for before and after line spacing, Times New Roman font size 12, margins set to the Word default setting.


Ramsey Young, Brian Sandall


© 2013 by Regents of the University of Colorado; original © 2013 Board of Regents, University of Nebraska

Supporting Program

IMPART RET Program, College of Information Science & Technology, University of Nebraska-Omaha


The contents of this digital library curriculum were developed as a part of the RET in Engineering and Computer Science Site on Infusing Mobile Platform Applied Research into Teaching (IMPART) Program at the University of Nebraska-Omaha under National Science Foundation RET grant number CNS 1201136. However, these contents do not necessarily represent the policies of the National Science Foundation, and you should not assume endorsement by the federal government.

Last modified: May 10, 2017