write_xlsx 0.97.0 → 1.04.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.
Files changed (313) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/Changes +78 -0
  4. data/LICENSE.txt +1 -1
  5. data/README.md +2 -2
  6. data/examples/a_simple.rb +1 -1
  7. data/examples/add_vba_project.rb +1 -1
  8. data/examples/array_formula.rb +1 -1
  9. data/examples/chart_area.rb +5 -2
  10. data/examples/chart_bar.rb +5 -2
  11. data/examples/chart_clustered.rb +1 -1
  12. data/examples/chart_column.rb +5 -2
  13. data/examples/chart_combined.rb +1 -1
  14. data/examples/chart_data_table.rb +9 -3
  15. data/examples/chart_data_tools.rb +25 -7
  16. data/examples/chart_doughnut.rb +17 -5
  17. data/examples/chart_gauge.rb +73 -0
  18. data/examples/chart_line.rb +90 -12
  19. data/examples/chart_pareto.rb +1 -1
  20. data/examples/chart_pie.rb +9 -3
  21. data/examples/chart_radar.rb +13 -4
  22. data/examples/chart_scatter.rb +5 -2
  23. data/examples/chart_secondary_axis.rb +5 -2
  24. data/examples/chart_stock.rb +1 -1
  25. data/examples/chart_styles.rb +1 -1
  26. data/examples/colors.rb +1 -1
  27. data/examples/data_validate.rb +1 -1
  28. data/examples/date_time.rb +1 -1
  29. data/examples/demo.rb +4 -1
  30. data/examples/formats.rb +1 -1
  31. data/examples/headers.rb +1 -1
  32. data/examples/hide_row_col.rb +1 -1
  33. data/examples/hide_sheet.rb +1 -1
  34. data/examples/hyperlink1.rb +1 -1
  35. data/examples/indent.rb +1 -1
  36. data/examples/macros.rb +1 -1
  37. data/examples/merge1.rb +1 -1
  38. data/examples/merge2.rb +1 -1
  39. data/examples/merge3.rb +1 -1
  40. data/examples/merge4.rb +1 -1
  41. data/examples/merge5.rb +1 -1
  42. data/examples/merge6.rb +1 -1
  43. data/examples/outline.rb +1 -1
  44. data/examples/outline_collapsed.rb +1 -1
  45. data/examples/panes.rb +1 -1
  46. data/examples/properties.rb +1 -1
  47. data/examples/regions.rb +1 -1
  48. data/examples/rich_strings.rb +1 -1
  49. data/examples/right_to_left.rb +1 -1
  50. data/examples/shape1.rb +1 -1
  51. data/examples/shape2.rb +1 -1
  52. data/examples/shape3.rb +1 -1
  53. data/examples/shape4.rb +1 -1
  54. data/examples/shape5.rb +1 -1
  55. data/examples/shape6.rb +1 -1
  56. data/examples/shape7.rb +1 -1
  57. data/examples/shape8.rb +1 -1
  58. data/examples/shape_all.rb +1 -1
  59. data/examples/sparklines1.rb +1 -1
  60. data/examples/sparklines2.rb +1 -1
  61. data/examples/stats.rb +1 -1
  62. data/examples/stats_ext.rb +1 -1
  63. data/examples/stocks.rb +1 -1
  64. data/examples/tab_colors.rb +1 -1
  65. data/examples/tables.rb +78 -43
  66. data/lib/write_xlsx/chart.rb +43 -35
  67. data/lib/write_xlsx/chart/area.rb +1 -1
  68. data/lib/write_xlsx/chart/axis.rb +2 -2
  69. data/lib/write_xlsx/chart/bar.rb +1 -1
  70. data/lib/write_xlsx/chart/column.rb +1 -1
  71. data/lib/write_xlsx/chart/doughnut.rb +1 -1
  72. data/lib/write_xlsx/chart/legend.rb +14 -0
  73. data/lib/write_xlsx/chart/line.rb +16 -2
  74. data/lib/write_xlsx/chart/pie.rb +30 -15
  75. data/lib/write_xlsx/chart/radar.rb +1 -1
  76. data/lib/write_xlsx/chart/scatter.rb +1 -1
  77. data/lib/write_xlsx/chart/stock.rb +1 -1
  78. data/lib/write_xlsx/chartsheet.rb +35 -7
  79. data/lib/write_xlsx/drawing.rb +86 -30
  80. data/lib/write_xlsx/format.rb +9 -9
  81. data/lib/write_xlsx/package/comments.rb +61 -58
  82. data/lib/write_xlsx/package/conditional_format.rb +9 -1
  83. data/lib/write_xlsx/package/relationships.rb +4 -4
  84. data/lib/write_xlsx/package/styles.rb +26 -8
  85. data/lib/write_xlsx/package/table.rb +13 -7
  86. data/lib/write_xlsx/package/vml.rb +20 -19
  87. data/lib/write_xlsx/shape.rb +4 -3
  88. data/lib/write_xlsx/sheets.rb +18 -16
  89. data/lib/write_xlsx/sparkline.rb +1 -1
  90. data/lib/write_xlsx/utility.rb +96 -7
  91. data/lib/write_xlsx/version.rb +1 -1
  92. data/lib/write_xlsx/workbook.rb +99 -49
  93. data/lib/write_xlsx/worksheet.rb +225 -145
  94. data/lib/write_xlsx/worksheet/data_validation.rb +10 -14
  95. data/lib/write_xlsx/worksheet/hyperlink.rb +16 -37
  96. data/test/chart/test_write_legend_pos.rb +9 -1
  97. data/test/chartsheet/test_write_sheet_protection.rb +91 -0
  98. data/test/drawing/test_drawing_chart_01.rb +6 -2
  99. data/test/drawing/test_drawing_image_01.rb +12 -3
  100. data/test/drawing/test_drawing_shape_01.rb +8 -5
  101. data/test/drawing/test_drawing_shape_02.rb +12 -5
  102. data/test/drawing/test_drawing_shape_03.rb +8 -5
  103. data/test/drawing/test_drawing_shape_04.rb +8 -24
  104. data/test/drawing/test_drawing_shape_05.rb +8 -5
  105. data/test/drawing/test_drawing_shape_06.rb +11 -6
  106. data/test/drawing/test_drawing_shape_07.rb +11 -6
  107. data/test/drawing/test_write_a_graphic_frame_locks.rb +1 -1
  108. data/test/drawing/test_write_c_chart.rb +1 -1
  109. data/test/drawing/test_write_c_nv_graphic_frame_pr.rb +1 -1
  110. data/test/drawing/test_write_c_nv_pr.rb +1 -1
  111. data/test/drawing/test_write_col.rb +1 -1
  112. data/test/drawing/test_write_col_off.rb +1 -1
  113. data/test/drawing/test_write_ext.rb +1 -1
  114. data/test/drawing/test_write_pos.rb +1 -1
  115. data/test/drawing/test_write_row.rb +1 -1
  116. data/test/drawing/test_write_row_off.rb +1 -1
  117. data/test/drawing/test_write_xfrm_extension.rb +1 -1
  118. data/test/drawing/test_write_xfrm_offset.rb +1 -1
  119. data/test/package/comments/test_comments_01.rb +54 -0
  120. data/test/package/comments/test_comments_02.rb +54 -0
  121. data/test/perl_output/chart_gauge.xlsx +0 -0
  122. data/test/perl_output/chart_line.xlsx +0 -0
  123. data/test/perl_output/comments2.xlsx +0 -0
  124. data/test/perl_output/formats.xlsx +0 -0
  125. data/test/perl_output/tables.xlsx +0 -0
  126. data/test/regression/images/happy.jpg +0 -0
  127. data/test/regression/images/red2.png +0 -0
  128. data/test/regression/test_array_formula03.rb +36 -0
  129. data/test/regression/test_autofilter08.rb +110 -0
  130. data/test/regression/test_autofilter09.rb +110 -0
  131. data/test/regression/test_autofilter10.rb +110 -0
  132. data/test/regression/test_chart_axis26.rb +10 -8
  133. data/test/regression/test_chart_axis27.rb +1 -1
  134. data/test/regression/test_chart_axis28.rb +1 -1
  135. data/test/regression/test_chart_axis29.rb +1 -1
  136. data/test/regression/test_chart_axis33.rb +1 -1
  137. data/test/regression/test_chart_axis42.rb +44 -0
  138. data/test/regression/test_chart_axis43.rb +44 -0
  139. data/test/regression/test_chart_axis44.rb +54 -0
  140. data/test/regression/test_chart_axis45.rb +54 -0
  141. data/test/regression/test_chart_axis46.rb +54 -0
  142. data/test/regression/test_chart_combined10.rb +43 -0
  143. data/test/regression/test_chart_combined11.rb +63 -0
  144. data/test/regression/test_chart_data_labels25.rb +1 -1
  145. data/test/regression/test_chart_doughnut07.rb +37 -0
  146. data/test/regression/test_chart_font09.rb +1 -1
  147. data/test/regression/test_chart_legend03.rb +41 -0
  148. data/test/regression/test_chart_legend04.rb +41 -0
  149. data/test/regression/test_chart_legend05.rb +41 -0
  150. data/test/regression/test_chart_legend06.rb +41 -0
  151. data/test/regression/test_chart_legend07.rb +38 -0
  152. data/test/regression/test_chart_line05.rb +43 -0
  153. data/test/regression/test_chart_line06.rb +43 -0
  154. data/test/regression/test_chart_size03.rb +4 -1
  155. data/test/regression/test_comment13.rb +36 -0
  156. data/test/regression/test_comment14.rb +29 -0
  157. data/test/regression/test_comment15.rb +28 -0
  158. data/test/regression/test_comment16.rb +34 -0
  159. data/test/regression/test_cond_format19.rb +64 -0
  160. data/test/regression/test_cond_format20.rb +43 -0
  161. data/test/regression/test_format15.rb +26 -0
  162. data/test/regression/test_header_image15.rb +36 -0
  163. data/test/regression/test_header_image16.rb +42 -0
  164. data/test/regression/test_header_image17.rb +46 -0
  165. data/test/regression/test_header_image18.rb +48 -0
  166. data/test/regression/test_header_image19.rb +36 -0
  167. data/test/regression/test_hyperlink32.rb +27 -0
  168. data/test/regression/test_hyperlink33.rb +28 -0
  169. data/test/regression/test_hyperlink34.rb +33 -0
  170. data/test/regression/test_hyperlink35.rb +39 -0
  171. data/test/regression/test_hyperlink36.rb +34 -0
  172. data/test/regression/test_hyperlink37.rb +33 -0
  173. data/test/regression/test_hyperlink38.rb +27 -0
  174. data/test/regression/test_hyperlink39.rb +27 -0
  175. data/test/regression/test_hyperlink40.rb +27 -0
  176. data/test/regression/test_hyperlink41.rb +27 -0
  177. data/test/regression/test_hyperlink42.rb +27 -0
  178. data/test/regression/test_hyperlink43.rb +27 -0
  179. data/test/regression/test_hyperlink44.rb +27 -0
  180. data/test/regression/test_hyperlink45.rb +27 -0
  181. data/test/regression/test_hyperlink47.rb +27 -0
  182. data/test/regression/test_hyperlink48.rb +31 -0
  183. data/test/regression/test_hyperlink49.rb +29 -0
  184. data/test/regression/test_image06.rb +5 -5
  185. data/test/regression/test_image08.rb +5 -4
  186. data/test/regression/test_image15.rb +4 -2
  187. data/test/regression/test_image28.rb +1 -1
  188. data/test/regression/test_image36.rb +26 -0
  189. data/test/regression/test_image44.rb +28 -0
  190. data/test/regression/test_image45.rb +29 -0
  191. data/test/regression/test_image46.rb +29 -0
  192. data/test/regression/test_image47.rb +28 -0
  193. data/test/regression/test_image48.rb +32 -0
  194. data/test/regression/test_image49.rb +38 -0
  195. data/test/regression/test_image50.rb +24 -0
  196. data/test/regression/test_image51.rb +30 -0
  197. data/test/regression/test_object_position01.rb +26 -0
  198. data/test/regression/test_object_position02.rb +26 -0
  199. data/test/regression/test_object_position03.rb +26 -0
  200. data/test/regression/test_object_position04.rb +44 -0
  201. data/test/regression/test_object_position06.rb +28 -0
  202. data/test/regression/test_object_position07.rb +28 -0
  203. data/test/regression/test_object_position08.rb +47 -0
  204. data/test/regression/test_object_position09.rb +50 -0
  205. data/test/regression/test_object_position10.rb +28 -0
  206. data/test/regression/test_object_position12.rb +25 -0
  207. data/test/regression/test_object_position13.rb +25 -0
  208. data/test/regression/test_object_position14.rb +25 -0
  209. data/test/regression/test_object_position15.rb +29 -0
  210. data/test/regression/test_object_position16.rb +29 -0
  211. data/test/regression/test_object_position17.rb +29 -0
  212. data/test/regression/test_object_position18.rb +29 -0
  213. data/test/regression/test_object_position19.rb +29 -0
  214. data/test/regression/test_object_position20.rb +29 -0
  215. data/test/regression/test_shape_connect01.rb +4 -2
  216. data/test/regression/test_table23.rb +56 -0
  217. data/test/regression/test_table24.rb +27 -0
  218. data/test/regression/test_table25.rb +27 -0
  219. data/test/regression/xlsx_files/array_formula03.xlsx +0 -0
  220. data/test/regression/xlsx_files/autofilter08.xlsx +0 -0
  221. data/test/regression/xlsx_files/autofilter09.xlsx +0 -0
  222. data/test/regression/xlsx_files/autofilter10.xlsx +0 -0
  223. data/test/regression/xlsx_files/chart_axis26.xlsx +0 -0
  224. data/test/regression/xlsx_files/chart_axis27.xlsx +0 -0
  225. data/test/regression/xlsx_files/chart_axis28.xlsx +0 -0
  226. data/test/regression/xlsx_files/chart_axis29.xlsx +0 -0
  227. data/test/regression/xlsx_files/chart_axis33.xlsx +0 -0
  228. data/test/regression/xlsx_files/chart_axis42.xlsx +0 -0
  229. data/test/regression/xlsx_files/chart_axis43.xlsx +0 -0
  230. data/test/regression/xlsx_files/chart_axis44.xlsx +0 -0
  231. data/test/regression/xlsx_files/chart_axis45.xlsx +0 -0
  232. data/test/regression/xlsx_files/chart_axis46.xlsx +0 -0
  233. data/test/regression/xlsx_files/chart_combined10.xlsx +0 -0
  234. data/test/regression/xlsx_files/chart_combined11.xlsx +0 -0
  235. data/test/regression/xlsx_files/chart_data_labels25.xlsx +0 -0
  236. data/test/regression/xlsx_files/chart_doughnut07.xlsx +0 -0
  237. data/test/regression/xlsx_files/chart_font09.xlsx +0 -0
  238. data/test/regression/xlsx_files/chart_legend03.xlsx +0 -0
  239. data/test/regression/xlsx_files/chart_legend04.xlsx +0 -0
  240. data/test/regression/xlsx_files/chart_legend05.xlsx +0 -0
  241. data/test/regression/xlsx_files/chart_legend06.xlsx +0 -0
  242. data/test/regression/xlsx_files/chart_legend07.xlsx +0 -0
  243. data/test/regression/xlsx_files/chart_line05.xlsx +0 -0
  244. data/test/regression/xlsx_files/chart_line06.xlsx +0 -0
  245. data/test/regression/xlsx_files/comment13.xlsx +0 -0
  246. data/test/regression/xlsx_files/comment14.xlsx +0 -0
  247. data/test/regression/xlsx_files/comment15.xlsx +0 -0
  248. data/test/regression/xlsx_files/comment16.xlsx +0 -0
  249. data/test/regression/xlsx_files/cond_format19.xlsx +0 -0
  250. data/test/regression/xlsx_files/cond_format20.xlsx +0 -0
  251. data/test/regression/xlsx_files/format15.xlsx +0 -0
  252. data/test/regression/xlsx_files/header_image15.xlsx +0 -0
  253. data/test/regression/xlsx_files/header_image16.xlsx +0 -0
  254. data/test/regression/xlsx_files/header_image17.xlsx +0 -0
  255. data/test/regression/xlsx_files/header_image18.xlsx +0 -0
  256. data/test/regression/xlsx_files/header_image19.xlsx +0 -0
  257. data/test/regression/xlsx_files/hyperlink32.xlsx +0 -0
  258. data/test/regression/xlsx_files/hyperlink33.xlsx +0 -0
  259. data/test/regression/xlsx_files/hyperlink34.xlsx +0 -0
  260. data/test/regression/xlsx_files/hyperlink35.xlsx +0 -0
  261. data/test/regression/xlsx_files/hyperlink36.xlsx +0 -0
  262. data/test/regression/xlsx_files/hyperlink37.xlsx +0 -0
  263. data/test/regression/xlsx_files/hyperlink38.xlsx +0 -0
  264. data/test/regression/xlsx_files/hyperlink39.xlsx +0 -0
  265. data/test/regression/xlsx_files/hyperlink40.xlsx +0 -0
  266. data/test/regression/xlsx_files/hyperlink41.xlsx +0 -0
  267. data/test/regression/xlsx_files/hyperlink42.xlsx +0 -0
  268. data/test/regression/xlsx_files/hyperlink43.xlsx +0 -0
  269. data/test/regression/xlsx_files/hyperlink44.xlsx +0 -0
  270. data/test/regression/xlsx_files/hyperlink45.xlsx +0 -0
  271. data/test/regression/xlsx_files/hyperlink46.xlsx +0 -0
  272. data/test/regression/xlsx_files/hyperlink47.xlsx +0 -0
  273. data/test/regression/xlsx_files/hyperlink48.xlsx +0 -0
  274. data/test/regression/xlsx_files/hyperlink49.xlsx +0 -0
  275. data/test/regression/xlsx_files/image06.xlsx +0 -0
  276. data/test/regression/xlsx_files/image36.xlsx +0 -0
  277. data/test/regression/xlsx_files/image44.xlsx +0 -0
  278. data/test/regression/xlsx_files/image45.xlsx +0 -0
  279. data/test/regression/xlsx_files/image46.xlsx +0 -0
  280. data/test/regression/xlsx_files/image47.xlsx +0 -0
  281. data/test/regression/xlsx_files/image48.xlsx +0 -0
  282. data/test/regression/xlsx_files/image49.xlsx +0 -0
  283. data/test/regression/xlsx_files/image50.xlsx +0 -0
  284. data/test/regression/xlsx_files/image51.xlsx +0 -0
  285. data/test/regression/xlsx_files/object_position01.xlsx +0 -0
  286. data/test/regression/xlsx_files/object_position02.xlsx +0 -0
  287. data/test/regression/xlsx_files/object_position03.xlsx +0 -0
  288. data/test/regression/xlsx_files/object_position04.xlsx +0 -0
  289. data/test/regression/xlsx_files/object_position06.xlsx +0 -0
  290. data/test/regression/xlsx_files/object_position07.xlsx +0 -0
  291. data/test/regression/xlsx_files/object_position08.xlsx +0 -0
  292. data/test/regression/xlsx_files/object_position09.xlsx +0 -0
  293. data/test/regression/xlsx_files/object_position10.xlsx +0 -0
  294. data/test/regression/xlsx_files/object_position12.xlsx +0 -0
  295. data/test/regression/xlsx_files/object_position13.xlsx +0 -0
  296. data/test/regression/xlsx_files/object_position14.xlsx +0 -0
  297. data/test/regression/xlsx_files/object_position15.xlsx +0 -0
  298. data/test/regression/xlsx_files/object_position16.xlsx +0 -0
  299. data/test/regression/xlsx_files/object_position17.xlsx +0 -0
  300. data/test/regression/xlsx_files/object_position18.xlsx +0 -0
  301. data/test/regression/xlsx_files/object_position19.xlsx +0 -0
  302. data/test/regression/xlsx_files/object_position20.xlsx +0 -0
  303. data/test/regression/xlsx_files/table23.xlsx +0 -0
  304. data/test/regression/xlsx_files/table24.xlsx +0 -0
  305. data/test/regression/xlsx_files/table25.xlsx +0 -0
  306. data/test/test_example_match.rb +955 -780
  307. data/test/workbook/test_check_sheetname.rb +51 -0
  308. data/test/workbook/test_write_workbook_view.rb +36 -0
  309. data/test/worksheet/test_write_data_validation_02.rb +17 -0
  310. data/test/worksheet/test_write_sheet_view.rb +19 -1
  311. data/write_xlsx.gemspec +1 -0
  312. metadata +349 -7
  313. data/test/package/comments/test_write_text_t.rb +0 -44
