Giter Site home page Giter Site logo

horizontal-history's People

Contributors

rickpock avatar rpocklington avatar

Watchers

 avatar

Forkers

rpocklington

horizontal-history's Issues

Separate Data Files

Including the data files as part of the repo has some rather unfortunate consequences.

The purpose of the project is to visualize history, but not create any commentary. Simply choosing which historical figures qualify as "significant enough" to be included in the data set is commenting. Even further, the categorization of historical figures requires defining what is most significant about them. For example, is U.S. President and business mogul Donald Trump a politician or a businessman?

The data model should be entirely abstracted away from the visualization.

Support .png and .svg

Output format is specified with an argument beginning with a hyphen -. Valid options are:

  • -svg (default)
  • -png
    • Generated using RMagick and ImageMagick. ImageMagick must be installed for this option to work.

Slightly thicker border

SVG draws half the border inside the shape region, and half outside. This makes the outer border of the image half thickness than all shape borders on the interior of the image. In some places, this looks a little awkward. The overall image should be increased in size by 1/2 the border thickness on each size.

Use Gemfile

Gem dependencies should be specified in a Gemfile and Gemfile.lock.

Rewrite in Javascript

It would be ideal to build a web application around this project. If it's rewritten in javascript, the entire application can run client-side. Also, this would reduce dependencies, since javascript is supported in any browser.

Custom categories / background colors

Currently (v2.0), each historical figure is colored based on their pre-defined "category".

The user should have the option to color based on other criteria.

For example, they may want to show political leaders throughout history, colored by region of the world (Red for Americas, Blue for Europe, etc). If colored by category, they'd all be the same color (for political).

Fit multiple figures in a column

If the historical figure can be drawn on the chart in an existing column without overlapping any other figures, then it will be drawn in the left-most column that can fit it. Otherwise, it will be drawn in a new column to the right of the existing historical figures.

From the spec

Unit Tests

The project needs unit tests on each of the .rb files.

Update Markdown Files

GitHub recently changed their engine for rendering Markdown text, breaking the Markdown files in this repo (at least for viewing them in github).

Generalize Drawing

  • Refactor the drawing into a set of standard commands
  • Implement the drawing commands in "DrawingProvider" classes
  • Create a new DrawingProvider for ImageMagick (replicate current functionality)
  • Create a new DrawingProvider for svg files (generating xml directly)
  • Create a new DrawingProvider for web (dynamically generating html DOM elements)
  • Remove dependency on ImageMagick (unless using the ImageMagick DrawingProvider)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.