Ruby" ) |> Grant |> RubyKaigi |> Latest |> render Charty.new( "Visualizing your data in Ruby" ).Grant.RubyKaigi.Latest.render @284km (Kazuma Furuhashi) Speee Inc.
thin Ruby library that can use the GR framework as an independent backend. (2) Enable GR framework as backend from Charty (use SciRuby/rubyplot as the visualization layer) (3) Implements Collection Interface corresponding to Charty's Data Abstraction Layer. (4) Implement Daru Interface corresponding to Charty's Data Abstraction Layer. そして中間報告の時点で、以下 2 つの実装を余⼒があれば実施すると加えた (a) Support rubydown (https://github.com/sciruby-jp/rubydown) (b) Support ActiveRecord Interface
charty.scatter do iris.group_by(:label).groups.each do |label, index| records = iris.row[*index] series records[:petal_length].to_a, records[:petal_width].to_a, label: label[0] end xlabel "Petal Length" ylabel "Petal Width" end scatter.render('pyplot.png')
difference is only one line. require 'charty' charty = Charty::Plotter.new(:gruff) scatter = charty.scatter do iris.group_by(:label).groups.each do |label, index| records = iris.row[*index] series records[:petal_length].to_a, records[:petal_width].to_a, label: label[0] end xlabel "Petal Length" ylabel "Petal Width" end scatter.render('gruff.png')
will show a demo) daru numo/narray nmatrix ActiveRecord Array Hash --- 最終報告時点 --- benchmark_driver (Charty Adapter) DataSets Thus, Charty can respond to various data structures. That's because Charty::Table is abstracted.
Abstraction Layer Plotting Abstraction Layer. Thus we can use the data structures we need We can use output libraries we want to use. We can use them in any combination we need with almost no code rewrite. こちらが提出した最終報告書
by a pull request that "I'd like to use Charty if this library is supported by the backend" If there is a real User and Real-world use case exists, it depends on the priority with other work, but consider support for a new backend
Layer to support various data structures. benchmark_driver plugin to render with Charty benchmark-driver/benchmark_driver-output-charty This combination is also possible. Because Charty has Data Abstraction Layer to support various data structures.
Charty in our production environment of Web Application, which is our job. This Web Application is a common Rails Application. At that time, we were asking for Charty to output json, not image file. Here is an example using plotly.js (I will show a demo)
red-arrow for Data Abstraction Layer because Apache Arrow is great. Release stable version Add supported dataset (red-datasets) (e.g. titanic) 発表を聞いた⼈が、より興味を持ちやすくなるようなデータで説明できるように 開発者を増やしたいから Support Unicode Plot Sixel support
mentor Drawing a Charty concept @kou Various implementation advice Red Data Tools org and all members All your support Speee, Inc Gave me a lot of time and support