@@ -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, cxn03651@msj.biglobe.ne.jp
9
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
10
10
  #
11
11
 
12
12
  require 'write_xlsx'
@@ -18,9 +18,9 @@
18
18
  # Add the worksheet data that the charts will refer to.
19
19
  headings = [ 'Number', 'Batch 1', 'Batch 2' ]
20
20
  data = [
21
- [ 2, 3, 4, 5, 6, 7 ],
22
- [ 10, 40, 50, 20, 10, 50 ],
23
- [ 30, 60, 70, 50, 40, 30 ]
21
+ [ 2, 3, 4, 5, 6, 7 ],
22
+ [ 10, 40, 50, 20, 10, 50 ],
23
+ [ 30, 60, 70, 50, 40, 30 ]
24
24
  ]
25
25
 
26
26
  worksheet.write('A1', headings, bold)
@@ -31,21 +31,21 @@
31
31
 
32
32
  # Configure the first series.
33
33
  chart.add_series(
34
- :name => '=Sheet1!$B$1',
35
- :categories => '=Sheet1!$A$2:$A$7',
36
- :values => '=Sheet1!$B$2:$B$7'
34
+ :name => '=Sheet1!$B$1',
35
+ :categories => '=Sheet1!$A$2:$A$7',
36
+ :values => '=Sheet1!$B$2:$B$7'
37
37
  )
