Skip to content

Add-on to the Orange3 data mining toolkit with text processing widgets from the project Navigating Stories

License

Notifications You must be signed in to change notification settings

navigating-stories/orange-story-navigator

Repository files navigation

Unit tests PyPI version Read the Docs DOI

setting_icon

Orange3 Story Navigator

Orange3-Story-Navigator is an add-on for the Orange data mining software package. It provides quantitative textual story analysis features based on principles in narrative psychology. The aim of the Story Navigator is to support human analysis of stories represented in digital texts, with a focus on identifying and describing the following components of the narrative (see [1], [2] and [3] for definitions and theory):

  1. Setting
  2. Main agent
  3. Means
  4. Acts and events
  5. Purpose
  6. Breach

[1] Burke, K. (1969). The grammar of motives. Prentice Hall, New York. Originally published in 1945.

[2] M. Murray and A. Sools, P. Rohleder, A.C. Lyons (Eds.), Qualitative research in clinical and health psychology, Palgrave MacMillan, Houndmills Basingstoke (2015), pp. 133-154

[3] Andrade, S. B., & Andersen, D. (2020). Digital story grammar: a quantitative methodology for narrative analysis. International Journal of Social Research Methodology, 23(4), 405-421.

Installation

This section is for those who want to install the Story Navigator purely for analysing stories with no plan to develop or extend the add-on.

Method 1

Requirements:

  1. Orange3
  2. Orange3-text
  3. Orange3-network

Steps:

  1. First install Orange. Instructions are here
  2. Fire up Orange, navigate to the Orange add-on installer which is available in the Options -> Add-ons menu. Note: the add-on requires Orange3-text and Orange3-network so first install these libraries before installing storynavigator.
  3. Click on the Add more... button on the top right of the window
  4. Type in storynavigator in the textbox and click on the Add button
  5. Click on the OK button
  6. The storynavigator add-on should install and Orange may ask you to restart it to view the new add-ons. Click on the OK button to do so.

Method 2

Requirements: Python 3.9.12+

Step: pip install storynavigator

User documentation

Available here

Development

This section is for those who want to build the add-on from source and extend, customise, or fix bugs in it. Note: Mac M1 (Apple silicon) users may encounter problems with building storynavigator using certain Python 3.8.x or 3.9.x versions and / or actually building or running these specific Python versions at all on your Mac. If you encounter such issues, it is recommended to install Rosetta 2 and always run the terminal using Rosetta 2 (see how to do the latter here) for development tasks.

Requirements:

  1. A tool for checking out a Git repository
  2. Python 3.9.12+

Steps to build and test from source:

  1. Get a copy of the code

    git clone git@github.com:navigating-stories/orange-story-navigator.git

  2. Change into the orange-story-navigator/ directory

    cd orange-story-navigator

  3. Create and activate a new Python virtual environment using virtualenv

  4. Run the following command

    pip install -r requirements.txt

  5. If Step 4. completed with no errors, run this command

    pip install -e .

This command installs the widget and registers it with your Orange3 installation. If you encountered an error during Step 4, file an issue with the details and skip the remaining steps.

  1. Run orange-canvas or python -m Orange.canvas

The Orange3 application should shortly start up with a splash screen

Testing

Run tests with pytest.

For coverage:

coverage run -m pytest
coverage report
# or
coverage html

Collaborators

The Story Navigator is maintained by the Netherlands eScience Center in collaboration with the Faculty of Behavioural, Management and Social Sciences (BMS) at the University of Twente.