Skip to content

Commit

Permalink
actualize readme and travis config
Browse files Browse the repository at this point in the history
  • Loading branch information
ievgrafov committed Feb 23, 2016
1 parent bba9f93 commit 0b5e6eb
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 36 deletions.
13 changes: 8 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
notifications:
email: false
language: ruby
sudo: required
rvm:
- ruby-2.0
- ruby-2.1.5
- ruby-2.2.2
- jruby-9.0.0.0.pre2
- ruby-2.0.0-p648
- ruby-2.1.8
- ruby-2.2.4
- ruby-2.3.0-preview2
- jruby-head
env:
- JRUBY_OPTS="-Xcli.debug=true --debug"
addons:
code_climate:
repo_token: bbd2a5e077e4b62bd8ba21a74a2ba901defc43506812f6192efc6b2a25c20d49
repo_token: 60d9731d654527cb53aabc7db15bcde87d701ddb6b1cba8fc0da6aba16d00bb1
before_install:
- sudo add-apt-repository "deb http://cz.archive.ubuntu.com/ubuntu vivid main universe"
- sudo apt-get update -q
- sudo rm -rf /etc/dpkg/dpkg.cfg.d/multiarch
- sudo apt-get install gnuplot5
- gem update bundler
- bundle install
install:
- bundle exec rake install
Expand Down
62 changes: 31 additions & 31 deletions README.rdoc
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,16 @@ This software has been developed as a product in Google Summer of Code 2015 (GSo
{<img src="https://gemnasium.com/dilcom/gnuplotrb.svg" alt="Dependency Status" />}[https://gemnasium.com/dilcom/gnuplotrb]

{<img src="https://travis-ci.org/SciRuby/gnuplotrb.svg" alt="Build Status" />}[https://travis-ci.org/SciRuby/gnuplotrb]
{<img src="https://codeclimate.com/github/dilcom/gnuplotrb/badges/gpa.svg" alt="Code quality" />}[https://codeclimate.com/github/dilcom/gnuplotrb]
{<img src="https://codeclimate.com/github/dilcom/gnuplotrb/badges/coverage.svg" alt="Test coverage" />}[https://codeclimate.com/github/dilcom/gnuplotrb]
{<img src="https://codeclimate.com/github/sciruby/gnuplotrb/badges/gpa.svg" alt="Code quality" />}[https://codeclimate.com/github/sciruby/gnuplotrb]
{<img src="https://codeclimate.com/github/sciruby/gnuplotrb/badges/coverage.svg" alt="Test coverage" />}[https://codeclimate.com/github/sciruby/gnuplotrb]

== Table of contents
* {Installation}[https://github.com/dilcom/gnuplotrb#installation]
* {Getting started}[https://github.com/dilcom/gnuplotrb#getting-started]
* {Plottable classes}[https://github.com/dilcom/gnuplotrb#plottable-classes]
* {Notebooks}[https://github.com/dilcom/gnuplotrb#notebooks]
* {Plain examples}[https://github.com/dilcom/gnuplotrb#plain-examples]
* {Contributing}[https://github.com/dilcom/gnuplotrb#contributing]
* {Installation}[https://github.com/sciruby/gnuplotrb#installation]
* {Getting started}[https://github.com/sciruby/gnuplotrb#getting-started]
* {Plottable classes}[https://github.com/sciruby/gnuplotrb#plottable-classes]
* {Notebooks}[https://github.com/sciruby/gnuplotrb#notebooks]
* {Plain examples}[https://github.com/sciruby/gnuplotrb#plain-examples]
* {Contributing}[https://github.com/sciruby/gnuplotrb#contributing]

== Installation
=== Dependencies
Expand All @@ -34,7 +34,7 @@ This software has been developed as a product in Google Summer of Code 2015 (GSo
* run
bundle install
==== Install latest version from source (may be unstable)
git clone https://github.com/dilcom/gnuplotrb.git
git clone https://github.com/sciruby/gnuplotrb.git
cd gnuplotrb
bundle install
rake install
Expand All @@ -45,10 +45,10 @@ GnuplotRB gem is based on {Gnuplot}[http://www.gnuplot.info/] so I would recomme

=== Plottable classes

Each of plottable classes may be outputted to image file using ```#to_png```, ```#to_svg```, ```#to_gif``` and so on methods. You can read more about it in {GnuplotRB doc}[https://rubygems.org/gems/gnuplotrb] related to Plottable module or see examples in {beginners notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/basic_usage.ipynb].
Each of plottable classes may be outputted to image file using ```#to_png```, ```#to_svg```, ```#to_gif``` and so on methods. You can read more about it in {GnuplotRB doc}[https://rubygems.org/gems/gnuplotrb] related to Plottable module or see examples in {beginners notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/basic_usage.ipynb].

==== Dataset
Single dataset may be created with math formula ('sin(x)') or some data. If your data is stored in a file you can just pass a filename (e.g. 'gnuplotrb.data'). Dataset may also be constructed out of data contained in Ruby classes (Array, Daru containers), see {example notebooks}[https://github.com/dilcom/gnuplotrb#possible-datasources].
Single dataset may be created with math formula ('sin(x)') or some data. If your data is stored in a file you can just pass a filename (e.g. 'gnuplotrb.data'). Dataset may also be constructed out of data contained in Ruby classes (Array, Daru containers), see {example notebooks}[https://github.com/sciruby/gnuplotrb#possible-datasources].

Dataset have several possible options which are explained in {gnuplot doc}[http://www.gnuplot.info/docs_5.0/gnuplot.pdf] (pp. 80-102). Options are passed to Dataset.new as hash and are tranlated into gnuplot format before plotting:
Dataset.new(data, with: 'lines', using: '1:2')
Expand All @@ -74,9 +74,9 @@ Examples of option translation (nested containers allowed):
# =>
some_object.to_s

Once Dataset created, it may be updated with new data or options. Methods related to updating are explained in {a notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/updating_data.ipynb].
Once Dataset created, it may be updated with new data or options. Methods related to updating are explained in {a notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/updating_data.ipynb].

Just as other Plottable object Dataset has several plotting methods which are desribed in {beginners notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/basic_usage.ipynb].
Just as other Plottable object Dataset has several plotting methods which are desribed in {beginners notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/basic_usage.ipynb].

==== Plot
Plot is a container for several datasets and layout options:
Expand All @@ -94,11 +94,11 @@ Almost the same as Plot but for 3-D plots. See Plot section.
Container for several Plot or Splot objects, each of them is plotted in its own xy(z) space. So Multiplot offers single layout (image file\window) for several plots. It's grid is tuned by :layout option, and you can also set layout's title:
Multiplot.new(plot1, plot2, splot1, layout: [3, 1], title: 'Three plots on a layout')

Updating methods for Multiplot are almost the same as Plot's and Dataset's and are covered in Multiplot's docs and {multiplot notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/multiplot_layout.ipynb]. See examples there.
Updating methods for Multiplot are almost the same as Plot's and Dataset's and are covered in Multiplot's docs and {multiplot notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/multiplot_layout.ipynb]. See examples there.

==== Animation

Animation is a container for several Plot, Splot or Multiplot objects. Each of contained items is considered as frame in gif animation which is creating by ```#plot``` call. Animation's frames and options may be modifyed or updated just as other classes above. Animation does not support methods like ```#to_png``` and may be plotted only with ```#plot``` method. Please see {related notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/animated_plots.ipynb] and docs at RubyDoc for examples.
Animation is a container for several Plot, Splot or Multiplot objects. Each of contained items is considered as frame in gif animation which is creating by ```#plot``` call. Animation's frames and options may be modifyed or updated just as other classes above. Animation does not support methods like ```#to_png``` and may be plotted only with ```#plot``` method. Please see {related notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/animated_plots.ipynb] and docs at RubyDoc for examples.

=== Notebooks

Expand All @@ -109,54 +109,54 @@ To use GnuplotRB gem with iRuby you need to install them both.

* iRuby installation is covered in its {README}[https://github.com/SciRuby/iruby/blob/master/README.md].
It also covers installation of iPython and other dependecies.
* GnuplotRB gem installation covered in {README}[https://github.com/dilcom/gnuplotrb#installation] too.
* GnuplotRB gem installation covered in {README}[https://github.com/sciruby/gnuplotrb#installation] too.

==== Embedding plots into iRuby
Using GnuplotRB inside iRuby notebooks is covered in:

* {Basic usage notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/basic_usage.ipynb].
* {Basic usage notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/basic_usage.ipynb].

==== 2D and 3D plots
GnuplotRB is capable to plot vast range of plots from histograms to 3D heatmaps. Gem's repository contains examples of several plot types:

* {Heatmaps}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/heatmaps.ipynb]
* {Vector field}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/vector_field.ipynb] (Thanks, {Alexej}[https://github.com/agisga])
* {Math equations}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/math_plots.ipynb]
* {3D visualizations}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/3d_plot.ipynb]
* {Histogram}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/histogram.ipynb]
* {Heatmaps}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/heatmaps.ipynb]
* {Vector field}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/vector_field.ipynb] (Thanks, {Alexej}[https://github.com/agisga])
* {Math equations}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/math_plots.ipynb]
* {3D visualizations}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/3d_plot.ipynb]
* {Histogram}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/histogram.ipynb]

==== Possible datasources
GnuplotRB may take data in Ruby container or in a file. Supported containers for now are Arrays, Daru::Vector and Daru::DataFrame.
When data given in file, GnuplotRB pass filename to Gnuplot *without* reading the file into memory.

Examples of using different datasources:

* {Data given in file or Ruby Array}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/points_from_different_sources.ipynb]
* {Data given in Daru containers}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/plotting_from_daru.ipynb]
* {Data given in Daru containers (with timeseries)}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/time_series_from_daru.ipynb]
* {Updating plots with new data}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/updating_data.ipynb]
* {Data given in file or Ruby Array}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/points_from_different_sources.ipynb]
* {Data given in Daru containers}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/plotting_from_daru.ipynb]
* {Data given in Daru containers (with timeseries)}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/time_series_from_daru.ipynb]
* {Updating plots with new data}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/updating_data.ipynb]

==== Multiplot
You can not only plot several datasets in single coordinate system but place several coordinate systems on a canvas.

* {Multiplot example notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/multiplot_layout.ipynb].
* {Multiplot example notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/multiplot_layout.ipynb].

==== Animation
It's possible to use several plots (Plot, Splot or Multiplot objects) to create gif animation.

* {Animation example notebook}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/animated_plots.ipynb].
* {Animation example notebook}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/animated_plots.ipynb].

==== Fitting data with formula
GnuplotRB also may be used to fit some data with given math formula.

* {Fitting data}[http://nbviewer.ipython.org/github/dilcom/gnuplotrb/blob/master/notebooks/fitting_data.ipynb]
* {Fitting data}[http://nbviewer.ipython.org/github/sciruby/gnuplotrb/blob/master/notebooks/fitting_data.ipynb]

=== Plain examples
You may find several examples in {examples directory}[https://github.com/dilcom/gnuplotrb/tree/master/examples].
You may find several examples in {examples directory}[https://github.com/sciruby/gnuplotrb/tree/master/examples].

== Contributing

1. {Fork repository}[https://github.com/dilcom/gnuplotrb/fork]
1. {Fork repository}[https://github.com/sciruby/gnuplotrb/fork]
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
Expand Down

0 comments on commit 0b5e6eb

Please sign in to comment.