38
38
 
39
39
  # Configure second series. Note alternative use of array ref to define
40
40
  # ranges: [ sheetname, row_start, row_end, col_start, col_end ].
41
41
  chart.add_series(
42
- :name => '=Sheet1!$C$1',
43
- :categories => [ 'Sheet1', 1, 6, 0, 0 ],
44
- :values => [ 'Sheet1', 1, 6, 2, 2 ]
42
+ :name => '=Sheet1!$C$1',
43
+ :categories => [ 'Sheet1', 1, 6, 0, 0 ],
44
+ :values => [ 'Sheet1', 1, 6, 2, 2 ]
45
45
  )
46
46
 
47
47
  # Add a chart title and some axis labels.
48
- chart.set_title(:name => 'Results of sample analysis')
48
+ chart.set_title(:name => 'Results of sample analysis')
49
49
  chart.set_x_axis(:name => 'Test number')
50
50
  chart.set_y_axis(:name => 'Sample length (mm)')
51
51
 
@@ -53,6 +53,84 @@
53
53
  chart.set_style(10)
54
54
 
55
55
  # Insert the chart into the worksheet (with an offset).
56
- worksheet.insert_chart('D2', chart, 25, 10)
56
+ worksheet.insert_chart(
57
+ 'D2', chart,
58
+ :x_offset => 25, :y_offset => 10
59
+ )
60
+
61
+ #
62
+ # Create a stacked chart sub-type
63
+ #
64
+ chart2 = workbook.add_chart(
65
+ :type => 'line',
66
+ :embedded => 1,
67
+ :subtype => 'stacked'
68
+ )
69
+
70
+ # Configure the first series.
71
+ chart2.add_series(
72
+ :name => '=Sheet1!$B$1',
73
+ :categories => '=Sheet1!$A$2:$A$7',
74
+ :values => '=Sheet1!$B$2:$B$7'
75
+ )
76
+
77
+ # Configure second series.
78
+ chart2.add_series(
79
+ :name => '=Sheet1!$C$1',
80
+ :categories => [ 'Sheet1', 1, 6, 0, 0 ],
81
+ :values => [ 'Sheet1', 1, 6, 2, 2 ]
82
+ )
83
+
84
+ # Add a chart title and some axis labels.
85
+ chart2.set_title ( :name => 'Stacked Chart' )
86
+ chart2.set_x_axis( :name => 'Test number' )
87
+ chart2.set_y_axis( :name => 'Sample length (mm)' )
88
+
89
+ # Set an Excel chart style. Blue colors with white outline and shadow.
90
+ chart2.set_style( 12 )
91
+
92
+ # Insert the chart into the worksheet (with an offset).
93
+ worksheet.insert_chart(
94
+ 'D18', chart2,
95
+ { :x_offset => 25, :y_offset => 10 }
96
+ )
97
+
98
+
99
+ #
100
+ # Create a percent stacked chart sub-type
101
+ #
102
+ chart3 = workbook.add_chart(
103
+ :type => 'line',
104
+ :embedded => 1,
105
+ :subtype => 'percent_stacked'
106
+ )
107
+
108
+ # Configure the first series.
109
+ chart3.add_series(
110
+ :name => '=Sheet1!$B$1',
111
+ :categories => '=Sheet1!$A$2:$A$7',
112
+ :values => '=Sheet1!$B$2:$B$7'
113
+ )
114
+
115
+ # Configure second series.
116
+ chart3.add_series(
117
+ :name => '=Sheet1!$C$1',
118
+ :categories => [ 'Sheet1', 1, 6, 0, 0 ],
119
+ :values => [ 'Sheet1', 1, 6, 2, 2 ]
120
+ )
121
+
122
+ # Add a chart title and some axis labels.
123
+ chart3.set_title ( :name => 'Percent Stacked Chart' )
124
+ chart3.set_x_axis( :name => 'Test number' )
125
+ chart3.set_y_axis( :name => 'Sample length (mm)' )
126
+
127
+ # Set an Excel chart style. Blue colors with white outline and shadow.
128
+ chart3.set_style( 13 )
129
+
130
+ # Insert the chart into the worksheet (with an offset).
131
+ worksheet.insert_chart(
132
+ 'D34', chart3,
133
+ { :x_offset => 25, :y_offset => 10 }
134
+ )
57
135
 
