write_xlsx 0.89.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 +98 -0
- data/LICENSE.txt +1 -1
- data/README.md +2 -2
- data/examples/a_simple.rb +2 -7
- 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/conditional_format.rb +73 -46
- data/examples/data_validate.rb +1 -1
- data/examples/date_time.rb +1 -1
- data/examples/demo.rb +5 -8
- 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 +5 -12
- 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 +124 -240
- data/lib/write_xlsx/chart/area.rb +1 -1
- data/lib/write_xlsx/chart/axis.rb +4 -4
- data/lib/write_xlsx/chart/bar.rb +1 -1
- data/lib/write_xlsx/chart/caption.rb +3 -1
- data/lib/write_xlsx/chart/column.rb +1 -1
- data/lib/write_xlsx/chart/doughnut.rb +1 -1
- data/lib/write_xlsx/chart/legend.rb +14 -0
- data/lib/write_xlsx/chart/line.rb +1 -1
- data/lib/write_xlsx/chart/pie.rb +32 -15
- data/lib/write_xlsx/chart/radar.rb +1 -1
- data/lib/write_xlsx/chart/scatter.rb +1 -1
- data/lib/write_xlsx/chart/series.rb +11 -7
- data/lib/write_xlsx/chart/stock.rb +1 -1
- data/lib/write_xlsx/chartsheet.rb +35 -7
- data/lib/write_xlsx/drawing.rb +28 -8
- data/lib/write_xlsx/format.rb +19 -15
- data/lib/write_xlsx/package/comments.rb +57 -54
- data/lib/write_xlsx/package/conditional_format.rb +360 -39
- data/lib/write_xlsx/package/content_types.rb +10 -0
- data/lib/write_xlsx/package/core.rb +8 -6
- data/lib/write_xlsx/package/custom.rb +125 -0
- data/lib/write_xlsx/package/packager.rb +26 -0
- data/lib/write_xlsx/package/styles.rb +53 -21
- data/lib/write_xlsx/package/table.rb +16 -4
- 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 +305 -35
- data/lib/write_xlsx/version.rb +1 -1
- data/lib/write_xlsx/workbook.rb +132 -12
- data/lib/write_xlsx/worksheet.rb +397 -163
- data/lib/write_xlsx/worksheet/data_validation.rb +10 -14
- data/lib/write_xlsx/worksheet/hyperlink.rb +4 -13
- data/test/chart/test_write_legend_pos.rb +9 -1
- data/test/chartsheet/test_write_sheet_protection.rb +91 -0
- 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/helper.rb +6 -1
- data/test/package/comments/test_comments_01.rb +54 -0
- data/test/package/comments/test_comments_02.rb +54 -0
- data/test/perl_output/chart_gauge.xlsx +0 -0
- data/test/perl_output/formats.xlsx +0 -0
- data/test/regression/_test_hyperlink31.rb +26 -0
- data/test/regression/images/happy.jpg +0 -0
- data/test/regression/images/zero_dpi.jpg +0 -0
- data/test/regression/test_array_formula03.rb +36 -0
- data/test/regression/test_autofilter08.rb +110 -0
- data/test/regression/test_autofilter09.rb +110 -0
- data/test/regression/test_autofilter10.rb +110 -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_axis42.rb +44 -0
- data/test/regression/test_chart_axis43.rb +44 -0
- 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_bar08.rb +3 -0
- data/test/regression/test_chart_bar11.rb +3 -0
- data/test/regression/test_chart_bar14.rb +3 -0
- data/test/regression/test_chart_chartarea05.rb +16 -17
- data/test/regression/test_chart_chartarea06.rb +49 -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 +61 -0
- data/test/regression/test_chart_doughnut07.rb +37 -0
- data/test/regression/test_chart_font09.rb +1 -1
- data/test/regression/test_chart_format26.rb +48 -0
- data/test/regression/test_chart_format27.rb +58 -0
- data/test/regression/test_chart_format28.rb +52 -0
- data/test/regression/test_chart_format29.rb +59 -0
- data/test/regression/test_chart_format30.rb +53 -0
- data/test/regression/test_chart_format31.rb +60 -0
- data/test/regression/test_chart_legend03.rb +41 -0
- data/test/regression/test_chart_legend04.rb +41 -0
- data/test/regression/test_chart_legend05.rb +41 -0
- data/test/regression/test_chart_legend06.rb +41 -0
- data/test/regression/test_chart_legend07.rb +38 -0
- data/test/regression/test_chart_size03.rb +4 -1
- data/test/regression/test_chart_table03.rb +56 -0
- data/test/regression/test_comment13.rb +36 -0
- data/test/regression/test_comment14.rb +29 -0
- data/test/regression/test_cond_format14.rb +42 -0
- data/test/regression/test_cond_format15.rb +53 -0
- data/test/regression/test_cond_format16.rb +53 -0
- data/test/regression/test_cond_format17.rb +37 -0
- data/test/regression/test_cond_format18.rb +136 -0
- data/test/regression/test_cond_format19.rb +64 -0
- data/test/regression/test_cond_format20.rb +43 -0
- data/test/regression/test_date_1904_01.rb +1 -1
- data/test/regression/test_escapes04.rb +3 -0
- data/test/regression/test_escapes05.rb +3 -0
- data/test/regression/test_escapes07.rb +3 -0
- data/test/regression/test_escapes08.rb +3 -0
- data/test/regression/test_format15.rb +26 -0
- data/test/regression/test_hyperlink01.rb +3 -0
- data/test/regression/test_hyperlink02.rb +3 -0
- data/test/regression/test_hyperlink03.rb +4 -0
- data/test/regression/test_hyperlink04.rb +3 -0
- data/test/regression/test_hyperlink05.rb +3 -0
- data/test/regression/test_hyperlink06.rb +3 -0
- data/test/regression/test_hyperlink07.rb +3 -0
- data/test/regression/test_hyperlink08.rb +3 -0
- data/test/regression/test_hyperlink09.rb +3 -0
- data/test/regression/test_hyperlink10.rb +3 -0
- data/test/regression/test_hyperlink11.rb +3 -0
- data/test/regression/test_hyperlink12.rb +3 -0
- data/test/regression/test_hyperlink13.rb +3 -0
- data/test/regression/test_hyperlink14.rb +3 -0
- data/test/regression/test_hyperlink15.rb +3 -0
- data/test/regression/test_hyperlink16.rb +3 -0
- data/test/regression/test_hyperlink17.rb +3 -0
- data/test/regression/test_hyperlink18.rb +3 -0
- data/test/regression/test_hyperlink20.rb +3 -0
- data/test/regression/test_hyperlink21.rb +3 -0
- data/test/regression/test_hyperlink22.rb +3 -0
- data/test/regression/test_hyperlink23.rb +3 -0
- data/test/regression/test_hyperlink24.rb +3 -0
- data/test/regression/test_hyperlink25.rb +3 -0
- data/test/regression/test_hyperlink26.rb +3 -0
- data/test/regression/test_hyperlink27.rb +27 -0
- data/test/regression/test_hyperlink28.rb +50 -0
- data/test/regression/test_hyperlink29.rb +27 -0
- data/test/regression/test_hyperlink30.rb +36 -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_image35.rb +26 -0
- data/test/regression/test_image36.rb +26 -0
- data/test/regression/test_image44.rb +28 -0
- data/test/regression/test_image45.rb +28 -0
- data/test/regression/test_image46.rb +29 -0
- data/test/regression/test_image47.rb +28 -0
- 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_properties01.rb +1 -4
- data/test/regression/test_properties02.rb +1 -4
- data/test/regression/test_properties03.rb +26 -0
- data/test/regression/test_properties04.rb +61 -0
- data/test/regression/test_properties05.rb +30 -0
- data/test/regression/test_shape_connect01.rb +4 -2
- data/test/regression/test_table03.rb +3 -0
- data/test/regression/test_table04.rb +3 -0
- data/test/regression/test_table05.rb +3 -0
- data/test/regression/test_table06.rb +3 -0
- data/test/regression/test_table20.rb +34 -0
- data/test/regression/test_table21.rb +36 -0
- data/test/regression/test_table22.rb +32 -0
- data/test/regression/test_table23.rb +56 -0
- data/test/regression/test_utf8_11.rb +23 -0
- data/test/regression/xlsx_files/array_formula03.xlsx +0 -0
- data/test/regression/xlsx_files/autofilter08.xlsx +0 -0
- data/test/regression/xlsx_files/autofilter09.xlsx +0 -0
- data/test/regression/xlsx_files/autofilter10.xlsx +0 -0
- 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_axis42.xlsx +0 -0
- data/test/regression/xlsx_files/chart_axis43.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_chartarea05.xlsx +0 -0
- data/test/regression/xlsx_files/chart_chartarea06.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/chart_format26.xlsx +0 -0
- data/test/regression/xlsx_files/chart_format27.xlsx +0 -0
- data/test/regression/xlsx_files/chart_format28.xlsx +0 -0
- data/test/regression/xlsx_files/chart_format29.xlsx +0 -0
- data/test/regression/xlsx_files/chart_format30.xlsx +0 -0
- data/test/regression/xlsx_files/chart_format31.xlsx +0 -0
- data/test/regression/xlsx_files/chart_legend03.xlsx +0 -0
- data/test/regression/xlsx_files/chart_legend04.xlsx +0 -0
- data/test/regression/xlsx_files/chart_legend05.xlsx +0 -0
- data/test/regression/xlsx_files/chart_legend06.xlsx +0 -0
- data/test/regression/xlsx_files/chart_legend07.xlsx +0 -0
- data/test/regression/xlsx_files/chart_table03.xlsx +0 -0
- data/test/regression/xlsx_files/comment13.xlsx +0 -0
- data/test/regression/xlsx_files/comment14.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format14.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format15.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format16.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format17.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format18.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format19.xlsx +0 -0
- data/test/regression/xlsx_files/cond_format20.xlsx +0 -0
- data/test/regression/xlsx_files/date_1904_01.xlsx +0 -0
- data/test/regression/xlsx_files/format15.xlsx +0 -0
- data/test/regression/xlsx_files/hyperlink27.xlsx +0 -0
- data/test/regression/xlsx_files/hyperlink28.xlsx +0 -0
- data/test/regression/xlsx_files/hyperlink29.xlsx +0 -0
- data/test/regression/xlsx_files/hyperlink30.xlsx +0 -0
- data/test/regression/xlsx_files/hyperlink31.xlsx +0 -0
- data/test/regression/xlsx_files/image35.xlsx +0 -0
- data/test/regression/xlsx_files/image36.xlsx +0 -0
- data/test/regression/xlsx_files/image44.xlsx +0 -0
- data/test/regression/xlsx_files/image45.xlsx +0 -0
- data/test/regression/xlsx_files/image46.xlsx +0 -0
- data/test/regression/xlsx_files/image47.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/regression/xlsx_files/properties03.xlsx +0 -0
- data/test/regression/xlsx_files/properties04.xlsx +0 -0
- data/test/regression/xlsx_files/properties05.xlsx +0 -0
- data/test/regression/xlsx_files/table21.xlsx +0 -0
- data/test/regression/xlsx_files/table22.xlsx +0 -0
- data/test/regression/xlsx_files/table23.xlsx +0 -0
- data/test/regression/xlsx_files/utf8_11.xlsx +0 -0
- data/test/test_example_match.rb +836 -771
- data/test/workbook/test_check_sheetname.rb +61 -0
- data/test/workbook/test_worksheet_by_name.rb +35 -0
- data/test/workbook/test_write_workbook_view.rb +117 -0
- data/test/worksheet/test_cond_format_22.rb +266 -0
- data/test/worksheet/test_cond_format_23.rb +242 -0
- data/test/worksheet/test_cond_format_24.rb +303 -0
- data/test/worksheet/test_data_bar_01.rb +53 -0
- data/test/worksheet/test_data_bar_02.rb +79 -0
- data/test/worksheet/test_data_bar_03.rb +147 -0
- data/test/worksheet/test_data_bar_04.rb +145 -0
- data/test/worksheet/test_data_bar_05.rb +147 -0
- data/test/worksheet/test_data_bar_06.rb +145 -0
- data/test/worksheet/test_data_bar_07.rb +146 -0
- data/test/worksheet/test_data_bar_08.rb +54 -0
- data/test/worksheet/test_data_bar_09.rb +80 -0
- data/test/worksheet/test_data_bar_10.rb +165 -0
- data/test/worksheet/test_data_bar_11.rb +167 -0
- data/test/worksheet/test_data_bar_12.rb +104 -0
- data/test/worksheet/test_write_data_validation_02.rb +44 -0
- data/test/worksheet/test_write_hyperlink.rb +0 -7
- data/test/worksheet/test_write_sheet_view.rb +19 -1
- metadata +308 -5
- data/test/package/comments/test_write_text_t.rb +0 -44
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,103 @@
|
|
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
|
+
|
18
|
+
2021-01-23 v1.00.0
|
19
|
+
|
20
|
+
Fixed issue where images that started in hidden rows/columns weren't placed
|
21
|
+
correctly in the worksheet.
|
22
|
+
|
23
|
+
|
24
|
+
2021-01-08 v0.99.0
|
25
|
+
|
26
|
+
Added font and font_size parameters to write_comment().
|
27
|
+
|
28
|
+
Allow formulas in date field of data_validation().
|
29
|
+
|
30
|
+
Added top_left chart legend position.
|
31
|
+
|
32
|
+
Added legend formatting options.
|
33
|
+
|
34
|
+
Added set_tab_ratio() method to set the ratio between the worksheet tabs
|
35
|
+
and the horizontal slider.
|
36
|
+
|
37
|
+
Added worksheet hide_row_col_headers() method to turn off worksheet row
|
38
|
+
and column headings.
|
39
|
+
|
40
|
+
Add functionality to align chart category axis labels.
|
41
|
+
|
42
|
+
Fix for issue with special characters in worksheet table functions.
|
43
|
+
|
44
|
+
Fix handling of 'num_format': '0' in duplicate formats.
|
45
|
+
|
46
|
+
|
47
|
+
2021-01-03 v0.98.0
|
48
|
+
|
49
|
+
fixed for autofilter rule with blanks plus another filter.
|
50
|
+
|
51
|
+
2021-01-02 v0.97.0
|
52
|
+
|
53
|
+
Added Excel 2010 data bar features such as solid fills and control over
|
54
|
+
the display of negative values.
|
55
|
+
|
56
|
+
Added default formatting for hyperlinks if none is specified. The format
|
57
|
+
is the Excel hyperlink style so links change colour after they are
|
58
|
+
clicked.
|
59
|
+
|
60
|
+
Fixed missing plotarea formatting in pie/doughnut charts.
|
61
|
+
|
62
|
+
2020-12-31 v0.96.0
|
63
|
+
|
64
|
+
Added icon sets to conditional formatting.
|
65
|
+
|
66
|
+
2020-12-30 v0.95.0
|
67
|
+
|
68
|
+
Added workbook set_size() method.
|
69
|
+
|
70
|
+
2020-12-30 v0.94.0
|
71
|
+
|
72
|
+
Added font support to chart tables.
|
73
|
+
|
74
|
+
2020-12-30 v0.93.0
|
75
|
+
|
76
|
+
Added trendline properties: intercept, display_equation and
|
77
|
+
display_r_squared.
|
78
|
+
|
79
|
+
2020-12-30 v0.92.0
|
80
|
+
|
81
|
+
Fix for insert_image issue when handling images with zero dpi.
|
82
|
+
|
83
|
+
2020-12-30 v0.91.0
|
84
|
+
|
85
|
+
Add set_custom_property() workbook method to set custom document
|
86
|
+
properties.
|
87
|
+
|
88
|
+
2020-12-28 v0.90.0
|
89
|
+
|
90
|
+
Added worksheet_by_name() workbook method to retrieve a worksheet
|
91
|
+
in a workbook by name.
|
92
|
+
|
93
|
+
Fixed issue where internal file creation and modification dates where
|
94
|
+
in the local timezone instead of UTC.
|
95
|
+
|
96
|
+
Fixed issue with "external:" urls with space in sheetname.
|
97
|
+
|
98
|
+
Fixed issue where Unicode full-width number strings were treated as
|
99
|
+
numbers in write().
|
100
|
+
|
3
101
|
2020-12-27 v0.89.0
|
4
102
|
|
5
103
|
Added write_boolean() worksheet method to write Excel boolean values.
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
gem to create a new file in the Excel 2007+ XLSX format, and you can use the
|
7
7
|
same interface as writeexcel gem. write_xlsx is converted from Perl's module
|
8
|
-
[Excel::Writer::XLSX-0.
|
8
|
+
[Excel::Writer::XLSX-0.99](https://github.com/jmcnamara/excel-writer-xlsx) .
|
9
9
|
|
10
10
|
## Description
|
11
11
|
|
@@ -85,7 +85,7 @@ the first worksheet in an Excel XML spreadsheet called ruby.xlsx:
|
|
85
85
|
Original Perl module was written by John McNamara(jmcnamara@cpan.org).
|
86
86
|
|
87
87
|
Converted to ruby by Hideo NAKAMURA(nakamrua.hideo@gmail.com)
|
88
|
-
Copyright (c) 2012-
|
88
|
+
Copyright (c) 2012-2021 Hideo NAKAMURA.
|
89
89
|
|
90
90
|
See LICENSE.txt for further details.
|
91
91
|
|
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'
|
@@ -34,11 +34,6 @@
|
|
34
34
|
worksheet.write(8, 0, '=IF(A5>3,"Yes", "No")')
|
35
35
|
|
36
36
|
# Write a hyperlink
|
37
|
-
|
38
|
-
:color => 'blue',
|
39
|
-
:underline => 1
|
40
|
-
)
|
41
|
-
|
42
|
-
worksheet.write(10, 0, 'http://www.ruby-lang.org/', hyperlink_format)
|
37
|
+
worksheet.write(10, 0, 'http://www.ruby-lang.org/')
|
43
38
|
|
44
39
|
workbook.close
|
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
|