summaryrefslogtreecommitdiffhomepage
path: root/examples
diff options
context:
space:
mode:
authorRandy Morgan <[email protected]>2013-09-26 21:17:25 +0900
committerRandy Morgan <[email protected]>2013-09-26 21:17:25 +0900
commit168fcb8406d80f863d5d1b50a38e585580f89acf (patch)
treeadc9dd82aa356dcabe8396d21aa0e3926ac7b9a3 /examples
parent46a17e4b3fe0531ac6b2e48f818a982a86f538e4 (diff)
downloadcaxlsx-168fcb8406d80f863d5d1b50a38e585580f89acf.tar.gz
caxlsx-168fcb8406d80f863d5d1b50a38e585580f89acf.zip
extended examples and smooth lines for line chart
Diffstat (limited to 'examples')
-rwxr-xr-xexamples/example.rb1
-rw-r--r--examples/merge_cells.rb17
-rw-r--r--examples/no_grid_with_borders.rb18
-rw-r--r--examples/pivot_test.rb63
4 files changed, 99 insertions, 0 deletions
diff --git a/examples/example.rb b/examples/example.rb
index 6c8fbd0e..3e409f2d 100755
--- a/examples/example.rb
+++ b/examples/example.rb
@@ -468,6 +468,7 @@ if examples.include? :line_chart
chart.valAxis.title = 'Y Axis'
end
sheet.add_chart(Axlsx::LineChart, :title => "Simple Line Chart", :rotX => 30, :rotY => 20) do |chart|
+ chart.smooth = true
chart.start_at 0, 21
chart.end_at 10, 41
chart.add_series :data => sheet["A3:A6"], :title => sheet["A2"], :color => "FF0000"
diff --git a/examples/merge_cells.rb b/examples/merge_cells.rb
new file mode 100644
index 00000000..8b2ead2c
--- /dev/null
+++ b/examples/merge_cells.rb
@@ -0,0 +1,17 @@
+#!/usr/bin/env ruby -w -s
+# -*- coding: utf-8 -*-
+$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
+
+#```ruby
+require 'axlsx'
+package = Axlsx::Package.new
+package.workbook do |workbook|
+ workbook.add_worksheet name: 'merged_cells' do |sheet|
+ 4.times do
+ sheet.add_row %w(a b c d e f g)
+ end
+ sheet.merge_cells "A1:A2"
+ sheet.merge_cells "B1:B2"
+ end
+end
+package.serialize 'merged_cells.xlsx'
diff --git a/examples/no_grid_with_borders.rb b/examples/no_grid_with_borders.rb
new file mode 100644
index 00000000..aed9eb76
--- /dev/null
+++ b/examples/no_grid_with_borders.rb
@@ -0,0 +1,18 @@
+#!/usr/bin/env ruby -w -s
+# -*- coding: utf-8 -*-
+$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
+
+#```ruby
+require 'axlsx'
+package = Axlsx::Package.new
+package.workbook do |workbook|
+ workbook.styles do |s|
+ gridstyle_border = s.add_style :border => { :style => :thin, :color =>"FFCDCDCD" }
+ workbook.add_worksheet :name => "Custom Borders" do |sheet|
+ sheet.sheet_view.show_grid_lines = false
+ sheet.add_row ["with", "grid", "style"], :style => gridstyle_border
+ sheet.add_row ["no", "border"]
+ end
+ end
+end
+package.serialize 'no_grid_with_borders.xlsx'
diff --git a/examples/pivot_test.rb b/examples/pivot_test.rb
new file mode 100644
index 00000000..80bdcd84
--- /dev/null
+++ b/examples/pivot_test.rb
@@ -0,0 +1,63 @@
+class RandomReportGenerator
+ def date
+ Date.today.strftime("%m/%d/%Y")
+ end
+ def member_id
+ @i ||= 0
+ @i += 1
+ end
+ def name
+ "John S."
+ end
+ def gender
+ ["Male", "Female"].sample
+ end
+ def age
+ rand(100)
+ end
+ def city
+ ["New York", "Mountain View", "Newark", "Phoenix"].sample
+ end
+ def state
+ ["NY", "CA", "NJ", "AZ"].sample
+ end
+ def parenting
+ "Foo"
+ end
+ def student
+ "Bar"
+ end
+ def income
+ "Bar"
+ end
+ def education
+ "Bar"
+ end
+ def answer
+ ["Yes", "No", "Maybe", "I dont know"].sample
+ end
+ def run
+ package = Axlsx::Package.new
+ workbook = package.workbook
+
+ workbook.add_worksheet(:name => "Data Sheet") do |sheet|
+ sheet.add_row [
+ "Date", "Member ID", "Name", "Gender", "Age", "City", "State",
+ "Parenting Status", "Student Status", "Income", "Education", "Answer"
+ ]
+ 30.times do
+ sheet.add_row [date, member_id, name, gender, age, city, state,
+ parenting, student, income, education, answer]
+ end
+ end
+
+ workbook.add_worksheet(:name => "Summary") do |sheet|
+ pivot_table = Axlsx::PivotTable.new 'A1:B15', "A1:L31", workbook.worksheets[0]
+ pivot_table.rows = ['Answer']
+ pivot_table.data = [{:ref => "Member ID", :subtotal => "count"}]
+ sheet.pivot_tables << pivot_table
+ end
+
+ package.serialize("pivot_table.xlsx")
+ end
+end