58
136
  workbook.close
@@ -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, cxn03651@msj.biglobe.ne.jp
9
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
10
10
  #
11
11
 
12
12
  require 'write_xlsx'
@@ -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, cxn03651@msj.biglobe.ne.jp
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('C2', chart1, 25, 10)
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('C18', chart2, 25, 10)
80
+ worksheet.insert_chart(
81
+ 'C18', chart2,
82
+ :x_offset => 25, :y_offset => 10
83
+ )
78
84
 
79
85
  workbook.close
@@ -6,7 +6,7 @@
6
6
  # A demo of an Area chart in Excel::Writer::XLSX.
7
7
  #
8
8
  # reverse ('(c)'), October 2012, John McNamara, jmcnamara@cpan.org
9
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
9
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
10
10
  #
11
11
 
12
12
  require 'write_xlsx'
@@ -53,7 +53,10 @@
53
53
  chart1.set_style(11)
54
54
 
55
55
  # Insert the chart into the worksheet (with an offset).
56
- worksheet.insert_chart('D2', chart1, 25, 10)
56
+ worksheet.insert_chart(
57
+ 'D2', chart1,
58
+ :x_offset => 25, :y_offset => 10
59
+ )
57
60
 
58
61
  #
59
62
  # Create a with_markers chart sub-type
