rails-data-explorer 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 111102a24d7fb013d746b9a0dba6df3f7a881c1d
4
- data.tar.gz: a2a99dd6d1b00c8f62143c725fdb7eb0bd6bb404
3
+ metadata.gz: 3c75cb60d7ecddbc2fb8e07eb44d25b959b20ba3
4
+ data.tar.gz: cfdfa4cfa4e253190a32a7ee35d13538158e1a93
5
5
  SHA512:
6
- metadata.gz: 75fd9d7a12c1e32bc06fad41a4e662165aed8909290bf5c7fd17270a9d4e7dd23d780c5611bf42bd835d0052648cf17e3aa6a07f70e0b899bcf58772b7a9ea3c
7
- data.tar.gz: c5c5236cb2fbcb441be1a4a449b405f02ec06741880bedeeb1cd5e9bdcb74fbdc774da84baaccf2a12b932ebbc1b272405f4bdec51203333e6f3d5d49285642c
6
+ metadata.gz: 1c030c17f16b5f3a421015a4efe29c3d314cbc087f9defe62d9460245fd19332051f754af3ccfea9dfcffb781110444bf5e104a183c8021dc7b4ab90cac235ad
7
+ data.tar.gz: de5468fd6bd0136f96ba11e7a03f7879cffbcad0b78d4c343cc7cca6b9227827623aa461366ebab7868e6e5ec52b076112c1b5d99ed8237874d893827583cc32
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ### 0.2.1
2
+
3
+ * Fixed a bug
4
+ * Updated documentation
5
+
1
6
  ## 0.2.0
2
7
 
3
8
  * Improvements to charts.
data/README.md CHANGED
@@ -1,16 +1,15 @@
1
- rails-data-explorer
2
- ===================
1
+ # rails-data-explorer
3
2
 
4
- rails-data-explorer is a Rails Engine plugin that makes it easy to explore the
3
+ Rails-data-explorer is a Rails Engine plugin that makes it easy to explore the
5
4
  data in your app using charts and statistics.
6
5
 
