write_xlsx 1.00.0 → 1.01.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Changes +15 -0
- data/examples/a_simple.rb +1 -1
- data/examples/add_vba_project.rb +1 -1
- data/examples/array_formula.rb +1 -1
- data/examples/chart_area.rb +5 -2
- data/examples/chart_bar.rb +5 -2
- data/examples/chart_clustered.rb +1 -1
- data/examples/chart_column.rb +5 -2
- data/examples/chart_combined.rb +1 -1
- data/examples/chart_data_table.rb +9 -3
- data/examples/chart_data_tools.rb +25 -7
- data/examples/chart_doughnut.rb +17 -5
- data/examples/chart_gauge.rb +73 -0
- data/examples/chart_line.rb +5 -2
- data/examples/chart_pareto.rb +1 -1
- data/examples/chart_pie.rb +9 -3
- data/examples/chart_radar.rb +13 -4
- data/examples/chart_scatter.rb +5 -2
- data/examples/chart_secondary_axis.rb +5 -2
- data/examples/chart_stock.rb +1 -1
- data/examples/chart_styles.rb +1 -1
- data/examples/colors.rb +1 -1
- data/examples/data_validate.rb +1 -1
- data/examples/date_time.rb +1 -1
- data/examples/demo.rb +4 -1
- data/examples/formats.rb +1 -1
- data/examples/headers.rb +1 -1
- data/examples/hide_row_col.rb +1 -1
- data/examples/hide_sheet.rb +1 -1
- data/examples/hyperlink1.rb +1 -1
- data/examples/indent.rb +1 -1
- data/examples/macros.rb +1 -1
- data/examples/merge1.rb +1 -1
- data/examples/merge2.rb +1 -1
- data/examples/merge3.rb +1 -1
- data/examples/merge4.rb +1 -1
- data/examples/merge5.rb +1 -1
- data/examples/merge6.rb +1 -1
- data/examples/outline.rb +1 -1
- data/examples/outline_collapsed.rb +1 -1
- data/examples/panes.rb +1 -1
- data/examples/properties.rb +1 -1
- data/examples/regions.rb +1 -1
- data/examples/rich_strings.rb +1 -1
- data/examples/right_to_left.rb +1 -1
- data/examples/shape1.rb +1 -1
- data/examples/shape2.rb +1 -1
- data/examples/shape3.rb +1 -1
- data/examples/shape4.rb +1 -1
- data/examples/shape5.rb +1 -1
- data/examples/shape6.rb +1 -1
- data/examples/shape7.rb +1 -1
- data/examples/shape8.rb +1 -1
- data/examples/shape_all.rb +1 -1
- data/examples/sparklines1.rb +1 -1
- data/examples/sparklines2.rb +1 -1
- data/examples/stats.rb +1 -1
- data/examples/stats_ext.rb +1 -1
- data/examples/stocks.rb +1 -1
- data/examples/tab_colors.rb +1 -1
- data/examples/tables.rb +1 -1
- data/lib/write_xlsx/chart.rb +18 -13
- data/lib/write_xlsx/chart/area.rb +1 -1
- data/lib/write_xlsx/chart/bar.rb +1 -1
- data/lib/write_xlsx/chart/column.rb +1 -1
- data/lib/write_xlsx/chart/doughnut.rb +1 -1
- data/lib/write_xlsx/chart/line.rb +1 -1
- data/lib/write_xlsx/chart/pie.rb +21 -8
- data/lib/write_xlsx/chart/radar.rb +1 -1
- data/lib/write_xlsx/chart/scatter.rb +1 -1
- data/lib/write_xlsx/chart/stock.rb +1 -1
- data/lib/write_xlsx/chartsheet.rb +5 -5
- data/lib/write_xlsx/drawing.rb +28 -8
- data/lib/write_xlsx/package/comments.rb +7 -7
- data/lib/write_xlsx/shape.rb +4 -3
- data/lib/write_xlsx/sheets.rb +11 -1
- data/lib/write_xlsx/sparkline.rb +1 -1
- data/lib/write_xlsx/utility.rb +18 -6
- data/lib/write_xlsx/version.rb +1 -1
- data/lib/write_xlsx/workbook.rb +5 -5
- data/lib/write_xlsx/worksheet.rb +113 -125
- data/test/drawing/test_drawing_chart_01.rb +6 -2
- data/test/drawing/test_drawing_image_01.rb +12 -3
- data/test/drawing/test_drawing_shape_01.rb +8 -5
- data/test/drawing/test_drawing_shape_02.rb +12 -5
- data/test/drawing/test_drawing_shape_03.rb +8 -5
- data/test/drawing/test_drawing_shape_04.rb +8 -24
- data/test/drawing/test_drawing_shape_05.rb +8 -5
- data/test/drawing/test_drawing_shape_06.rb +11 -6
- data/test/drawing/test_drawing_shape_07.rb +11 -6
- data/test/drawing/test_write_a_graphic_frame_locks.rb +1 -1
- data/test/drawing/test_write_c_chart.rb +1 -1
- data/test/drawing/test_write_c_nv_graphic_frame_pr.rb +1 -1
- data/test/drawing/test_write_c_nv_pr.rb +1 -1
- data/test/drawing/test_write_col.rb +1 -1
- data/test/drawing/test_write_col_off.rb +1 -1
- data/test/drawing/test_write_ext.rb +1 -1
- data/test/drawing/test_write_pos.rb +1 -1
- data/test/drawing/test_write_row.rb +1 -1
- data/test/drawing/test_write_row_off.rb +1 -1
- data/test/drawing/test_write_xfrm_extension.rb +1 -1
- data/test/drawing/test_write_xfrm_offset.rb +1 -1
- data/test/perl_output/chart_gauge.xlsx +0 -0
- data/test/regression/test_chart_axis26.rb +10 -8
- data/test/regression/test_chart_axis27.rb +1 -1
- data/test/regression/test_chart_axis28.rb +1 -1
- data/test/regression/test_chart_axis29.rb +1 -1
- data/test/regression/test_chart_axis33.rb +1 -1
- data/test/regression/test_chart_axis44.rb +54 -0
- data/test/regression/test_chart_axis45.rb +54 -0
- data/test/regression/test_chart_axis46.rb +54 -0
- data/test/regression/test_chart_combined10.rb +43 -0
- data/test/regression/test_chart_combined11.rb +63 -0
- data/test/regression/test_chart_data_labels25.rb +1 -1
- data/test/regression/test_chart_doughnut07.rb +37 -0
- data/test/regression/test_chart_font09.rb +1 -1
- data/test/regression/test_chart_size03.rb +4 -1
- data/test/regression/test_comment14.rb +29 -0
- data/test/regression/test_image08.rb +5 -4
- data/test/regression/test_image15.rb +4 -2
- data/test/regression/test_image28.rb +1 -1
- data/test/regression/test_object_position01.rb +26 -0
- data/test/regression/test_object_position02.rb +26 -0
- data/test/regression/test_object_position03.rb +26 -0
- data/test/regression/test_object_position04.rb +44 -0
- data/test/regression/test_object_position06.rb +28 -0
- data/test/regression/test_object_position07.rb +28 -0
- data/test/regression/test_object_position08.rb +47 -0
- data/test/regression/test_object_position09.rb +50 -0
- data/test/regression/test_object_position10.rb +28 -0
- data/test/regression/test_shape_connect01.rb +4 -2
- data/test/regression/xlsx_files/chart_axis26.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis27.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis28.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis29.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis33.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis44.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis45.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis46.xlsx +0 -0
- data/test/regression/xlsx_files/chart_combined10.xlsx +0 -0
- data/test/regression/xlsx_files/chart_combined11.xlsx +0 -0
- data/test/regression/xlsx_files/chart_data_labels25.xlsx +0 -0
- data/test/regression/xlsx_files/chart_doughnut07.xlsx +0 -0
- data/test/regression/xlsx_files/chart_font09.xlsx +0 -0
- data/test/regression/xlsx_files/comment14.xlsx +0 -0
- data/test/regression/xlsx_files/object_position01.xlsx +0 -0
- data/test/regression/xlsx_files/object_position02.xlsx +0 -0
- data/test/regression/xlsx_files/object_position03.xlsx +0 -0
- data/test/regression/xlsx_files/object_position04.xlsx +0 -0
- data/test/regression/xlsx_files/object_position06.xlsx +0 -0
- data/test/regression/xlsx_files/object_position07.xlsx +0 -0
- data/test/regression/xlsx_files/object_position08.xlsx +0 -0
- data/test/regression/xlsx_files/object_position09.xlsx +0 -0
- data/test/regression/xlsx_files/object_position10.xlsx +0 -0
- data/test/test_example_match.rb +836 -771
- data/test/workbook/test_check_sheetname.rb +61 -0
- metadata +75 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7488f5d7a2fb2d8d2538dfad0e469015596350f36b8c92fb6ad92c30413fc76a
|
4
|
+
data.tar.gz: 42633fda58820d75b54c6248796c7dec91e2acfc3016ac7dfbea0331c8531353
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ea3fa967b302439de1ddced9c20011f14eeafd8025b424bf7edd33f34215428fd6f9155264336e36a771ee345f13a4ad764abef8bc4c39a88e2d8aa9d8c769b1
|
7
|
+
data.tar.gz: fd4f6e52efcb4e2163d0346e5b13ec21312c73ad1fb2b1d79ab4f81d51411e15eb9308ec0249e52b1082e97c696f94b3651e6ce1676eb011f7420623eda7530c
|
data/.gitignore
CHANGED
data/Changes
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
Change history of write_xlsx rubygem.
|
2
2
|
|
3
|
+
2021-02-08 v1.01.0
|
4
|
+
|
5
|
+
Added support for stacked and East Asian vertical chart fonts.
|
6
|
+
|
7
|
+
Added option to control positioning of charts or images when cells are
|
8
|
+
resized.
|
9
|
+
|
10
|
+
Added support for combining Pie/Doughnut charts.
|
11
|
+
|
12
|
+
Fixed sizing of cell comment boxes when they cross columns/rows that have
|
13
|
+
size changes that occur after the comment is written. Comments should
|
14
|
+
now behave like other worksheet objects such as images and charts.
|
15
|
+
|
16
|
+
Fix for structured reference in chart ranges.
|
17
|
+
|
3
18
|
2021-01-23 v1.00.0
|
4
19
|
|
5
20
|
Fixed issue where images that started in hidden rows/columns weren't placed
|
data/examples/a_simple.rb
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
# write text and numbers to an Excel xlsx file.
|
8
8
|
#
|
9
9
|
# reverse(c), March 2001, John McNamara, jmcnamara@cpan.org
|
10
|
-
# convert to ruby by Hideo NAKAMURA,
|
10
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
11
11
|
#
|
12
12
|
|
13
13
|
require 'write_xlsx'
|
data/examples/add_vba_project.rb
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
# used to extract the vbaProject.bin file.
|
11
11
|
#
|
12
12
|
# reverse('(c)'), November 2012, John McNamara, jmcnamara@cpan.org
|
13
|
-
# convert to ruby by Hideo NAKAMURA,
|
13
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
14
14
|
#
|
15
15
|
|
16
16
|
require 'write_xlsx'
|
data/examples/array_formula.rb
CHANGED
data/examples/chart_area.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# A demo of an Area chart in Excel::Writer::XLSX.
|
7
7
|
#
|
8
8
|
# reverse('ゥ'), March 2011, John McNamara, jmcnamara@cpan.org
|
9
|
-
# convert to ruby by Hideo NAKAMURA,
|
9
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
10
10
|
#
|
11
11
|
|
12
12
|
require 'write_xlsx'
|
@@ -53,6 +53,9 @@
|
|
53
53
|
chart.set_style(11)
|
54
54
|
|
55
55
|
# Insert the chart into the worksheet (with an offset).
|
56
|
-
worksheet.insert_chart(
|
56
|
+
worksheet.insert_chart(
|
57
|
+
'D2', chart,
|
58
|
+
:x_offset => 25, :y_offset => 10
|
59
|
+
)
|
57
60
|
|
58
61
|
workbook.close
|
data/examples/chart_bar.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# A demo of an Bar chart in Excel::Writer::XLSX.
|
7
7
|
#
|
8
8
|
# reverse('c'), March 2011, John McNamara, jmcnamara@cpan.org
|
9
|
-
# convert to ruby by Hideo NAKAMURA,
|
9
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
10
10
|
#
|
11
11
|
|
12
12
|
require 'write_xlsx'
|
@@ -53,6 +53,9 @@
|
|
53
53
|
chart.set_style(11)
|
54
54
|
|
55
55
|
# Insert the chart into the worksheet (with an offset).
|
56
|
-
worksheet.insert_chart(
|
56
|
+
worksheet.insert_chart(
|
57
|
+
'D2', chart,
|
58
|
+
:x_offset => 25, :y_offset => 10
|
59
|
+
)
|
57
60
|
|
58
61
|
workbook.close
|
data/examples/chart_clustered.rb
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
# A demo of a clustered category chart in Excel::Writer::XLSX.
|
6
6
|
#
|
7
7
|
# reverse ('(c)'), March 2015, John McNamara, jmcnamara@cpan.org
|
8
|
-
# convert to ruby by Hideo NAKAMURA,
|
8
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
9
9
|
#
|
10
10
|
|
11
11
|
require 'write_xlsx'
|
data/examples/chart_column.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# A demo of an Area chart in Excel::Writer::XLSX.
|
7
7
|
#
|
8
8
|
# reverse('ゥ'), March 2011, John McNamara, jmcnamara@cpan.org
|
9
|
-
# convert to ruby by Hideo NAKAMURA,
|
9
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
10
10
|
#
|
11
11
|
|
12
12
|
require 'write_xlsx'
|
@@ -53,6 +53,9 @@
|
|
53
53
|
chart.set_style(11)
|
54
54
|
|
55
55
|
# Insert the chart into the worksheet (with an offset).
|
56
|
-
worksheet.insert_chart(
|
56
|
+
worksheet.insert_chart(
|
57
|
+
'D2', chart,
|
58
|
+
:x_offset => 25, :y_offset => 10
|
59
|
+
)
|
57
60
|
|
58
61
|
workbook.close
|
data/examples/chart_combined.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# An example of a Combined chart in WriteXLSX.
|
7
7
|
#
|
8
8
|
# reverse ('(c)'), March 2015, John McNamara, jmcnamara@cpan.org
|
9
|
-
# convert to ruby by Hideo NAKAMURA,
|
9
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
10
10
|
#
|
11
11
|
|
12
12
|
require 'write_xlsx'
|
@@ -7,7 +7,7 @@
|
|
7
7
|
# WriteXLSX.
|
8
8
|
#
|
9
9
|
# reverse ('(c)'), December 2012, John McNamara, jmcnamara@cpan.org
|
10
|
-
# convert to ruby by Hideo NAKAMURA,
|
10
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
11
11
|
#
|
12
12
|
|
13
13
|
require 'write_xlsx'
|
@@ -54,7 +54,10 @@
|
|
54
54
|
chart1.set_table
|
55
55
|
|
56
56
|
# Insert the chart into the worksheet (with an offset).
|
57
|
-
worksheet.insert_chart(
|
57
|
+
worksheet.insert_chart(
|
58
|
+
'D2', chart1,
|
59
|
+
:x_offset => 25, :y_offset => 10
|
60
|
+
)
|
58
61
|
|
59
62
|
#
|
60
63
|
# Create a second charat.
|
@@ -88,6 +91,9 @@
|
|
88
91
|
chart2.set_legend(:position => 'none')
|
89
92
|
|
90
93
|
# Insert the chart into the worksheet (with an offset).
|
91
|
-
worksheet.insert_chart(
|
94
|
+
worksheet.insert_chart(
|
95
|
+
'D18', chart2,
|
96
|
+
:x_offset => 25, :y_offset => 11
|
97
|
+
)
|
92
98
|
|
93
99
|
workbook.close
|
@@ -10,7 +10,7 @@
|
|
10
10
|
# High-Low Lines and Up-Down Bars.
|
11
11
|
#
|
12
12
|
# reverse ('(c)'), December 2012, John McNamara, jmcnamara@cpan.org
|
13
|
-
# convert to ruby by Hideo NAKAMURA,
|
13
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
14
14
|
#
|
15
15
|
|
16
16
|
require 'write_xlsx'
|
@@ -62,7 +62,10 @@
|
|
62
62
|
chart1.set_title(:name => 'Chart with Trendlines')
|
63
63
|
|
64
64
|
# Insert the chart into the worksheet (with an offset).
|
65
|
-
worksheet.insert_chart(
|
65
|
+
worksheet.insert_chart(
|
66
|
+
'D2', chart1,
|
67
|
+
:x_offset => 25, :y_offset => 10
|
68
|
+
)
|
66
69
|
|
67
70
|
|
68
71
|
#######################################################################
|
@@ -91,7 +94,10 @@
|
|
91
94
|
chart2.set_title(:name => 'Chart with Data Labels and Markers')
|
92
95
|
|
93
96
|
# Insert the chart into the worksheet (with an offset).
|
94
|
-
worksheet.insert_chart(
|
97
|
+
worksheet.insert_chart(
|
98
|
+
'D18', chart2,
|
99
|
+
:x_offset => 25, :y_offset => 10
|
100
|
+
)
|
95
101
|
|
96
102
|
|
97
103
|
#######################################################################
|
@@ -119,7 +125,10 @@
|
|
119
125
|
chart3.set_title(:name => 'Chart with Error Bars')
|
120
126
|
|
121
127
|
# Insert the chart into the worksheet (with an offset).
|
122
|
-
worksheet.insert_chart(
|
128
|
+
worksheet.insert_chart(
|
129
|
+
'D34', chart3,
|
130
|
+
:x_offset => 25, :y_offset => 10
|
131
|
+
)
|
123
132
|
|
124
133
|
|
125
134
|
#######################################################################
|
@@ -149,7 +158,10 @@
|
|
149
158
|
chart4.set_title(:name => 'Chart with Up-Down Bars')
|
150
159
|
|
151
160
|
# Insert the chart into the worksheet (with an offset).
|
152
|
-
worksheet.insert_chart(
|
161
|
+
worksheet.insert_chart(
|
162
|
+
'D50', chart4,
|
163
|
+
:x_offset => 25, :y_offset => 10
|
164
|
+
)
|
153
165
|
|
154
166
|
|
155
167
|
#######################################################################
|
@@ -179,7 +191,10 @@
|
|
179
191
|
chart5.set_title(:name => 'Chart with High-Low Lines')
|
180
192
|
|
181
193
|
# Insert the chart into the worksheet (with an offset).
|
182
|
-
worksheet.insert_chart(
|
194
|
+
worksheet.insert_chart(
|
195
|
+
'D66', chart5,
|
196
|
+
:x_offset => 25, :y_offset => 10
|
197
|
+
)
|
183
198
|
|
184
199
|
|
185
200
|
#######################################################################
|
@@ -209,6 +224,9 @@
|
|
209
224
|
chart6.set_title(:name => 'Chart with Drop Lines')
|
210
225
|
|
211
226
|
# Insert the chart into the worksheet (with an offset).
|
212
|
-
worksheet.insert_chart(
|
227
|
+
worksheet.insert_chart(
|
228
|
+
'D82', chart6,
|
229
|
+
:x_offset => 25, :y_offset => 10
|
230
|
+
)
|
213
231
|
|
214
232
|
workbook.close
|
data/examples/chart_doughnut.rb
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
# formatting to each point in the series.
|
13
13
|
#
|
14
14
|
# reverse ('(c)'), March 2011, John McNamara, jmcnamara@cpan.org
|
15
|
-
# convert to ruby by Hideo NAKAMURA,
|
15
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
16
16
|
#
|
17
17
|
|
18
18
|
require 'write_xlsx'
|
@@ -50,7 +50,10 @@
|
|
50
50
|
chart1.set_style(10)
|
51
51
|
|
52
52
|
# Insert the chart into the worksheet (with an offset).
|
53
|
-
worksheet.insert_chart(
|
53
|
+
worksheet.insert_chart(
|
54
|
+
'C2', chart1,
|
55
|
+
:x_offset => 25, :y_offset => 10
|
56
|
+
)
|
54
57
|
|
55
58
|
|
56
59
|
#
|
@@ -77,7 +80,10 @@
|
|
77
80
|
|
78
81
|
|
79
82
|
# Insert the chart into the worksheet (with an offset).
|
80
|
-
worksheet.insert_chart(
|
83
|
+
worksheet.insert_chart(
|
84
|
+
'C18', chart2,
|
85
|
+
:x_offset => 25, :y_offset => 10
|
86
|
+
)
|
81
87
|
|
82
88
|
|
83
89
|
#
|
@@ -101,7 +107,10 @@
|
|
101
107
|
chart3.set_rotation(90)
|
102
108
|
|
103
109
|
# Insert the chart into the worksheet (with an offset).
|
104
|
-
worksheet.insert_chart(
|
110
|
+
worksheet.insert_chart(
|
111
|
+
'C34', chart3,
|
112
|
+
:x_offset => 25, :y_offset => 10
|
113
|
+
)
|
105
114
|
|
106
115
|
|
107
116
|
#
|
@@ -125,6 +134,9 @@
|
|
125
134
|
chart4.set_hole_size(33)
|
126
135
|
|
127
136
|
# Insert the chart into the worksheet (with an offset).
|
128
|
-
worksheet.insert_chart(
|
137
|
+
worksheet.insert_chart(
|
138
|
+
'C50', chart4,
|
139
|
+
:x_offset => 25, :y_offset => 10
|
140
|
+
)
|
129
141
|
|
130
142
|
workbook.close
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# #!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# #######################################################################
|
4
|
+
# #
|
5
|
+
# # A demo of an Gauge Chart in WriteXLSX gem.
|
6
|
+
# #
|
7
|
+
# # A Gauge Chart isn't a native chart type in Excel. It is constructed by
|
8
|
+
# # combining a doughnut chart and a pie chart and by using some non-filled
|
9
|
+
# # elements. This example follows the following online example of how to create
|
10
|
+
# # a Gauge Chart in Excel: https://www.excel-easy.com/examples/gauge-chart.html
|
11
|
+
# #
|
12
|
+
# # reverse ('(c)'), May 2019, John McNamara, jmcnamara@cpan.org
|
13
|
+
# # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
14
|
+
# #
|
15
|
+
|
16
|
+
require 'write_xlsx'
|
17
|
+
|
18
|
+
workbook = WriteXLSX.new('chart_gauge.xlsx')
|
19
|
+
worksheet = workbook.add_worksheet
|
20
|
+
|
21
|
+
chart_doughnut = workbook.add_chart(:type => 'doughnut', :embedded => 1)
|
22
|
+
chart_pie = workbook.add_chart(:type => 'pie', :embedded => 1)
|
23
|
+
|
24
|
+
# Add some data for the Doughnut and Pie charts. This is set up so the
|
25
|
+
# gauge goes from 0-100. It is initially set at 75%.
|
26
|
+
worksheet.write_col('H2', ['Donut', 25, 50, 25, 100])
|
27
|
+
worksheet.write_col('I2', ['Pie', 75, 1, '=200-I4-I3'])
|
28
|
+
|
29
|
+
# Configure the doughnut chart as the background for the gauge.
|
30
|
+
chart_doughnut.add_series(
|
31
|
+
:name => '=Sheet1!$H$2',
|
32
|
+
:values => '=Sheet1!$H$3:$H$6',
|
33
|
+
:points => [
|
34
|
+
{ :fill => { :color => 'green' } },
|
35
|
+
{ :fill => { :color => 'yellow' } },
|
36
|
+
{ :fill => { :color => 'red' } },
|
37
|
+
{ :fill => { :none => 1 } }
|
38
|
+
]
|
39
|
+
)
|
40
|
+
|
41
|
+
# Rotate chart so the gauge parts are above the horizontal.
|
42
|
+
chart_doughnut.set_rotation(270)
|
43
|
+
|
44
|
+
# Turn off the chart legend.
|
45
|
+
chart_doughnut.set_legend(:none => 1)
|
46
|
+
|
47
|
+
# Turn off the chart fill and border.
|
48
|
+
chart_doughnut.set_chartarea(
|
49
|
+
:border => { :none => 1 },
|
50
|
+
:fill => { :none => 1 }
|
51
|
+
)
|
52
|
+
|
53
|
+
# Configure the pie chart as the needle for the gauge.
|
54
|
+
chart_pie.add_series(
|
55
|
+
:name => '=Sheet1!$I$2',
|
56
|
+
:values => '=Sheet1!$I$3:$I$6',
|
57
|
+
:points => [
|
58
|
+
{ :fill => { :none => 1 } },
|
59
|
+
{ :fill => { :color => 'black' } },
|
60
|
+
{ :fill => { :none => 1 } }
|
61
|
+
]
|
62
|
+
)
|
63
|
+
|
64
|
+
# Rotate the pie chart/needle to align with the doughnut/gauge.
|
65
|
+
chart_pie.set_rotation(270)
|
66
|
+
|
67
|
+
# Combine the pie and doughnut charts.
|
68
|
+
chart_doughnut.combine(chart_pie)
|
69
|
+
|
70
|
+
# Insert the chart into the worksheet.
|
71
|
+
worksheet.insert_chart('A1', chart_doughnut)
|
72
|
+
|
73
|
+
workbook.close
|
data/examples/chart_line.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# A demo of a Line chart in Excel::Writer::XLSX.
|
7
7
|
#
|
8
8
|
# reverse('ゥ'), March 2011, John McNamara, jmcnamara@cpan.org
|
9
|
-
# convert to ruby by Hideo NAKAMURA,
|
9
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
10
10
|
#
|
11
11
|
|
12
12
|
require 'write_xlsx'
|
@@ -53,6 +53,9 @@
|
|
53
53
|
chart.set_style(10)
|
54
54
|
|
55
55
|
# Insert the chart into the worksheet (with an offset).
|
56
|
-
worksheet.insert_chart(
|
56
|
+
worksheet.insert_chart(
|
57
|
+
'D2', chart,
|
58
|
+
:x_offset => 25, :y_offset => 10
|
59
|
+
)
|
57
60
|
|
58
61
|
workbook.close
|
data/examples/chart_pareto.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# A demo of a Pareto chart in Excel::Writer::XLSX.
|
7
7
|
#
|
8
8
|
# reverse ('(c)'), March 2015, John McNamara, jmcnamara@cpan.org
|
9
|
-
# convert to ruby by Hideo NAKAMURA,
|
9
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
10
10
|
#
|
11
11
|
|
12
12
|
require 'write_xlsx'
|
data/examples/chart_pie.rb
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
# assign formatting to each point in the series.
|
13
13
|
#
|
14
14
|
# reverse(c), March 2011, John McNamara, jmcnamara@cpan.org
|
15
|
-
# convert to ruby by Hideo NAKAMURA,
|
15
|
+
# convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
|
16
16
|
#
|
17
17
|
|
18
18
|
require 'write_xlsx'
|
@@ -50,7 +50,10 @@
|
|
50
50
|
chart1.set_style(10)
|
51
51
|
|
52
52
|
# Insert the chart into the worksheet (with an offset).
|
53
|
-
worksheet.insert_chart(
|
53
|
+
worksheet.insert_chart(
|
54
|
+
'C2', chart1,
|
55
|
+
:x_offset => 25, :y_offset => 10
|
56
|
+
)
|
54
57
|
|
55
58
|
#
|
56
59
|
# Create a Pie chart with user defined segment colors.
|
@@ -74,6 +77,9 @@
|
|
74
77
|
# Add a title.
|
75
78
|
chart2.set_title(:name => 'Pie Chart with user defined colors')
|
76
79
|
|
77
|
-
worksheet.insert_chart(
|
80
|
+
worksheet.insert_chart(
|
81
|
+
'C18', chart2,
|
82
|
+
:x_offset => 25, :y_offset => 10
|
83
|
+
)
|
78
84
|
|
79
85
|
workbook.close
|