@@ -87,7 +90,10 @@
87
90
  chart2.set_style(12)
88
91
 
89
92
  # Insert the chart into the worksheet (with an offset).
90
- worksheet.insert_chart('D18', chart2, 25, 11)
93
+ worksheet.insert_chart(
94
+ 'D18', chart2,
95
+ :x_offset => 25, :y_offset => 10
96
+ )
91
97
 
92
98
  #
93
99
  # Create a filled chart sub-type
@@ -121,6 +127,9 @@
121
127
  chart3.set_style(13)
122
128
 
123
129
  # Insert the chart into the worksheet (with an offset).
124
- worksheet.insert_chart('D34', chart3, 25, 11)
130
+ worksheet.insert_chart(
131
+ 'D34', chart3,
132
+ :x_offset => 25, :y_offset => 10
133
+ )
125
134
 
126
135
  workbook.close
@@ -6,7 +6,7 @@
6
6
  # A demo of a Scatter 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, cxn03651@msj.biglobe.ne.jp
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('D2', chart, 25, 10)
56
+ worksheet.insert_chart(
57
+ 'D2', chart,
58
+ :x_offset => 25, :y_offset => 10
59
+ )
57
60
 
58
61
  workbook.close
@@ -6,7 +6,7 @@
6
6
  # A demo of a Line chart with a secondary axis in WriteXLSX.