7
- Make sure to go to the thorough [documentation](http://rails-data-explorer.clearcove.ca)
8
- to find out more!
6
+ All you have to do is to throw your data in table form at rails-data-explorer.
7
+ Rails-data-explorer then analyzes your data and automatically renders suitable
8
+ charts and descriptive statistics for each column. It offers tools for uni-, bi-
9
+ and multi-variate analysis. It can even find correlations in your categorical data
10
+ using Pearson's Chi Squared test.
9
11
 
10
- ## IMPORTANT NOTE
11
-
12
- This gem is under active development and will see significant changes until it's
13
- officially released.
12
+ See below for a screenshot of what you get.
14
13
 
15
14
  ### Installation
16
15
 
@@ -21,38 +20,105 @@ or with bundler in your Gemfile:
21
20
  `gem 'rails-data-explorer'`
22
21
 
23
22
 
24
- ### Concepts
25
-
26
- * Exploration - top level container
27
- * DataSet - like a spreadsheet with one or more columns of data
28
- * DataSeries - like a column in a spreadsheet, with multiple rows of data
29
- * DataType - Each DataSeries contains data of a certain type.
30
- * Categorical
31
- * Quantitative
32
- * Integer
33
- * Decimal
34
- * Temporal
35
- * Geo
36
- * Chart -
23
+ ### Usage
24
+
25
+ Let's say you want to explore your app's `User` signup data. Create a route and action
26
+ named 'signups' in `app/controllers/users_controller.rb`:
27
+
28
+ ~~~ ruby
29
+ def signups
30
+ user_data = User.all.to_a
31
+ c_binner = RailsDataExplorer::Utils::DataBinner.new(
32
+ '0' => 0,
33
+ '1' => 1,
34
+ '2' => 2,
35
+ '3..10' => 10,
36
+ '11..100' => 100,
37
+ '101..1,000' => 1000,
38
+ '1,001..10,000' => 10000
39
+ )
40
+ @rails_data_explorer = RailsDataExplorer.new(
41
+ user_data,
42
+ [
43
+ {
44
+ name: "Session duration [Minutes]",
45
+ data_method: Proc.new { |row|
46
+ ((row.session_duration_minutes * 100).round)/100.0
47
+ },
48
+ },
49
+ {
50
+ name: "Country",
51
+ data_method: Proc.new { |row| row.country },
52
+ multivariate: ['All'],
53
+ },
54
+ {
55
+ name: "Sign in count",
56
+ data_method: Proc.new { |row| c_binner.bin(row.sign_in_count) },
57
+ },
58
+ {
59
+ name: "Language",
60
+ data_method: Proc.new { |row| row.language },
61
+ multivariate: ['All'],
62
+ },
63
+ {
64
+ name: "Plan",
65
+ data_method: Proc.new { |row| row.plan },
66
+ multivariate: ['All'],
67
+ },
68
+ {
69
+ name: "Sign up date",
70
+ data_method: Proc.new { |row| row.created_at },
71
+ },
72
+ {
73
+ name: "Sign up quarter",
74
+ data_method: Proc.new { |row|
75
+ year = row.created_at.year
76
+ quarter = (row.created_at.month / 3.0).ceil
77
+ "#{ year } / Q#{ quarter }"
78
+ },
79
+ },
80
+ ]
81
+ )
82
+ end
83
+ ~~~
84
+
85
+ Then create a view at `app/views/users/signups.html.erb`:
86
+
87
+ ~~~erb
88
+ <div class="rails-data-explorer">
89
+ <h1>User signup data</h1>
90
+ <%= @rails_data_explorer.render %>
91
+ </div>
92
+ ~~~
93
+
94
+ With just a few lines of code you get comprehensive statistics and charts for your data:
95
+
96
+ ***
97
+
98
+ ![Rails data exploration](https://github.com/jhund/rails-data-explorer/blob/master/doc/rails-data-explorer-screenshot.png)
99
+
100
+ ***
37
101
 
38
102
 
39
103
  ### Ways to shoot yourself in the foot
40
104
 
41
- * Loading too many DB rows at once: Remember that you are loading ActiveRecord
105
+ * **Loading too many DB rows at once**: Remember that you are loading ActiveRecord
42
106
  objects, and they can use a lot of ram. It's a cartesian product of number of
43
107
  rows times columns per record. As a rule of thumb, for a medium sized model with
44
108
  30 columns, you can load up to 10,000 rows.
45
- * Using expensive operations in the :data_method option for a given data series.
109
+ * **Using expensive operations in the `:data_method` option for a given data series**:
46
110
  As a rule of thumb, it should be ok to run simple methods that don't require
47
- DB access. Examples: `#.to_s`, `if` and `case`, and math operations.
48
- * Declaring too many charts: The charts rendered are the sum of the following:
111
+ DB access. Examples: `#.to_s`, `if` and `case`, and math operations should all
112
+ be fine.
113
+ * **Declaring too many charts**: The charts rendered are the sum of the following:
49
114
  * univariate: one or more charts for each data series
50
115
  * bivariate: the cartesian product of all data series in a bivariate group
51
116
  * multivariate: one or more charts for each multivariate group
52
117
  I have tested it with 70 charts on a single page. More are probably ok, I
53
118
  just haven't tested it.
54
- * Drowning in detail. rde makes it easy to generate a large number of charts.
55
- Make sure you don't miss the important data in the noise.
119
+ * **Drowning in detail**: rails-data-explorer makes it easy to generate a large
120
+ number of charts. Make sure you don't miss the important data in the noise.
121
+
56
122
 
57
123
  ### Dependencies
58
124
 
@@ -63,8 +129,6 @@ or with bundler in your Gemfile:
63
129
 
64
130
  ### Resources
65
131
 
66
- * [Documentation](http://rails-data-explorer.clearcove.ca)
67
- * [Live demo](http://rails-data-explorer-demo.herokuapp.com)
68
132
  * [Changelog](https://github.com/jhund/rails-data-explorer/blob/master/CHANGELOG.md)
69
133
  * [Source code (github)](https://github.com/jhund/rails-data-explorer)
70
134
  * [Issues](https://github.com/jhund/rails-data-explorer/issues)
@@ -78,4 +142,4 @@ or with bundler in your Gemfile:
78
142
 
79
143
  ### Copyright
80
144
 
81
- Copyright (c) 2014 Jo Hund. See [(MIT) LICENSE](https://github.com/jhund/rails-data-explorer/blob/master/MIT-LICENSE) for details.
145
+ Copyright (c) 2015 Jo Hund. See [(MIT) LICENSE](https://github.com/jhund/rails-data-explorer/blob/master/MIT-LICENSE) for details.
@@ -182,7 +182,7 @@ class RailsDataExplorer
182
182
  delta = @observed_vals[x_val][y_val] - @expected_vals[x_val][y_val]
183
183
  delta_factor = delta / @expected_vals[x_val][y_val].to_f
184
184
  @delta_attrs[x_val][y_val] = {
185
- :expected @expected_vals[x_val][y_val],
185
+ expected: @expected_vals[x_val][y_val],
186
186
  color: color_scale.compute(delta_factor),
187
187
  delta: delta,
188
188
  delta_factor: delta_factor,
@@ -3,12 +3,12 @@ $:.push File.expand_path('../lib', __FILE__)
3
3
 
4
4
  Gem::Specification.new do |gem|
5
5
  gem.name = 'rails-data-explorer'
6
- gem.version = '0.2.0'
6
+ gem.version = '0.2.1'
7
7
  gem.platform = Gem::Platform::RUBY
8
8
 
9
9
  gem.authors = ['Jo Hund']
10
10
  gem.email = 'jhund@clearcove.ca'
11
- gem.homepage = 'http://rails-data-explorer.clearcove.ca'
11
+ gem.homepage = 'https://github.com/jhund/rails-data-explorer'
12
12
  gem.licenses = ['MIT']
13
13
  gem.summary = 'A Rails engine plugin for exploring data in your app with charts and statistics.'
14
14
  gem.description = %(rails-data-explorer is a Rails Engine plugin that makes it easy to explore the data in your app using charts and statistics.)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-data-explorer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jo Hund
@@ -165,6 +165,7 @@ files:
165
165
  - Rakefile
166
166
  - doc/how_to/release.md
167
167
  - doc/how_to/trouble_when_packaging_assets.md
168
+ - doc/rails-data-explorer-screenshot.png
168
169
  - lib/rails-data-explorer-no-rails.rb
169
170
  - lib/rails-data-explorer.rb
170
171
  - lib/rails-data-explorer/action_view_extension.rb
@@ -233,7 +234,7 @@ files:
233
234
  - vendor/assets/stylesheets/sources/d3.parsets.css
234
235
  - vendor/assets/stylesheets/sources/nv.d3.css
235
236
  - vendor/assets/stylesheets/sources/rde-default-style.css
236
- homepage: http://rails-data-explorer.clearcove.ca
237
+ homepage: https://github.com/jhund/rails-data-explorer
237
238
  licenses:
238
239
  - MIT
239
240
  metadata: {}