GSoC 2019 Project [ Rubyplot ] discussion

[RUBYPLOT-GSOC][DAILY][6 August] iruby

Planned Progress
Integrating iruby with Rubyplot

Progress
Tried to set up Rubyplot on my laptop but rmagick installation is giving some errors

Problems
I will find a solution for the errors and will continue the work

  • rmagick installation was having errors
  • Ruby was not working correctly due to presence of multiple versions

Plan

  • Set up Rubyplot
  • Work as planned

[RUBYPLOT-GSOC][DAILY][7 August] iruby

Planned Progress
Integrating iruby with Rubyplot

Progress

  • Completed setting up Rubyplot
  • Installed and tested out iruby notebooks
  • added a new method print_on_device to avoid code duplication in write and show

Problems

  • To include Rubyplot, should it be installed as a gem?

Plan

  • integrate iruby with rubyplot

[RUBYPLOT-GSOC][DAILY][8 August] iruby

Planned Progress
Integrating iruby with Rubyplot

Progress

  • Had the weekly meeting with Sameer.
  • Looked into building Rubyplot as gem, built it
  • Tested Rubyplot in irb and iruby notebook

Problems

  • During building the gem, there were some warnings
  • Rubyplot.set_backend is needed to be called to set the backend i.e. no default? (maybe because of next problem)
  • While setting GR backend using the command above there is an error NameError (uninitialized constant Rubyplot::Backend::GRWrapper)

Meeting details

  • Updated Sameer about the progress
  • Discussed things to be completed before final evaluation i.e. iruby integration, tutorials and ticks
  • Writing a blog on iruby integration while trying to generalize the method for integration for future users.
  • Useful links:
  1. https://github.com/mrkn/matplotlib.rb/blob/master/lib/matplotlib/iruby.rb
  2. https://github.com/domitry/nyaplot
  3. https://github.com/domitry/nyaplot/blob/master/lib/nyaplot/templates/iruby.erb
  4. https://github.com/domitry/nyaplot/blob/master/lib/nyaplot/plot.rb#L83

Plans

  • Look into the error for GR
  • Look into integration of show function with iruby notebook

[RUBYPLOT-GSOC][DAILY][9 August] iruby

Planned Progress
Integrating iruby with Rubyplot

Progress

  • Looked into the nyaplot code

Problems

Plans

  • Complete the iruby integration over the weekend

[RUBYPLOT-GSOC][DAILY][10-11 August] iruby

Planned Progress
Integrating iruby with Rubyplot

Progress

  • Looked into nyaplot code

Problems

  • Nyaplot uses image embedded in HMTL code to display on iruby notebook, it only uses show function to show images in iruby notebook and not independently i.e. no pop-up windows
  • To make the iruby integration consistent across backends and easily scalable, the function should not depend on the backends i.e. no specific properties of Magick or GR should be used
  • I think the best way to go for this is to store a temporary image using write function and then load the image and display it in iruby notebook

Plans

  • Complete the integration

[RUBYPLOT-GSOC][DAILY][12,13,14 August] iruby

Planned Progress
Integrating iruby with Rubyplot

Progress

  • Integrated Rubyplot with iruby notebook for Magick backend
  • Corrected the bug for changing the properties of canvas after first declaration

Examples

  1. Inline show (called Rubyplot.inline)

  2. Stoped inline (called Rubyplot.stop_inline)
    Screenshot%20from%202019-08-15%2006-25-32

Problems

  • GR backend is not yet integrated as set_backend function gives an error
  • To integrate GR backend and other backends in future, the approach mentioned in the previous update can be used

Plans

  • Complete the blogs
  • Implement ticks

[RUBYPLOT-GSOC][DAILY][15 August] tutorial

Planned Progress
Creating a tutorial for Rubyplot in iruby notebook

Progress

  • Had the weekly meeting with Sameer
  • Started the tutorial [link]

Meeting details
To-do before the start of final evaluations-

  1. Create the tutorial
  2. Write documentation
  3. Implement ticks
  4. Complete the multi-plots blog and write a blog for iruby integration

To-do during final evaluations -

  1. Write a final blog with summary of GSoC, all blog links and all code, repo and PR links
  2. Do the final submission

Problems

Plans

  • Complete the tutorial
  • Implement ticks
  • Write documentation

[RUBYPLOT-GSOC][DAILY][16, 17, 18 August] tutorial

Planned Progress
Creating a tutorial for Rubyplot in iruby notebook

Progress

  • Updated the tutorial
  • Implemented major ticks

Problems

Plans

  • Complete the tutorial
  • Implement minor ticks
  • Write documentation
  • Complete blogs

The Figures with ticks and the tutorial can be seen here [Link]

The tutorial is hosted on nbviewer as Github might not render the large tutorial

[RUBYPLOT-GSOC][DAILY][19 August] tutorial

Planned Progress
Final submission

Progress

  • Implemented minor ticks

Problems

Plan
20 Aug - Improve tick labels, complete tutorial, complete iruby blog
21 Aug - Add ticks to iruby blog, complete multiplots blog
22 Aug - Final blog and submission
23 Aug onwards - Documentation, look into gem installation with GR backend

[RUBYPLOT-GSOC][DAILY][20 August] tutorial

Planned Progress
Final submission

Progress

  • Improved line plot, area plot and histogram
  • Improved tick labels
  • Improved the tutorial

Problems

Plan

  • Same as above

[RUBYPLOT-GSOC][DAILY][21 August] tutorial

Planned Progress
Final submission

Progress

  • Removed line_opacity option from Line plot and plot function
  • Corrected line_color argument in Line plot
  • Completed the tutorial

Problems

Plans

  • Same as above

[RUBYPLOT-GSOC][DAILY][22 August] tutorial

Planned Progress
Final submission

Progress

Problems

Plan
23 August - Complete the blogs
24 August - Finish the final blog and final submission

The final blog link - https://alishdipani.github.io/gsoc2019/2019/08/22/Wrapping-up-GSoC-2019/