7
7
  #
8
8
  # reverse(c), March 2011, John McNamara, jmcnamara@cpan.org
9
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
9
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
10
10
  #
11
11
 
12
12
  require 'write_xlsx'
@@ -49,6 +49,9 @@
49
49
  chart.set_y2_axis(:name => 'Laser wounds')
50
50
 
51
51
  # Insert the chart into the worksheet (with an offset).
52
- worksheet.insert_chart('D2', chart, 25, 10)
52
+ worksheet.insert_chart(
53
+ 'D2', chart,
54
+ :x_offset => 25, :y_offset => 10
55
+ )
53
56
 
54
57
  workbook.close
@@ -6,7 +6,7 @@
6
6
  # A demo of a Stock 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, cxn03651@msj.biglobe.ne.jp
9
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
10
10
  #
11
11
 
12
12
  require 'write_xlsx'
@@ -8,7 +8,7 @@
8
8
  # styles available in Excel 2013.
9
9
  #
10
10
  # reverse ('(c)'), March 2015, John McNamara, jmcnamara@cpan.org
11
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
11
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
12
12
  #
13
13
 
14
14
  require 'write_xlsx'
data/examples/colors.rb CHANGED
@@ -12,7 +12,7 @@
12
12
  # reverse('©'), March 2002, John McNamara, jmcnamara@cpan.org
