Over the past few weeks, you have learned and employed a variety of types, tools, and techniques. For example, you have written programs that analyze texts to determine characteristics of those texts (often using regular expressions) and you have written programs that make images. You have also learned recursion, testing, documentation, style, and more.
In this project, you will employ these techniques to develop something others might use to quickly understand some characterisics of a text.
Although the tools we have created to analyze texts produce results, the results are only in the form of numbers and words. However, some people seem to better undestand information provided in visual form. (Some people find it more difficult to understand information provided in visual form; for example, those with visual impairments will be better off with textual or numeric summaries. Ideally, we would support multiple kinds of users.)
Write a program that can read an any text file (e.g., one of the texts from Project Gutenberg) and produces a useful visualization of some charactersitics of that text. You may choose what you want to visualize and how you want to visualize it.
Your goal is that the visualization provide useful information about texts in a way that others might easily understand. And, as noted, it should work with any reasonable text file.
Once you’ve written the program, use it to comparatively “analyze” two texts of your choice.
Please spend between three and four hours on this project.
You must employ the following tools in your project in non-trivial ways.
As always, you should document your procedures and follow our conventions for style.
text-visualization.rkt(save-image img "analysis.png").We may modify this rubric slightly.
[ ] Includes `text-visualization.rkt`.
[ ] Includes `analysis.png`.
[ ] Includes necessary text files.
[ ] Runs when **Run** is clicked.
[ ] Raacket file includes header.
[ ] At least one non-trivial regular expression.
[ ] Reads from a file and computes some characteristic of the text in that file.
[ ] Creates an image that varies depending on that characteristic.
[ ] Includes tests of some component of the project.
[ ] All procedures are documented.
[ ] Reasonable style.
[ ] Works reasonably with most text files, not just those chosen by the author.
[ ] Particularly creative visualization.
[ ] Novel (or moderately novel) analysis.
[ ] Excellent style.