13
13
  #
14
14
  # original written in Perl by John McNamara
15
- # converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
15
+ # converted to Ruby by Hideo Nakamura, nakamura.hideo@gmail.com
16
16
  #
17
17
 
18
18
  require 'write_xlsx'
@@ -9,7 +9,7 @@
9
9
  # reverse('©'), August 2008, John McNamara, jmcnamara@cpan.org
10
10
  #
11
11
  # original written in Perl by John McNamara
12
- # converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
12
+ # converted to Ruby by Hideo Nakamura, nakamura.hideo@gmail.com
13
13
  #
14
14
 
15
15
  require 'write_xlsx'
@@ -7,7 +7,7 @@
7
7
  # Worksheet#write_date_time.
8
8
  #
9
9
  # reverse(c), March 2001, John McNamara, jmcnamara@cpan.org
10
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
10
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
11
11
  #
12
12
 
13
13
  require 'write_xlsx'
data/examples/demo.rb CHANGED
@@ -83,7 +83,10 @@
83
83
  # Images
84
84
  #
85
85
  worksheet.write('A10', "Images")
86
- worksheet.insert_image('B10', 'republic.png', 16, 8)
86
+ worksheet.insert_image(
87
+ 'B10', 'republic.png',
88
+ :x_offset => 16, :y_offset => 8
89
+ )
87
90
 
88
91
 
89
92
  #######################################################################
data/examples/formats.rb CHANGED
@@ -10,7 +10,7 @@
10
10
  # in the various formatting possibilities.
11
11
  #
12
12
  # reverse('ゥ'), September 2002, John McNamara, jmcnamara@cpan.org
13
- # convert to Ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
13
+ # convert to Ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
14
14
  #
15
15
 
16
16
  require 'write_xlsx'
data/examples/headers.rb CHANGED
@@ -35,7 +35,7 @@
35
35
  #
36
36
  # reverse(c), March 2002, John McNamara, jmcnamara@cpan.org
37
37
  #
38
- # converted to ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
38
+ # converted to ruby by Hideo Nakamura, nakamura.hideo@gmail.com
39
39
 
40
40
  require 'write_xlsx'
41
41
 
@@ -8,7 +8,7 @@
8
8
  # Excel uses an optimisation to hide all rows that don't have data.
9
9
  #
10
10
  # reverse ('(c)'), December 2012, John McNamara, jmcnamara@cpan.org
11
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
11
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
12
12
  #
13
13
 
14
14
  require 'write_xlsx'
@@ -6,7 +6,7 @@
6
6
  # Example of how to hide a worksheet with Excel::Writer::XLSX.
7
7
  #
8
8
  # reverse('c'), April 2005, John McNamara, jmcnamara@cpan.org
9
- # convert to ruby by Hideo, Nakamura, cxn03651@msj.biglobe.ne.jp
9
+ # convert to ruby by Hideo, Nakamura, nakamura.hideo@gmail.com
10
10
  #
11
11
  require 'write_xlsx'
12
12
 
@@ -8,7 +8,7 @@
8
8
  # See also hyperlink2.pl for worksheet URL examples.
9
9
  #
10
10
  # reverse(c), May 2004, John McNamara, jmcnamara@cpan.org
11
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
11
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
12
12
  #
13
13
 
14
14
  require 'write_xlsx'
data/examples/indent.rb CHANGED
@@ -8,7 +8,7 @@
8
8
  # This program demonstrates the indentation cell format.
9
9
  #
10
10
  # reverse(c), May 2004, John McNamara, jmcnamara@cpan.org
11
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
11
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
12
12
  #
13
13
 
14
14
  require 'write_xlsx'
data/examples/macros.rb CHANGED
@@ -12,7 +12,7 @@
12
12
  # An embedded macro is connected to a form button on the worksheet.
13
13
  #
14
14
  # reverse(c), November 2012, John McNamara, jmcnamara@cpan.org
15
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
15
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
16
16
  #
17
17
 
18
18
  require 'write_xlsx'
data/examples/merge1.rb CHANGED
@@ -11,7 +11,7 @@
11
11
  # See the merge3.pl - merge6.pl programs.
12
12
  #
13
13
  # reverse(c), August 2002, John McNamara, jmcnamara@cpan.org
14
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
14
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
15
15
  #
16
16
  require 'write_xlsx'
17
17
 
data/examples/merge2.rb CHANGED
@@ -11,7 +11,7 @@
11
11
  # See the merge3.pl - merge6.pl programs.
12
12
  #
13
13
  # reverse(c), August 2002, John McNamara, jmcnamara@cpan.org
14
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
14
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
15
15
  #
16
16
 
17
17
  require 'write_xlsx'
data/examples/merge3.rb CHANGED
@@ -7,7 +7,7 @@
7
7
  # merged cell.
8
8
  #
9
9
  # reverse(c), September 2002, John McNamara, jmcnamara@cpan.org
10
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
10
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
11
11
  #
12
12
 
13
13
  require 'write_xlsx'
data/examples/merge4.rb CHANGED
@@ -7,7 +7,7 @@
7
7
  # method with complex formatting.
8
8
  #
9
9
  # reverse(c), September 2002, John McNamara, jmcnamara@cpan.org
10
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
10
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
11
11
  #
12
12
 
13
13
  require 'write_xlsx'
data/examples/merge5.rb CHANGED
@@ -8,7 +8,7 @@
8
8
  #
9
9
  #
10
10
  # reverse(c), September 2002, John McNamara, jmcnamara@cpan.org
11
- # convert to ruby by Hideo NAKAMURA, cxn03651@msj.biglobe.ne.jp
11
+ # convert to ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
12
12
  #
13
13
 
14
14
  require 'write_xlsx'