aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbnewbold <bnewbold@robocracy.org>2016-02-21 18:08:55 -0800
committerbnewbold <bnewbold@robocracy.org>2016-02-21 18:08:55 -0800
commitb24f282bca4af63982937c10835063d3e6e9eb74 (patch)
treefd8c58601beb3964ccecf4709f7b28944fc1c36b
parent84572be10cdfc852530787a5dc78ddef3e0f23cd (diff)
downloadPyX.jl-b24f282bca4af63982937c10835063d3e6e9eb74.tar.gz
PyX.jl-b24f282bca4af63982937c10835063d3e6e9eb74.zip
add many, many more example conversions. still not complete
-rw-r--r--examples/3dgraphs/bar.jl28
-rw-r--r--examples/3dgraphs/color.dat961
-rw-r--r--examples/3dgraphs/color.jl21
-rw-r--r--examples/3dgraphs/grid.dat961
-rw-r--r--examples/3dgraphs/grid.jl18
-rw-r--r--examples/bargraphs/changebar.jl17
-rw-r--r--examples/bargraphs/compare.jl22
-rw-r--r--examples/bargraphs/errors.jl35
-rw-r--r--examples/bargraphs/fromvalue.jl19
-rw-r--r--examples/bargraphs/minimal.dat12
-rw-r--r--examples/bargraphs/minimal.jl15
-rw-r--r--examples/bargraphs/month.jl27
-rw-r--r--examples/bargraphs/stacked.jl27
-rw-r--r--examples/drawing/arrow.jl23
-rw-r--r--examples/drawing/metapost.jl.broken51
-rw-r--r--examples/drawing/path.jl20
-rw-r--r--examples/drawing/pathitem.jl46
-rw-r--r--examples/drawing/strokefill.jl20
-rw-r--r--examples/drawing/style.jl29
-rw-r--r--examples/drawing2d/clipping.jl33
-rw-r--r--examples/drawing2d/ellipse.jl36
-rw-r--r--examples/drawing2d/insert.jl32
-rw-r--r--examples/drawing2d/parallel.jl23
-rw-r--r--examples/drawing2d/smoothed.jl23
-rw-r--r--examples/graphstyles/density.jl86
-rw-r--r--examples/graphstyles/errorbar.dat6
-rw-r--r--examples/graphstyles/errorbar.jl19
-rw-r--r--examples/graphstyles/histogram.jl29
-rw-r--r--examples/graphstyles/usesymbol.jl41
-rw-r--r--examples/splitgraphs/minimal.jl25
-rw-r--r--examples/splitgraphs/splitatvalue.jl23
-rw-r--r--test/runtests.jl34
32 files changed, 2761 insertions, 1 deletions
diff --git a/examples/3dgraphs/bar.jl b/examples/3dgraphs/bar.jl
new file mode 100644
index 0000000..a70f2b2
--- /dev/null
+++ b/examples/3dgraphs/bar.jl
@@ -0,0 +1,28 @@
+
+# Original Python:
+# from pyx import *
+#
+# g = graph.graphxyz(0, 0, size=5, x=graph.axis.bar(), y=graph.axis.bar(), z=nothing, z2=graph.axis.lin())
+# g.plot(graph.data.data(graph.data.points([[1, 1, 1.4], [1, 2, 1.8], [2, 1, -0.5], [2, 2, 0.9]]), xname=1, yname=2, z2=3),
+# [graph.style.barpos(fromvalue=0, frompathattrs=nothing), graph.style.bar(barattrs=[style.linejoin.bevel])])
+# g.writeEPSfile("bar")
+# g.writePDFfile("bar")
+# g.writeSVGfile("bar")
+
+
+using PyX
+
+g = graph.graphxyz(0, 0, size=5,
+ x=graph_axis.bar(),
+ y=graph_axis.bar(),
+ z=nothing,
+ z2=graph_axis.lin())
+plot(g, graph_data.data(graph_data.points([[1 1 1.4];
+ [1 2 1.8];
+ [2 1 -0.5];
+ [2 2 0.9]]), xname=1, yname=2, z2=3),
+ [graph_style.barpos(fromvalue=0, frompathattrs=nothing),
+ graph_style.bar(barattrs=[style_linejoin.bevel])])
+writeEPSfile(g, "bar")
+writePDFfile(g, "bar")
+
diff --git a/examples/3dgraphs/color.dat b/examples/3dgraphs/color.dat
new file mode 100644
index 0000000..9986579
--- /dev/null
+++ b/examples/3dgraphs/color.dat
@@ -0,0 +1,961 @@
+0 0 +2.744434246094877e-06
+0 1 +2.518061584101027e-06
+0 2 +1.759486087349929e-06
+0 3 +9.970876191013776e-07
+0 4 +3.824133190986796e-06
+0 5 +2.975115378597332e-05
+0 6 +1.699285851675448e-04
+0 7 +6.720788024534639e-04
+0 8 +1.792832060948163e-03
+0 9 +3.200655253796644e-03
+0 10 +3.816618683189747e-03
+0 11 +3.032150111960852e-03
+0 12 +1.590229109988915e-03
+0 13 +5.326214926640671e-04
+0 14 +9.904354320939544e-05
+0 15 +9.357929797648389e-06
+0 16 +9.904354320939544e-05
+0 17 +5.326214926640671e-04
+0 18 +1.590229109988915e-03
+0 19 +3.032150111960852e-03
+0 20 +3.816618683189747e-03
+0 21 +3.200655253796644e-03
+0 22 +1.792832060948163e-03
+0 23 +6.720788024534639e-04
+0 24 +1.699285851675448e-04
+0 25 +2.975115378597332e-05
+0 26 +3.824133190986796e-06
+0 27 +9.970876191013776e-07
+0 28 +1.759486087349929e-06
+0 29 +2.518061584101027e-06
+0 30 +2.744434246094877e-06
+1 0 +1.653567652207974e-06
+1 1 +2.080019415431434e-06
+1 2 +2.256392327443844e-06
+1 3 +2.353042222660531e-06
+1 4 +4.658691276947686e-06
+1 5 +2.435782462200616e-05
+1 6 +1.490972431055931e-04
+1 7 +6.377284017517769e-04
+1 8 +1.771582235157512e-03
+1 9 +3.225933640796166e-03
+1 10 +3.906803557194595e-03
+1 11 +3.197308254883010e-03
+1 12 +1.817291725241250e-03
+1 13 +7.630389801230493e-04
+1 14 +2.807603469492349e-04
+1 15 +1.608446672699473e-04
+1 16 +2.807603469492349e-04
+1 17 +7.630389801230493e-04
+1 18 +1.817291725241250e-03
+1 19 +3.197308254883010e-03
+1 20 +3.906803557194595e-03
+1 21 +3.225933640796166e-03
+1 22 +1.771582235157512e-03
+1 23 +6.377284017517769e-04
+1 24 +1.490972431055931e-04
+1 25 +2.435782462200616e-05
+1 26 +4.658691276947686e-06
+1 27 +2.353042222660531e-06
+1 28 +2.256392327443844e-06
+1 29 +2.080019415431434e-06
+1 30 +1.653567652207974e-06
+2 0 +4.903222446513287e-07
+2 1 +1.470523991761591e-06
+2 2 +2.270477656555739e-06
+2 3 +1.893286577894258e-06
+2 4 +8.875040369628528e-07
+2 5 +1.382699095923903e-05
+2 6 +1.323259508158545e-04
+2 7 +6.252257214541712e-04
+2 8 +1.780184015590029e-03
+2 9 +3.259559977840245e-03
+2 10 +3.952100806252818e-03
+2 11 +3.252471803511440e-03
+2 12 +1.899491987795393e-03
+2 13 +8.762282695816127e-04
+2 14 +4.087748017613867e-04
+2 15 +2.912636182938809e-04
+2 16 +4.087748017613867e-04
+2 17 +8.762282695816127e-04
+2 18 +1.899491987795393e-03
+2 19 +3.252471803511440e-03
+2 20 +3.952100806252818e-03
+2 21 +3.259559977840245e-03
+2 22 +1.780184015590029e-03
+2 23 +6.252257214541712e-04
+2 24 +1.323259508158545e-04
+2 25 +1.382699095923903e-05
+2 26 +8.875040369628528e-07
+2 27 +1.893286577894258e-06
+2 28 +2.270477656555739e-06
+2 29 +1.470523991761591e-06
+2 30 +4.903222446513287e-07
+3 0 +2.525077324128639e-07
+3 1 +1.411976960236152e-06
+3 2 +2.585027402357342e-06
+3 3 +2.455329005085701e-06
+3 4 +1.524299827202244e-06
+3 5 +1.730855351620528e-05
+3 6 +1.485538901683144e-04
+3 7 +6.672169413806638e-04
+3 8 +1.845851704536038e-03
+3 9 +3.314019707590146e-03
+3 10 +3.938097395997995e-03
+3 11 +3.137337133297499e-03
+3 12 +1.714725940474006e-03
+3 13 +6.894032775764756e-04
+3 14 +2.562722332523367e-04
+3 15 +1.572414788470460e-04
+3 16 +2.562722332523367e-04
+3 17 +6.894032775764756e-04
+3 18 +1.714725940474006e-03
+3 19 +3.137337133297499e-03
+3 20 +3.938097395997995e-03
+3 21 +3.314019707590146e-03
+3 22 +1.845851704536038e-03
+3 23 +6.672169413806638e-04
+3 24 +1.485538901683144e-04
+3 25 +1.730855351620528e-05
+3 26 +1.524299827202244e-06
+3 27 +2.455329005085701e-06
+3 28 +2.585027402357342e-06
+3 29 +1.411976960236152e-06
+3 30 +2.525077324128639e-07
+4 0 +1.226989384095427e-06
+4 1 +2.143934503008343e-06
+4 2 +3.419052137664231e-06
+4 3 +5.044497070280032e-06
+4 4 +1.019883325351201e-05
+4 5 +4.134677767967157e-05
+4 6 +2.024165951452637e-04
+4 7 +7.595561633249549e-04
+4 8 +1.957907998196094e-03
+4 9 +3.390836776047649e-03
+4 10 +3.907691866900613e-03
+4 11 +2.958824680334640e-03
+4 12 +1.433416637054468e-03
+4 13 +4.183160198044826e-04
+4 14 +6.825032672642671e-05
+4 15 +1.565122491813854e-05
+4 16 +6.825032672642671e-05
+4 17 +4.183160198044826e-04
+4 18 +1.433416637054468e-03
+4 19 +2.958824680334640e-03
+4 20 +3.907691866900613e-03
+4 21 +3.390836776047649e-03
+4 22 +1.957907998196094e-03
+4 23 +7.595561633249549e-04
+4 24 +2.024165951452637e-04
+4 25 +4.134677767967157e-05
+4 26 +1.019883325351201e-05
+4 27 +5.044497070280032e-06
+4 28 +3.419052137664231e-06
+4 29 +2.143934503008343e-06
+4 30 +1.226989384095427e-06
+5 0 +2.307317576927403e-06
+5 1 +2.716699175289595e-06
+5 2 +3.392503181823541e-06
+5 3 +5.499844452398325e-06
+5 4 +1.535221942328690e-05
+5 5 +6.146497948927013e-05
+5 6 +2.527173255797678e-04
+5 7 +8.466746072201876e-04
+5 8 +2.063200871238251e-03
+5 9 +3.474385548526664e-03
+5 10 +3.926889486415615e-03
+5 11 +2.892497988275950e-03
+5 12 +1.312540781600459e-03
+5 13 +3.136255923160151e-04
+5 14 +2.172446734687579e-05
+5 15 +7.019738683128956e-09
+5 16 +2.172446734687579e-05
+5 17 +3.136255923160151e-04
+5 18 +1.312540781600459e-03
+5 19 +2.892497988275950e-03
+5 20 +3.926889486415615e-03
+5 21 +3.474385548526664e-03
+5 22 +2.063200871238251e-03
+5 23 +8.466746072201876e-04
+5 24 +2.527173255797678e-04
+5 25 +6.146497948927013e-05
+5 26 +1.535221942328690e-05
+5 27 +5.499844452398325e-06
+5 28 +3.392503181823541e-06
+5 29 +2.716699175289595e-06
+5 30 +2.307317576927403e-06
+6 0 +2.373332825254899e-06
+6 1 +2.321653560233388e-06
+6 2 +1.822958685202512e-06
+6 3 +1.998034295855592e-06
+6 4 +1.070244688479249e-05
+6 5 +6.062668963464542e-05
+6 6 +2.637758074029551e-04
+6 7 +8.732926224204041e-04
+6 8 +2.104254493353289e-03
+6 9 +3.536589556516121e-03
+6 10 +4.022793689595565e-03
+6 11 +3.021560454986797e-03
+6 12 +1.452268740872702e-03
+6 13 +4.229684890191378e-04
+6 14 +7.183483566560646e-05
+6 15 +1.825194993036989e-05
+6 16 +7.183483566560646e-05
+6 17 +4.229684890191378e-04
+6 18 +1.452268740872702e-03
+6 19 +3.021560454986797e-03
+6 20 +4.022793689595565e-03
+6 21 +3.536589556516121e-03
+6 22 +2.104254493353289e-03
+6 23 +8.732926224204041e-04
+6 24 +2.637758074029551e-04
+6 25 +6.062668963464542e-05
+6 26 +1.070244688479249e-05
+6 27 +1.998034295855592e-06
+6 28 +1.822958685202512e-06
+6 29 +2.321653560233388e-06
+6 30 +2.373332825254899e-06
+7 0 +1.587195130150310e-06
+7 1 +1.713658780206171e-06
+7 2 +9.411594223291881e-07
+7 3 +6.776789721331578e-08
+7 4 +6.860825504386979e-06
+7 5 +5.146201467104523e-05
+7 6 +2.396166831456199e-04
+7 7 +8.264643309087650e-04
+7 8 +2.056438818405584e-03
+7 9 +3.549963363240440e-03
+7 10 +4.156944303260867e-03
+7 11 +3.275907813144717e-03
+7 12 +1.756915148324869e-03
+7 13 +6.844759133332523e-04
+7 14 +2.464153674380294e-04
+7 15 +1.495346760772398e-04
+7 16 +2.464153674380294e-04
+7 17 +6.844759133332523e-04
+7 18 +1.756915148324869e-03
+7 19 +3.275907813144717e-03
+7 20 +4.156944303260867e-03
+7 21 +3.549963363240440e-03
+7 22 +2.056438818405584e-03
+7 23 +8.264643309087650e-04
+7 24 +2.396166831456199e-04
+7 25 +5.146201467104523e-05
+7 26 +6.860825504386979e-06
+7 27 +6.776789721331578e-08
+7 28 +9.411594223291881e-07
+7 29 +1.713658780206171e-06
+7 30 +1.587195130150310e-06
+8 0 +5.842895768532483e-07
+8 1 +1.514582924947651e-06
+8 2 +1.918239459944766e-06
+8 3 +2.478661441644039e-06
+8 4 +8.932418369414274e-06
+8 5 +4.159804448997610e-05
+8 6 +1.917917504088143e-04
+8 7 +7.237846411730068e-04
+8 8 +1.937637574805104e-03
+8 9 +3.510202961653063e-03
+8 10 +4.266350475238421e-03
+8 11 +3.503586015126449e-03
+8 12 +1.998570138710667e-03
+8 13 +8.585196678491770e-04
+8 14 +3.479814933876024e-04
+8 15 +2.236338486521513e-04
+8 16 +3.479814933876024e-04
+8 17 +8.585196678491770e-04
+8 18 +1.998570138710667e-03
+8 19 +3.503586015126449e-03
+8 20 +4.266350475238421e-03
+8 21 +3.510202961653063e-03
+8 22 +1.937637574805104e-03
+8 23 +7.237846411730068e-04
+8 24 +1.917917504088143e-04
+8 25 +4.159804448997610e-05
+8 26 +8.932418369414274e-06
+8 27 +2.478661441644039e-06
+8 28 +1.918239459944766e-06
+8 29 +1.514582924947651e-06
+8 30 +5.842895768532483e-07
+9 0 +3.642883870758245e-07
+9 1 +2.053202999470949e-06
+9 2 +3.837166158545995e-06
+9 3 +5.348894469071784e-06
+9 4 +7.858828200887174e-06
+9 5 +2.145531964264211e-05
+9 6 +1.278998893281748e-04
+9 7 +6.057443575635683e-04
+9 8 +1.807819709990386e-03
+9 9 +3.456094204549144e-03
+9 10 +4.332932758161096e-03
+9 11 +3.623389816823501e-03
+9 12 +2.054991941718712e-03
+9 13 +8.036014751161785e-04
+9 14 +2.166177170601839e-04
+9 15 +6.915211547501020e-05
+9 16 +2.166177170601839e-04
+9 17 +8.036014751161785e-04
+9 18 +2.054991941718712e-03
+9 19 +3.623389816823501e-03
+9 20 +4.332932758161096e-03
+9 21 +3.456094204549144e-03
+9 22 +1.807819709990386e-03
+9 23 +6.057443575635683e-04
+9 24 +1.278998893281748e-04
+9 25 +2.145531964264211e-05
+9 26 +7.858828200887174e-06
+9 27 +5.348894469071784e-06
+9 28 +3.837166158545995e-06
+9 29 +2.053202999470949e-06
+9 30 +3.642883870758245e-07
+10 0 +2.512490246878957e-06
+10 1 +4.396610854841844e-06
+10 2 +6.575545000503195e-06
+10 3 +7.083439501810090e-06
+10 4 +3.470894493160968e-06
+10 5 +2.622883261358829e-06
+10 6 +8.709326319537562e-05
+10 7 +5.447133938049011e-04
+10 8 +1.752837291237968e-03
+10 9 +3.455315221404786e-03
+10 10 +4.398958252080046e-03
+10 11 +3.686186997488258e-03
+10 12 +2.037578409116048e-03
+10 13 +7.234336912109821e-04
+10 14 +1.396226098258371e-04
+10 15 +7.543732908067557e-06
+10 16 +1.396226098258371e-04
+10 17 +7.234336912109821e-04
+10 18 +2.037578409116048e-03
+10 19 +3.686186997488258e-03
+10 20 +4.398958252080046e-03
+10 21 +3.455315221404786e-03
+10 22 +1.752837291237968e-03
+10 23 +5.447133938049011e-04
+10 24 +8.709326319537562e-05
+10 25 +2.622883261358829e-06
+10 26 +3.470894493160968e-06
+10 27 +7.083439501810090e-06
+10 28 +6.575545000503195e-06
+10 29 +4.396610854841844e-06
+10 30 +2.512490246878957e-06
+11 0 +6.815671315359540e-06
+11 1 +8.264538431099037e-06
+11 2 +1.005401247062773e-05
+11 3 +1.059684653758765e-05
+11 4 +8.755895107819839e-06
+11 5 +1.555038478500510e-05
+11 6 +1.170561839376850e-04
+11 7 +5.962253896499082e-04
+11 8 +1.824100571423304e-03
+11 9 +3.550529315318575e-03
+11 10 +4.513631727635005e-03
+11 11 +3.777400017948165e-03
+11 12 +2.069898556039909e-03
+11 13 +7.321944395611375e-04
+11 14 +1.800591890588128e-04
+11 15 +7.252664246864497e-05
+11 16 +1.800591890588128e-04
+11 17 +7.321944395611375e-04
+11 18 +2.069898556039909e-03
+11 19 +3.777400017948165e-03
+11 20 +4.513631727635005e-03
+11 21 +3.550529315318575e-03
+11 22 +1.824100571423304e-03
+11 23 +5.962253896499082e-04
+11 24 +1.170561839376850e-04
+11 25 +1.555038478500510e-05
+11 26 +8.755895107819839e-06
+11 27 +1.059684653758765e-05
+11 28 +1.005401247062773e-05
+11 29 +8.264538431099037e-06
+11 30 +6.815671315359540e-06
+12 0 +9.749610156771229e-06
+12 1 +1.055180001296198e-05
+12 2 +1.180987001645569e-05
+12 3 +1.395571025914737e-05
+12 4 +2.057271886339045e-05
+12 5 +5.026620068793996e-05
+12 6 +1.931212798890028e-04
+12 7 +7.199830460496915e-04
+12 8 +1.978312822663844e-03
+12 9 +3.714503821754403e-03
+12 10 +4.680865749503483e-03
+12 11 +3.932112021941086e-03
+12 12 +2.178726369038801e-03
+12 13 +7.706810332112831e-04
+12 14 +1.501137773096962e-04
+12 15 +1.261640298775073e-05
+12 16 +1.501137773096962e-04
+12 17 +7.706810332112831e-04
+12 18 +2.178726369038801e-03
+12 19 +3.932112021941086e-03
+12 20 +4.680865749503483e-03
+12 21 +3.714503821754403e-03
+12 22 +1.978312822663844e-03
+12 23 +7.199830460496915e-04
+12 24 +1.931212798890028e-04
+12 25 +5.026620068793996e-05
+12 26 +2.057271886339045e-05
+12 27 +1.395571025914737e-05
+12 28 +1.180987001645569e-05
+12 29 +1.055180001296198e-05
+12 30 +9.749610156771229e-06
+13 0 +8.490623059819040e-06
+13 1 +8.799846154170221e-06
+13 2 +8.994677966752248e-06
+13 3 +1.010871017786102e-05
+13 4 +1.870330300271311e-05
+13 5 +6.084068161357250e-05
+13 6 +2.356274475978317e-04
+13 7 +8.098356562680192e-04
+13 8 +2.107865874310841e-03
+13 9 +3.865318650390775e-03
+13 10 +4.852291507897281e-03
+13 11 +4.126295330348602e-03
+13 12 +2.369155320117100e-03
+13 13 +9.147697022767272e-04
+13 14 +2.308142003576141e-04
+13 15 +6.328836926190641e-05
+13 16 +2.308142003576141e-04
+13 17 +9.147697022767272e-04
+13 18 +2.369155320117100e-03
+13 19 +4.126295330348602e-03
+13 20 +4.852291507897281e-03
+13 21 +3.865318650390775e-03
+13 22 +2.107865874310841e-03
+13 23 +8.098356562680192e-04
+13 24 +2.356274475978317e-04
+13 25 +6.084068161357250e-05
+13 26 +1.870330300271311e-05
+13 27 +1.010871017786102e-05
+13 28 +8.994677966752248e-06
+13 29 +8.799846154170221e-06
+13 30 +8.490623059819040e-06
+14 0 +4.687403389656196e-06
+14 1 +5.079153114463964e-06
+14 2 +4.497918246229313e-06
+14 3 +2.774071303358379e-06
+14 4 +5.904632068328592e-06
+14 5 +4.270413859622926e-05
+14 6 +2.207746257698169e-04
+14 7 +8.135918874377782e-04
+14 8 +2.139508173337537e-03
+14 9 +3.927780870116436e-03
+14 10 +4.956023042244558e-03
+14 11 +4.277097097416137e-03
+14 12 +2.546496865618815e-03
+14 13 +1.093698356447127e-03
+14 14 +4.092148715898557e-04
+14 15 +2.440103587145870e-04
+14 16 +4.092148715898557e-04
+14 17 +1.093698356447127e-03
+14 18 +2.546496865618815e-03
+14 19 +4.277097097416137e-03
+14 20 +4.956023042244558e-03
+14 21 +3.927780870116436e-03
+14 22 +2.139508173337537e-03
+14 23 +8.135918874377782e-04
+14 24 +2.207746257698169e-04
+14 25 +4.270413859622926e-05
+14 26 +5.904632068328592e-06
+14 27 +2.774071303358379e-06
+14 28 +4.497918246229313e-06
+14 29 +5.079153114463964e-06
+14 30 +4.687403389656196e-06
+15 0 +1.501257749887276e-06
+15 1 +2.435756825174617e-06
+15 2 +2.411966242960009e-06
+15 3 +7.157054724050202e-07
+15 4 +1.716069852294603e-06
+15 5 +3.013705168409485e-05
+15 6 +1.904842036316344e-04
+15 7 +7.619892865676402e-04
+15 8 +2.077488033630016e-03
+15 9 +3.878674705777598e-03
+15 10 +4.943717078853101e-03
+15 11 +4.303065526353173e-03
+15 12 +2.573644579802008e-03
+15 13 +1.075135802949144e-03
+15 14 +3.350972364282421e-04
+15 15 +1.464398667425757e-04
+15 16 +3.350972364282421e-04
+15 17 +1.075135802949144e-03
+15 18 +2.573644579802008e-03
+15 19 +4.303065526353173e-03
+15 20 +4.943717078853101e-03
+15 21 +3.878674705777598e-03
+15 22 +2.077488033630016e-03
+15 23 +7.619892865676402e-04
+15 24 +1.904842036316344e-04
+15 25 +3.013705168409485e-05
+15 26 +1.716069852294603e-06
+15 27 +7.157054724050202e-07
+15 28 +2.411966242960009e-06
+15 29 +2.435756825174617e-06
+15 30 +1.501257749887276e-06
+16 0 +2.323571591220434e-07
+16 1 +1.393475802039957e-06
+16 2 +2.091541786468290e-06
+16 3 +2.126752993258124e-06
+16 4 +4.835644738161436e-06
+16 5 +2.852474621669622e-05
+16 6 +1.659548141126014e-04
+16 7 +6.933826714206772e-04
+16 8 +1.963201825373199e-03
+16 9 +3.743280998425761e-03
+16 10 +4.819314315173870e-03
+16 11 +4.206415709376830e-03
+16 12 +2.492191540160578e-03
+16 13 +9.778007064550418e-04
+16 14 +2.051669934845689e-04
+16 15 +7.791777078841276e-08
+16 16 +2.051669934845689e-04
+16 17 +9.778007064550418e-04
+16 18 +2.492191540160578e-03
+16 19 +4.206415709376830e-03
+16 20 +4.819314315173870e-03
+16 21 +3.743280998425761e-03
+16 22 +1.963201825373199e-03
+16 23 +6.933826714206772e-04
+16 24 +1.659548141126014e-04
+16 25 +2.852474621669622e-05
+16 26 +4.835644738161436e-06
+16 27 +2.126752993258124e-06
+16 28 +2.091541786468290e-06
+16 29 +1.393475802039957e-06
+16 30 +2.323571591220434e-07
+17 0 +6.534106903077690e-07
+17 1 +1.487306123431552e-06
+17 2 +1.979172297174789e-06
+17 3 +1.976234205687681e-06
+17 4 +3.531951296812328e-06
+17 5 +2.095624840708503e-05
+17 6 +1.382476024308607e-04
+17 7 +6.241889811214583e-04
+17 8 +1.838277343110348e-03
+17 9 +3.567829091690213e-03
+17 10 +4.619649049288467e-03
+17 11 +4.029180994811406e-03
+17 12 +2.389692813180007e-03
+17 13 +9.801953064551853e-04
+17 14 +3.010360683959697e-04
+17 15 +1.339147984653232e-04
+17 16 +3.010360683959697e-04
+17 17 +9.801953064551853e-04
+17 18 +2.389692813180007e-03
+17 19 +4.029180994811406e-03
+17 20 +4.619649049288467e-03
+17 21 +3.567829091690213e-03
+17 22 +1.838277343110348e-03
+17 23 +6.241889811214583e-04
+17 24 +1.382476024308607e-04
+17 25 +2.095624840708503e-05
+17 26 +3.531951296812328e-06
+17 27 +1.976234205687681e-06
+17 28 +1.979172297174789e-06
+17 29 +1.487306123431552e-06
+17 30 +6.534106903077690e-07
+18 0 +1.876059361241538e-06
+18 1 +2.057784840208347e-06
+18 2 +1.777613271338336e-06
+18 3 +8.699234969159874e-07
+18 4 +1.968652577303025e-07
+18 5 +1.208171122223021e-05
+18 6 +1.171139379151092e-04
+18 7 +5.767959563594669e-04
+18 8 +1.740740070141123e-03
+18 9 +3.396802527464631e-03
+18 10 +4.382735284334756e-03
+18 11 +3.786662133385478e-03
+18 12 +2.219758764675431e-03
+18 13 +9.142867897053784e-04
+18 14 +3.110029558942641e-04
+18 15 +1.692446500089834e-04
+18 16 +3.110029558942641e-04
+18 17 +9.142867897053784e-04
+18 18 +2.219758764675431e-03
+18 19 +3.786662133385478e-03
+18 20 +4.382735284334756e-03
+18 21 +3.396802527464631e-03
+18 22 +1.740740070141123e-03
+18 23 +5.767959563594669e-04
+18 24 +1.171139379151092e-04
+18 25 +1.208171122223021e-05
+18 26 +1.968652577303025e-07
+18 27 +8.699234969159874e-07
+18 28 +1.777613271338336e-06
+18 29 +2.057784840208347e-06
+18 30 +1.876059361241538e-06
+19 0 +3.062840789809967e-06
+19 1 +2.527808076843036e-06
+19 2 +1.633271973488836e-06
+19 3 +9.736235185669393e-07
+19 4 +1.380503967706013e-06
+19 5 +1.469419689216322e-05
+19 6 +1.207048147882760e-04
+19 7 +5.719123589096748e-04
+19 8 +1.692871022540258e-03
+19 9 +3.256428719310688e-03
+19 10 +4.139632891211538e-03
+19 11 +3.504909208546127e-03
+19 12 +1.982724381278589e-03
+19 13 +7.402920491410022e-04
+19 14 +1.617462685140096e-04
+19 15 +2.053330572468854e-05
+19 16 +1.617462685140096e-04
+19 17 +7.402920491410022e-04
+19 18 +1.982724381278589e-03
+19 19 +3.504909208546127e-03
+19 20 +4.139632891211538e-03
+19 21 +3.256428719310688e-03
+19 22 +1.692871022540258e-03
+19 23 +5.719123589096748e-04
+19 24 +1.207048147882760e-04
+19 25 +1.469419689216322e-05
+19 26 +1.380503967706013e-06
+19 27 +9.736235185669393e-07
+19 28 +1.633271973488836e-06
+19 29 +2.527808076843036e-06
+19 30 +3.062840789809967e-06
+20 0 +3.965288889790357e-06
+20 1 +2.752129060676672e-06
+20 2 +1.161841016756794e-06
+20 3 +5.701545853936663e-07
+20 4 +3.098355792788597e-06
+20 5 +2.353023458085338e-05
+20 6 +1.431860973840122e-04
+20 7 +6.003781224686864e-04
+20 8 +1.683390907031591e-03
+20 9 +3.145644377756497e-03
+20 10 +3.912068929840578e-03
+20 11 +3.233033884460954e-03
+20 12 +1.771385768497788e-03
+20 13 +6.375462234056684e-04
+20 14 +1.434980619272460e-04
+20 15 +3.195125662258565e-05
+20 16 +1.434980619272460e-04
+20 17 +6.375462234056684e-04
+20 18 +1.771385768497788e-03
+20 19 +3.233033884460954e-03
+20 20 +3.912068929840578e-03
+20 21 +3.145644377756497e-03
+20 22 +1.683390907031591e-03
+20 23 +6.003781224686864e-04
+20 24 +1.431860973840122e-04
+20 25 +2.353023458085338e-05
+20 26 +3.098355792788597e-06
+20 27 +5.701545853936663e-07
+20 28 +1.161841016756794e-06
+20 29 +2.752129060676672e-06
+20 30 +3.965288889790357e-06
+21 0 +4.809474577021396e-06
+21 1 +3.265902127647575e-06
+21 2 +1.153290298311127e-06
+21 3 +1.734187798996243e-07
+21 4 +4.307226170255345e-06
+21 5 +3.268845994111086e-05
+21 6 +1.673952798494322e-04
+21 7 +6.297509875229867e-04
+21 8 +1.674683627968040e-03
+21 9 +3.043996694190472e-03
+21 10 +3.709176492544443e-03
+21 11 +2.997312013828311e-03
+21 12 +1.599019952667030e-03
+21 13 +5.728662937094130e-04
+21 14 +1.609992934304200e-04
+21 15 +7.737655471200314e-05
+21 16 +1.609992934304200e-04
+21 17 +5.728662937094130e-04
+21 18 +1.599019952667030e-03
+21 19 +2.997312013828311e-03
+21 20 +3.709176492544443e-03
+21 21 +3.043996694190472e-03
+21 22 +1.674683627968040e-03
+21 23 +6.297509875229867e-04
+21 24 +1.673952798494322e-04
+21 25 +3.268845994111086e-05
+21 26 +4.307226170255345e-06
+21 27 +1.734187798996243e-07
+21 28 +1.153290298311127e-06
+21 29 +3.265902127647575e-06
+21 30 +4.809474577021396e-06
+22 0 +5.555042869803733e-06
+22 1 +4.420635368354199e-06
+22 2 +3.028730507567648e-06
+22 3 +3.100707295620601e-06
+22 4 +9.243914480592160e-06
+22 5 +4.087587045427118e-05
+22 6 +1.760607022307088e-04
+22 7 +6.247370338825327e-04
+22 8 +1.629230426377810e-03
+22 9 +2.933474132420932e-03
+22 10 +3.538408480595143e-03
+22 11 +2.811983434809747e-03
+22 12 +1.451910099681378e-03
+22 13 +4.768548007400953e-04
+22 14 +9.099433778678653e-05
+22 15 +1.171746709542609e-05
+22 16 +9.099433778678653e-05
+22 17 +4.768548007400953e-04
+22 18 +1.451910099681378e-03
+22 19 +2.811983434809747e-03
+22 20 +3.538408480595143e-03
+22 21 +2.933474132420932e-03
+22 22 +1.629230426377810e-03
+22 23 +6.247370338825327e-04
+22 24 +1.760607022307088e-04
+22 25 +4.087587045427118e-05
+22 26 +9.243914480592160e-06
+22 27 +3.100707295620601e-06
+22 28 +3.028730507567648e-06
+22 29 +4.420635368354199e-06
+22 30 +5.555042869803733e-06
+23 0 +5.404189672356805e-06
+23 1 +4.892870830299098e-06
+23 2 +4.557607934560358e-06
+23 3 +5.537092541242136e-06
+23 4 +1.083855203679700e-05
+23 5 +3.547085934154473e-05
+23 6 +1.510775020427121e-04
+23 7 +5.676546615136151e-04
+23 8 +1.538572432507774e-03
+23 9 +2.819067621052516e-03
+23 10 +3.417150766148686e-03
+23 11 +2.705429500718680e-03
+23 12 +1.374749562040417e-03
+23 13 +4.333463453912217e-04
+23 14 +7.941771000134053e-05
+23 15 +1.479566369747944e-05
+23 16 +7.941771000134053e-05
+23 17 +4.333463453912217e-04
+23 18 +1.374749562040417e-03
+23 19 +2.705429500718680e-03
+23 20 +3.417150766148686e-03
+23 21 +2.819067621052516e-03
+23 22 +1.538572432507774e-03
+23 23 +5.676546615136151e-04
+23 24 +1.510775020427121e-04
+23 25 +3.547085934154473e-05
+23 26 +1.083855203679700e-05
+23 27 +5.537092541242136e-06
+23 28 +4.557607934560358e-06
+23 29 +4.892870830299098e-06
+23 30 +5.404189672356805e-06
+24 0 +3.955165536724783e-06
+24 1 +3.584741991399201e-06
+24 2 +3.508885372422360e-06
+24 3 +3.939399145842972e-06
+24 4 +4.822757117855054e-06
+24 5 +1.528945559383431e-05
+24 6 +1.028440676156929e-04
+24 7 +4.865196638755525e-04
+24 8 +1.440956718322974e-03
+24 9 +2.733108955173010e-03
+24 10 +3.366008382925306e-03
+24 11 +2.697020398631471e-03
+24 12 +1.391340841413025e-03
+24 13 +4.489266759395228e-04
+24 14 +8.931113109195366e-05
+24 15 +2.423720573557286e-05
+24 16 +8.931113109195366e-05
+24 17 +4.489266759395228e-04
+24 18 +1.391340841413025e-03
+24 19 +2.697020398631471e-03
+24 20 +3.366008382925306e-03
+24 21 +2.733108955173010e-03
+24 22 +1.440956718322974e-03
+24 23 +4.865196638755525e-04
+24 24 +1.028440676156929e-04
+24 25 +1.528945559383431e-05
+24 26 +4.822757117855054e-06
+24 27 +3.939399145842972e-06
+24 28 +3.508885372422360e-06
+24 29 +3.584741991399201e-06
+24 30 +3.955165536724783e-06
+25 0 +2.214633245267957e-06
+25 1 +1.585525169790331e-06
+25 2 +1.483434350126737e-06
+25 3 +1.972238971450125e-06
+25 4 +8.239998404110594e-07
+25 5 +3.274470653067594e-06
+25 6 +7.580088249132948e-05
+25 7 +4.457366278418717e-04
+25 8 +1.401383271659800e-03
+25 9 +2.715854393917418e-03
+25 10 +3.391604051034845e-03
+25 11 +2.775387360033505e-03
+25 12 +1.495302570719864e-03
+25 13 +5.208990796590071e-04
+25 14 +9.956297062102457e-05
+25 15 +4.074204269152465e-06
+25 16 +9.956297062102457e-05
+25 17 +5.208990796590071e-04
+25 18 +1.495302570719864e-03
+25 19 +2.775387360033505e-03
+25 20 +3.391604051034845e-03
+25 21 +2.715854393917418e-03
+25 22 +1.401383271659800e-03
+25 23 +4.457366278418717e-04
+25 24 +7.580088249132948e-05
+25 25 +3.274470653067594e-06
+25 26 +8.239998404110594e-07
+25 27 +1.972238971450125e-06
+25 28 +1.483434350126737e-06
+25 29 +1.585525169790331e-06
+25 30 +2.214633245267957e-06
+26 0 +1.270433760442372e-06
+26 1 +3.916387056204372e-07
+26 2 +2.231233391960010e-07
+26 3 +1.503250077270970e-06
+26 4 +3.125235105917701e-06
+26 5 +1.232580616064923e-05
+26 6 +9.755857943602422e-05
+26 7 +4.851055857767528e-04
+26 8 +1.457115907850736e-03
+26 9 +2.782087863624691e-03
+26 10 +3.471885190847275e-03
+26 11 +2.885556868129979e-03
+26 12 +1.636626067410123e-03
+26 13 +6.667717289764138e-04
+26 14 +2.263997570460314e-04
+26 15 +1.189280941020137e-04
+26 16 +2.263997570460314e-04
+26 17 +6.667717289764138e-04
+26 18 +1.636626067410123e-03
+26 19 +2.885556868129979e-03
+26 20 +3.471885190847275e-03
+26 21 +2.782087863624691e-03
+26 22 +1.457115907850736e-03
+26 23 +4.851055857767528e-04
+26 24 +9.755857943602422e-05
+26 25 +1.232580616064923e-05
+26 26 +3.125235105917701e-06
+26 27 +1.503250077270970e-06
+26 28 +2.231233391960010e-07
+26 29 +3.916387056204372e-07
+26 30 +1.270433760442372e-06
+27 0 +1.299354594308245e-06
+27 1 +5.522911269684502e-07
+27 2 +4.619462725569895e-07
+27 3 +2.265200690627976e-06
+27 4 +8.097778286089136e-06
+27 5 +3.240334951419666e-05
+27 6 +1.498979407853844e-04
+27 7 +5.803392722650569e-04
+27 8 +1.582282591448272e-03
+27 9 +2.903121917018245e-03
+27 10 +3.560888391768400e-03
+27 11 +2.942173666034896e-03
+27 12 +1.681218578604672e-03
+27 13 +7.183020985079531e-04
+27 14 +2.890668649459803e-04
+27 15 +1.861637286406668e-04
+27 16 +2.890668649459803e-04
+27 17 +7.183020985079531e-04
+27 18 +1.681218578604672e-03
+27 19 +2.942173666034896e-03
+27 20 +3.560888391768400e-03
+27 21 +2.903121917018245e-03
+27 22 +1.582282591448272e-03
+27 23 +5.803392722650569e-04
+27 24 +1.498979407853844e-04
+27 25 +3.240334951419666e-05
+27 26 +8.097778286089136e-06
+27 27 +2.265200690627976e-06
+27 28 +4.619462725569895e-07
+27 29 +5.522911269684502e-07
+27 30 +1.299354594308245e-06
+28 0 +2.040365887620211e-06
+28 1 +1.650917666586412e-06
+28 2 +1.774875725028040e-06
+28 3 +3.556606295780957e-06
+28 4 +1.121238171560661e-05
+28 5 +4.596797846319543e-05
+28 6 +1.924256950599667e-04
+28 7 +6.695452279961972e-04
+28 8 +1.710357891797661e-03
+28 9 +3.026685345607163e-03
+28 10 +3.623902514336288e-03
+28 11 +2.912274546185048e-03
+28 12 +1.573517463148064e-03
+28 13 +5.814421846018108e-04
+28 14 +1.585057189477723e-04
+28 15 +6.269150114528087e-05
+28 16 +1.585057189477723e-04
+28 17 +5.814421846018108e-04
+28 18 +1.573517463148064e-03
+28 19 +2.912274546185048e-03
+28 20 +3.623902514336288e-03
+28 21 +3.026685345607163e-03
+28 22 +1.710357891797661e-03
+28 23 +6.695452279961972e-04
+28 24 +1.924256950599667e-04
+28 25 +4.596797846319543e-05
+28 26 +1.121238171560661e-05
+28 27 +3.556606295780957e-06
+28 28 +1.774875725028040e-06
+28 29 +1.650917666586412e-06
+28 30 +2.040365887620211e-06
+29 0 +2.889936412548378e-06
+29 1 +2.523107656067143e-06
+29 2 +2.137256869716177e-06
+29 3 +2.408742209727751e-06
+29 4 +7.837863399645522e-06
+29 5 +4.293412664154757e-05
+29 6 +2.012737823483604e-04
+29 7 +7.094420933272181e-04
+29 8 +1.788723143733490e-03
+29 9 +3.116507360268357e-03
+29 10 +3.668485365947303e-03
+29 11 +2.864609577951840e-03
+29 12 +1.444029026933867e-03
+29 13 +4.403845160530417e-04
+29 14 +6.521201643211877e-05
+29 15 +2.389980714464935e-07
+29 16 +6.521201643211877e-05
+29 17 +4.403845160530417e-04
+29 18 +1.444029026933867e-03
+29 19 +2.864609577951840e-03
+29 20 +3.668485365947303e-03
+29 21 +3.116507360268357e-03
+29 22 +1.788723143733490e-03
+29 23 +7.094420933272181e-04
+29 24 +2.012737823483604e-04
+29 25 +4.293412664154757e-05
+29 26 +7.837863399645522e-06
+29 27 +2.408742209727751e-06
+29 28 +2.137256869716177e-06
+29 29 +2.523107656067143e-06
+29 30 +2.889936412548378e-06
+30 0 +3.189540008095353e-06
+30 1 +2.665276215102024e-06
+30 2 +1.538390887473923e-06
+30 3 +2.126393704049059e-07
+30 4 +2.872410902877456e-06
+30 5 +3.332700529158972e-05
+30 6 +1.874186897482456e-04
+30 7 +7.023315789295831e-04
+30 8 +1.808842702438711e-03
+30 9 +3.169450767598823e-03
+30 10 +3.727981450772813e-03
+30 11 +2.895425157778220e-03
+30 12 +1.436817970496205e-03
+30 13 +4.198892675035715e-04
+30 14 +6.131415667355502e-05
+30 15 +9.736971670136333e-06
+30 16 +6.131415667355502e-05
+30 17 +4.198892675035715e-04
+30 18 +1.436817970496205e-03
+30 19 +2.895425157778220e-03
+30 20 +3.727981450772813e-03
+30 21 +3.169450767598823e-03
+30 22 +1.808842702438711e-03
+30 23 +7.023315789295831e-04
+30 24 +1.874186897482456e-04
+30 25 +3.332700529158972e-05
+30 26 +2.872410902877456e-06
+30 27 +2.126393704049059e-07
+30 28 +1.538390887473923e-06
+30 29 +2.665276215102024e-06
+30 30 +3.189540008095353e-06
diff --git a/examples/3dgraphs/color.jl b/examples/3dgraphs/color.jl
new file mode 100644
index 0000000..09d8ee8
--- /dev/null
+++ b/examples/3dgraphs/color.jl
@@ -0,0 +1,21 @@
+
+# Original Python:
+# from pyx import *
+#
+# g = graph.graphxyz(size=4, projector=graph.graphxyz.parallel(170, 45))
+# g.plot(graph.data.file("color.dat", x=1, y=2, z=3, color=3),
+# [graph.style.surface(gradient=color.gradient.RedGreen,
+# gridcolor=color.rgb.black,
+# backcolor=color.rgb.black)])
+# g.writeEPSfile("color")
+# g.writePDFfile("color")
+# g.writeSVGfile("color")
+
+g = graph.graphxyz(size=4, projector=graph_graphxyz.parallel(170, 45))
+plot(g, graph_data.file("examples/3dgraphs/color.dat", x=1, y=2, z=3, color=3),
+ [graph_style.surface(gradient=color_gradient.RedGreen,
+ gridcolor=color_rgb.black,
+ backcolor=color_rgb.black)])
+writeEPSfile(g, "color")
+writePDFfile(g, "color")
+
diff --git a/examples/3dgraphs/grid.dat b/examples/3dgraphs/grid.dat
new file mode 100644
index 0000000..9986579
--- /dev/null
+++ b/examples/3dgraphs/grid.dat
@@ -0,0 +1,961 @@
+0 0 +2.744434246094877e-06
+0 1 +2.518061584101027e-06
+0 2 +1.759486087349929e-06
+0 3 +9.970876191013776e-07
+0 4 +3.824133190986796e-06
+0 5 +2.975115378597332e-05
+0 6 +1.699285851675448e-04
+0 7 +6.720788024534639e-04
+0 8 +1.792832060948163e-03
+0 9 +3.200655253796644e-03
+0 10 +3.816618683189747e-03
+0 11 +3.032150111960852e-03
+0 12 +1.590229109988915e-03
+0 13 +5.326214926640671e-04
+0 14 +9.904354320939544e-05
+0 15 +9.357929797648389e-06
+0 16 +9.904354320939544e-05
+0 17 +5.326214926640671e-04
+0 18 +1.590229109988915e-03
+0 19 +3.032150111960852e-03
+0 20 +3.816618683189747e-03
+0 21 +3.200655253796644e-03
+0 22 +1.792832060948163e-03
+0 23 +6.720788024534639e-04
+0 24 +1.699285851675448e-04
+0 25 +2.975115378597332e-05
+0 26 +3.824133190986796e-06
+0 27 +9.970876191013776e-07
+0 28 +1.759486087349929e-06
+0 29 +2.518061584101027e-06
+0 30 +2.744434246094877e-06
+1 0 +1.653567652207974e-06
+1 1 +2.080019415431434e-06
+1 2 +2.256392327443844e-06
+1 3 +2.353042222660531e-06
+1 4 +4.658691276947686e-06
+1 5 +2.435782462200616e-05
+1 6 +1.490972431055931e-04
+1 7 +6.377284017517769e-04
+1 8 +1.771582235157512e-03
+1 9 +3.225933640796166e-03
+1 10 +3.906803557194595e-03
+1 11 +3.197308254883010e-03
+1 12 +1.817291725241250e-03
+1 13 +7.630389801230493e-04
+1 14 +2.807603469492349e-04
+1 15 +1.608446672699473e-04
+1 16 +2.807603469492349e-04
+1 17 +7.630389801230493e-04
+1 18 +1.817291725241250e-03
+1 19 +3.197308254883010e-03
+1 20 +3.906803557194595e-03
+1 21 +3.225933640796166e-03
+1 22 +1.771582235157512e-03
+1 23 +6.377284017517769e-04
+1 24 +1.490972431055931e-04
+1 25 +2.435782462200616e-05
+1 26 +4.658691276947686e-06
+1 27 +2.353042222660531e-06
+1 28 +2.256392327443844e-06
+1 29 +2.080019415431434e-06
+1 30 +1.653567652207974e-06
+2 0 +4.903222446513287e-07
+2 1 +1.470523991761591e-06
+2 2 +2.270477656555739e-06
+2 3 +1.893286577894258e-06
+2 4 +8.875040369628528e-07
+2 5 +1.382699095923903e-05
+2 6 +1.323259508158545e-04
+2 7 +6.252257214541712e-04
+2 8 +1.780184015590029e-03
+2 9 +3.259559977840245e-03
+2 10 +3.952100806252818e-03
+2 11 +3.252471803511440e-03
+2 12 +1.899491987795393e-03
+2 13 +8.762282695816127e-04
+2 14 +4.087748017613867e-04
+2 15 +2.912636182938809e-04
+2 16 +4.087748017613867e-04
+2 17 +8.762282695816127e-04
+2 18 +1.899491987795393e-03
+2 19 +3.252471803511440e-03
+2 20 +3.952100806252818e-03
+2 21 +3.259559977840245e-03
+2 22 +1.780184015590029e-03
+2 23 +6.252257214541712e-04
+2 24 +1.323259508158545e-04
+2 25 +1.382699095923903e-05
+2 26 +8.875040369628528e-07
+2 27 +1.893286577894258e-06
+2 28 +2.270477656555739e-06
+2 29 +1.470523991761591e-06
+2 30 +4.903222446513287e-07
+3 0 +2.525077324128639e-07
+3 1 +1.411976960236152e-06
+3 2 +2.585027402357342e-06
+3 3 +2.455329005085701e-06
+3 4 +1.524299827202244e-06
+3 5 +1.730855351620528e-05
+3 6 +1.485538901683144e-04
+3 7 +6.672169413806638e-04
+3 8 +1.845851704536038e-03
+3 9 +3.314019707590146e-03
+3 10 +3.938097395997995e-03
+3 11 +3.137337133297499e-03
+3 12 +1.714725940474006e-03
+3 13 +6.894032775764756e-04
+3 14 +2.562722332523367e-04
+3 15 +1.572414788470460e-04
+3 16 +2.562722332523367e-04
+3 17 +6.894032775764756e-04
+3 18 +1.714725940474006e-03
+3 19 +3.137337133297499e-03
+3 20 +3.938097395997995e-03
+3 21 +3.314019707590146e-03
+3 22 +1.845851704536038e-03
+3 23 +6.672169413806638e-04
+3 24 +1.485538901683144e-04
+3 25 +1.730855351620528e-05
+3 26 +1.524299827202244e-06
+3 27 +2.455329005085701e-06
+3 28 +2.585027402357342e-06
+3 29 +1.411976960236152e-06
+3 30 +2.525077324128639e-07
+4 0 +1.226989384095427e-06
+4 1 +2.143934503008343e-06
+4 2 +3.419052137664231e-06
+4 3 +5.044497070280032e-06
+4 4 +1.019883325351201e-05
+4 5 +4.134677767967157e-05
+4 6 +2.024165951452637e-04
+4 7 +7.595561633249549e-04
+4 8 +1.957907998196094e-03
+4 9 +3.390836776047649e-03
+4 10 +3.907691866900613e-03
+4 11 +2.958824680334640e-03
+4 12 +1.433416637054468e-03
+4 13 +4.183160198044826e-04
+4 14 +6.825032672642671e-05
+4 15 +1.565122491813854e-05
+4 16 +6.825032672642671e-05
+4 17 +4.183160198044826e-04
+4 18 +1.433416637054468e-03
+4 19 +2.958824680334640e-03
+4 20 +3.907691866900613e-03
+4 21 +3.390836776047649e-03
+4 22 +1.957907998196094e-03
+4 23 +7.595561633249549e-04
+4 24 +2.024165951452637e-04
+4 25 +4.134677767967157e-05
+4 26 +1.019883325351201e-05
+4 27 +5.044497070280032e-06
+4 28 +3.419052137664231e-06
+4 29 +2.143934503008343e-06
+4 30 +1.226989384095427e-06
+5 0 +2.307317576927403e-06
+5 1 +2.716699175289595e-06
+5 2 +3.392503181823541e-06
+5 3 +5.499844452398325e-06
+5 4 +1.535221942328690e-05
+5 5 +6.146497948927013e-05
+5 6 +2.527173255797678e-04
+5 7 +8.466746072201876e-04
+5 8 +2.063200871238251e-03
+5 9 +3.474385548526664e-03
+5 10 +3.926889486415615e-03
+5 11 +2.892497988275950e-03
+5 12 +1.312540781600459e-03
+5 13 +3.136255923160151e-04
+5 14 +2.172446734687579e-05
+5 15 +7.019738683128956e-09
+5 16 +2.172446734687579e-05
+5 17 +3.136255923160151e-04
+5 18 +1.312540781600459e-03
+5 19 +2.892497988275950e-03
+5 20 +3.926889486415615e-03
+5 21 +3.474385548526664e-03
+5 22 +2.063200871238251e-03
+5 23 +8.466746072201876e-04
+5 24 +2.527173255797678e-04
+5 25 +6.146497948927013e-05
+5 26 +1.535221942328690e-05
+5 27 +5.499844452398325e-06
+5 28 +3.392503181823541e-06
+5 29 +2.716699175289595e-06
+5 30 +2.307317576927403e-06
+6 0 +2.373332825254899e-06
+6 1 +2.321653560233388e-06
+6 2 +1.822958685202512e-06
+6 3 +1.998034295855592e-06
+6 4 +1.070244688479249e-05
+6 5 +6.062668963464542e-05
+6 6 +2.637758074029551e-04
+6 7 +8.732926224204041e-04
+6 8 +2.104254493353289e-03
+6 9 +3.536589556516121e-03
+6 10 +4.022793689595565e-03
+6 11 +3.021560454986797e-03
+6 12 +1.452268740872702e-03
+6 13 +4.229684890191378e-04
+6 14 +7.183483566560646e-05
+6 15 +1.825194993036989e-05
+6 16 +7.183483566560646e-05
+6 17 +4.229684890191378e-04
+6 18 +1.452268740872702e-03
+6 19 +3.021560454986797e-03
+6 20 +4.022793689595565e-03
+6 21 +3.536589556516121e-03
+6 22 +2.104254493353289e-03
+6 23 +8.732926224204041e-04
+6 24 +2.637758074029551e-04
+6 25 +6.062668963464542e-05
+6 26 +1.070244688479249e-05
+6 27 +1.998034295855592e-06
+6 28 +1.822958685202512e-06
+6 29 +2.321653560233388e-06
+6 30 +2.373332825254899e-06
+7 0 +1.587195130150310e-06
+7 1 +1.713658780206171e-06
+7 2 +9.411594223291881e-07
+7 3 +6.776789721331578e-08
+7 4 +6.860825504386979e-06
+7 5 +5.146201467104523e-05
+7 6 +2.396166831456199e-04
+7 7 +8.264643309087650e-04
+7 8 +2.056438818405584e-03
+7 9 +3.549963363240440e-03
+7 10 +4.156944303260867e-03
+7 11 +3.275907813144717e-03
+7 12 +1.756915148324869e-03
+7 13 +6.844759133332523e-04
+7 14 +2.464153674380294e-04
+7 15 +1.495346760772398e-04
+7 16 +2.464153674380294e-04
+7 17 +6.844759133332523e-04
+7 18 +1.756915148324869e-03
+7 19 +3.275907813144717e-03
+7 20 +4.156944303260867e-03
+7 21 +3.549963363240440e-03
+7 22 +2.056438818405584e-03
+7 23 +8.264643309087650e-04
+7 24 +2.396166831456199e-04
+7 25 +5.146201467104523e-05
+7 26 +6.860825504386979e-06
+7 27 +6.776789721331578e-08
+7 28 +9.411594223291881e-07
+7 29 +1.713658780206171e-06
+7 30 +1.587195130150310e-06
+8 0 +5.842895768532483e-07
+8 1 +1.514582924947651e-06
+8 2 +1.918239459944766e-06
+8 3 +2.478661441644039e-06
+8 4 +8.932418369414274e-06
+8 5 +4.159804448997610e-05
+8 6 +1.917917504088143e-04
+8 7 +7.237846411730068e-04
+8 8 +1.937637574805104e-03
+8 9 +3.510202961653063e-03
+8 10 +4.266350475238421e-03
+8 11 +3.503586015126449e-03
+8 12 +1.998570138710667e-03
+8 13 +8.585196678491770e-04
+8 14 +3.479814933876024e-04
+8 15 +2.236338486521513e-04
+8 16 +3.479814933876024e-04
+8 17 +8.585196678491770e-04
+8 18 +1.998570138710667e-03
+8 19 +3.503586015126449e-03
+8 20 +4.266350475238421e-03
+8 21 +3.510202961653063e-03
+8 22 +1.937637574805104e-03
+8 23 +7.237846411730068e-04
+8 24 +1.917917504088143e-04
+8 25 +4.159804448997610e-05
+8 26 +8.932418369414274e-06
+8 27 +2.478661441644039e-06
+8 28 +1.918239459944766e-06
+8 29 +1.514582924947651e-06
+8 30 +5.842895768532483e-07
+9 0 +3.642883870758245e-07
+9 1 +2.053202999470949e-06
+9 2 +3.837166158545995e-06
+9 3 +5.348894469071784e-06
+9 4 +7.858828200887174e-06
+9 5 +2.145531964264211e-05
+9 6 +1.278998893281748e-04
+9 7 +6.057443575635683e-04
+9 8 +1.807819709990386e-03
+9 9 +3.456094204549144e-03
+9 10 +4.332932758161096e-03
+9 11 +3.623389816823501e-03
+9 12 +2.054991941718712e-03
+9 13 +8.036014751161785e-04
+9 14 +2.166177170601839e-04
+9 15 +6.915211547501020e-05
+9 16 +2.166177170601839e-04
+9 17 +8.036014751161785e-04
+9 18 +2.054991941718712e-03
+9 19 +3.623389816823501e-03
+9 20 +4.332932758161096e-03
+9 21 +3.456094204549144e-03
+9 22 +1.807819709990386e-03
+9 23 +6.057443575635683e-04
+9 24 +1.278998893281748e-04
+9 25 +2.145531964264211e-05
+9 26 +7.858828200887174e-06
+9 27 +5.348894469071784e-06
+9 28 +3.837166158545995e-06
+9 29 +2.053202999470949e-06
+9 30 +3.642883870758245e-07
+10 0 +2.512490246878957e-06
+10 1 +4.396610854841844e-06
+10 2 +6.575545000503195e-06
+10 3 +7.083439501810090e-06
+10 4 +3.470894493160968e-06
+10 5 +2.622883261358829e-06
+10 6 +8.709326319537562e-05
+10 7 +5.447133938049011e-04
+10 8 +1.752837291237968e-03
+10 9 +3.455315221404786e-03
+10 10 +4.398958252080046e-03
+10 11 +3.686186997488258e-03
+10 12 +2.037578409116048e-03
+10 13 +7.234336912109821e-04
+10 14 +1.396226098258371e-04
+10 15 +7.543732908067557e-06
+10 16 +1.396226098258371e-04
+10 17 +7.234336912109821e-04
+10 18 +2.037578409116048e-03
+10 19 +3.686186997488258e-03
+10 20 +4.398958252080046e-03
+10 21 +3.455315221404786e-03
+10 22 +1.752837291237968e-03
+10 23 +5.447133938049011e-04
+10 24 +8.709326319537562e-05
+10 25 +2.622883261358829e-06
+10 26 +3.470894493160968e-06
+10 27 +7.083439501810090e-06
+10 28 +6.575545000503195e-06
+10 29 +4.396610854841844e-06
+10 30 +2.512490246878957e-06
+11 0 +6.815671315359540e-06
+11 1 +8.264538431099037e-06
+11 2 +1.005401247062773e-05
+11 3 +1.059684653758765e-05
+11 4 +8.755895107819839e-06
+11 5 +1.555038478500510e-05
+11 6 +1.170561839376850e-04
+11 7 +5.962253896499082e-04
+11 8 +1.824100571423304e-03
+11 9 +3.550529315318575e-03
+11 10 +4.513631727635005e-03
+11 11 +3.777400017948165e-03
+11 12 +2.069898556039909e-03
+11 13 +7.321944395611375e-04
+11 14 +1.800591890588128e-04
+11 15 +7.252664246864497e-05
+11 16 +1.800591890588128e-04
+11 17 +7.321944395611375e-04
+11 18 +2.069898556039909e-03
+11 19 +3.777400017948165e-03
+11 20 +4.513631727635005e-03
+11 21 +3.550529315318575e-03
+11 22 +1.824100571423304e-03
+11 23 +5.962253896499082e-04
+11 24 +1.170561839376850e-04
+11 25 +1.555038478500510e-05
+11 26 +8.755895107819839e-06
+11 27 +1.059684653758765e-05
+11 28 +1.005401247062773e-05
+11 29 +8.264538431099037e-06
+11 30 +6.815671315359540e-06
+12 0 +9.749610156771229e-06
+12 1 +1.055180001296198e-05
+12 2 +1.180987001645569e-05
+12 3 +1.395571025914737e-05
+12 4 +2.057271886339045e-05
+12 5 +5.026620068793996e-05
+12 6 +1.931212798890028e-04
+12 7 +7.199830460496915e-04
+12 8 +1.978312822663844e-03
+12 9 +3.714503821754403e-03
+12 10 +4.680865749503483e-03
+12 11 +3.932112021941086e-03
+12 12 +2.178726369038801e-03
+12 13 +7.706810332112831e-04
+12 14 +1.501137773096962e-04
+12 15 +1.261640298775073e-05
+12 16 +1.501137773096962e-04
+12 17 +7.706810332112831e-04
+12 18 +2.178726369038801e-03
+12 19 +3.932112021941086e-03
+12 20 +4.680865749503483e-03
+12 21 +3.714503821754403e-03
+12 22 +1.978312822663844e-03
+12 23 +7.199830460496915e-04
+12 24 +1.931212798890028e-04
+12 25 +5.026620068793996e-05
+12 26 +2.057271886339045e-05
+12 27 +1.395571025914737e-05
+12 28 +1.180987001645569e-05
+12 29 +1.055180001296198e-05
+12 30 +9.749610156771229e-06
+13 0 +8.490623059819040e-06
+13 1 +8.799846154170221e-06
+13 2 +8.994677966752248e-06
+13 3 +1.010871017786102e-05
+13 4 +1.870330300271311e-05
+13 5 +6.084068161357250e-05
+13 6 +2.356274475978317e-04
+13 7 +8.098356562680192e-04
+13 8 +2.107865874310841e-03
+13 9 +3.865318650390775e-03
+13 10 +4.852291507897281e-03
+13 11 +4.126295330348602e-03
+13 12 +2.369155320117100e-03
+13 13 +9.147697022767272e-04
+13 14 +2.308142003576141e-04
+13 15 +6.328836926190641e-05
+13 16 +2.308142003576141e-04
+13 17 +9.147697022767272e-04
+13 18 +2.369155320117100e-03
+13 19 +4.126295330348602e-03
+13 20 +4.852291507897281e-03
+13 21 +3.865318650390775e-03
+13 22 +2.107865874310841e-03
+13 23 +8.098356562680192e-04
+13 24 +2.356274475978317e-04
+13 25 +6.084068161357250e-05
+13 26 +1.870330300271311e-05
+13 27 +1.010871017786102e-05
+13 28 +8.994677966752248e-06
+13 29 +8.799846154170221e-06
+13 30 +8.490623059819040e-06
+14 0 +4.687403389656196e-06
+14 1 +5.079153114463964e-06
+14 2 +4.497918246229313e-06
+14 3 +2.774071303358379e-06
+14 4 +5.904632068328592e-06
+14 5 +4.270413859622926e-05
+14 6 +2.207746257698169e-04
+14 7 +8.135918874377782e-04
+14 8 +2.139508173337537e-03
+14 9 +3.927780870116436e-03
+14 10 +4.956023042244558e-03
+14 11 +4.277097097416137e-03
+14 12 +2.546496865618815e-03
+14 13 +1.093698356447127e-03
+14 14 +4.092148715898557e-04
+14 15 +2.440103587145870e-04
+14 16 +4.092148715898557e-04
+14 17 +1.093698356447127e-03
+14 18 +2.546496865618815e-03
+14 19 +4.277097097416137e-03
+14 20 +4.956023042244558e-03
+14 21 +3.927780870116436e-03
+14 22 +2.139508173337537e-03
+14 23 +8.135918874377782e-04
+14 24 +2.207746257698169e-04
+14 25 +4.270413859622926e-05
+14 26 +5.904632068328592e-06
+14 27 +2.774071303358379e-06
+14 28 +4.497918246229313e-06
+14 29 +5.079153114463964e-06
+14 30 +4.687403389656196e-06
+15 0 +1.501257749887276e-06
+15 1 +2.435756825174617e-06
+15 2 +2.411966242960009e-06
+15 3 +7.157054724050202e-07
+15 4 +1.716069852294603e-06
+15 5 +3.013705168409485e-05
+15 6 +1.904842036316344e-04
+15 7 +7.619892865676402e-04
+15 8 +2.077488033630016e-03
+15 9 +3.878674705777598e-03
+15 10 +4.943717078853101e-03
+15 11 +4.303065526353173e-03
+15 12 +2.573644579802008e-03
+15 13 +1.075135802949144e-03
+15 14 +3.350972364282421e-04
+15 15 +1.464398667425757e-04
+15 16 +3.350972364282421e-04
+15 17 +1.075135802949144e-03
+15 18 +2.573644579802008e-03
+15 19 +4.303065526353173e-03
+15 20 +4.943717078853101e-03
+15 21 +3.878674705777598e-03
+15 22 +2.077488033630016e-03
+15 23 +7.619892865676402e-04
+15 24 +1.904842036316344e-04
+15 25 +3.013705168409485e-05
+15 26 +1.716069852294603e-06
+15 27 +7.157054724050202e-07
+15 28 +2.411966242960009e-06
+15 29 +2.435756825174617e-06
+15 30 +1.501257749887276e-06
+16 0 +2.323571591220434e-07
+16 1 +1.393475802039957e-06
+16 2 +2.091541786468290e-06
+16 3 +2.126752993258124e-06
+16 4 +4.835644738161436e-06
+16 5 +2.852474621669622e-05
+16 6 +1.659548141126014e-04
+16 7 +6.933826714206772e-04
+16 8 +1.963201825373199e-03
+16 9 +3.743280998425761e-03
+16 10 +4.819314315173870e-03
+16 11 +4.206415709376830e-03
+16 12 +2.492191540160578e-03
+16 13 +9.778007064550418e-04
+16 14 +2.051669934845689e-04
+16 15 +7.791777078841276e-08
+16 16 +2.051669934845689e-04
+16 17 +9.778007064550418e-04
+16 18 +2.492191540160578e-03
+16 19 +4.206415709376830e-03
+16 20 +4.819314315173870e-03
+16 21 +3.743280998425761e-03
+16 22 +1.963201825373199e-03
+16 23 +6.933826714206772e-04
+16 24 +1.659548141126014e-04
+16 25 +2.852474621669622e-05
+16 26 +4.835644738161436e-06
+16 27 +2.126752993258124e-06
+16 28 +2.091541786468290e-06
+16 29 +1.393475802039957e-06
+16 30 +2.323571591220434e-07
+17 0 +6.534106903077690e-07
+17 1 +1.487306123431552e-06
+17 2 +1.979172297174789e-06
+17 3 +1.976234205687681e-06
+17 4 +3.531951296812328e-06
+17 5 +2.095624840708503e-05
+17 6 +1.382476024308607e-04
+17 7 +6.241889811214583e-04
+17 8 +1.838277343110348e-03
+17 9 +3.567829091690213e-03
+17 10 +4.619649049288467e-03
+17 11 +4.029180994811406e-03
+17 12 +2.389692813180007e-03
+17 13 +9.801953064551853e-04
+17 14 +3.010360683959697e-04
+17 15 +1.339147984653232e-04
+17 16 +3.010360683959697e-04
+17 17 +9.801953064551853e-04
+17 18 +2.389692813180007e-03
+17 19 +4.029180994811406e-03
+17 20 +4.619649049288467e-03
+17 21 +3.567829091690213e-03
+17 22 +1.838277343110348e-03
+17 23 +6.241889811214583e-04
+17 24 +1.382476024308607e-04
+17 25 +2.095624840708503e-05
+17 26 +3.531951296812328e-06
+17 27 +1.976234205687681e-06
+17 28 +1.979172297174789e-06
+17 29 +1.487306123431552e-06
+17 30 +6.534106903077690e-07
+18 0 +1.876059361241538e-06
+18 1 +2.057784840208347e-06
+18 2 +1.777613271338336e-06
+18 3 +8.699234969159874e-07
+18 4 +1.968652577303025e-07
+18 5 +1.208171122223021e-05
+18 6 +1.171139379151092e-04
+18 7 +5.767959563594669e-04
+18 8 +1.740740070141123e-03
+18 9 +3.396802527464631e-03
+18 10 +4.382735284334756e-03
+18 11 +3.786662133385478e-03
+18 12 +2.219758764675431e-03
+18 13 +9.142867897053784e-04
+18 14 +3.110029558942641e-04
+18 15 +1.692446500089834e-04
+18 16 +3.110029558942641e-04
+18 17 +9.142867897053784e-04
+18 18 +2.219758764675431e-03
+18 19 +3.786662133385478e-03
+18 20 +4.382735284334756e-03
+18 21 +3.396802527464631e-03
+18 22 +1.740740070141123e-03
+18 23 +5.767959563594669e-04
+18 24 +1.171139379151092e-04
+18 25 +1.208171122223021e-05
+18 26 +1.968652577303025e-07
+18 27 +8.699234969159874e-07
+18 28 +1.777613271338336e-06
+18 29 +2.057784840208347e-06
+18 30 +1.876059361241538e-06
+19 0 +3.062840789809967e-06
+19 1 +2.527808076843036e-06
+19 2 +1.633271973488836e-06
+19 3 +9.736235185669393e-07
+19 4 +1.380503967706013e-06
+19 5 +1.469419689216322e-05
+19 6 +1.207048147882760e-04
+19 7 +5.719123589096748e-04
+19 8 +1.692871022540258e-03
+19 9 +3.256428719310688e-03
+19 10 +4.139632891211538e-03
+19 11 +3.504909208546127e-03
+19 12 +1.982724381278589e-03
+19 13 +7.402920491410022e-04
+19 14 +1.617462685140096e-04
+19 15 +2.053330572468854e-05
+19 16 +1.617462685140096e-04
+19 17 +7.402920491410022e-04
+19 18 +1.982724381278589e-03
+19 19 +3.504909208546127e-03
+19 20 +4.139632891211538e-03
+19 21 +3.256428719310688e-03
+19 22 +1.692871022540258e-03
+19 23 +5.719123589096748e-04
+19 24 +1.207048147882760e-04
+19 25 +1.469419689216322e-05
+19 26 +1.380503967706013e-06
+19 27 +9.736235185669393e-07
+19 28 +1.633271973488836e-06
+19 29 +2.527808076843036e-06
+19 30 +3.062840789809967e-06
+20 0 +3.965288889790357e-06
+20 1 +2.752129060676672e-06
+20 2 +1.161841016756794e-06
+20 3 +5.701545853936663e-07
+20 4 +3.098355792788597e-06
+20 5 +2.353023458085338e-05
+20 6 +1.431860973840122e-04
+20 7 +6.003781224686864e-04
+20 8 +1.683390907031591e-03
+20 9 +3.145644377756497e-03
+20 10 +3.912068929840578e-03
+20 11 +3.233033884460954e-03
+20 12 +1.771385768497788e-03
+20 13 +6.375462234056684e-04
+20 14 +1.434980619272460e-04
+20 15 +3.195125662258565e-05
+20 16 +1.434980619272460e-04
+20 17 +6.375462234056684e-04
+20 18 +1.771385768497788e-03
+20 19 +3.233033884460954e-03
+20 20 +3.912068929840578e-03
+20 21 +3.145644377756497e-03
+20 22 +1.683390907031591e-03
+20 23 +6.003781224686864e-04
+20 24 +1.431860973840122e-04
+20 25 +2.353023458085338e-05
+20 26 +3.098355792788597e-06
+20 27 +5.701545853936663e-07
+20 28 +1.161841016756794e-06
+20 29 +2.752129060676672e-06
+20 30 +3.965288889790357e-06
+21 0 +4.809474577021396e-06
+21 1 +3.265902127647575e-06
+21 2 +1.153290298311127e-06
+21 3 +1.734187798996243e-07
+21 4 +4.307226170255345e-06
+21 5 +3.268845994111086e-05
+21 6 +1.673952798494322e-04
+21 7 +6.297509875229867e-04
+21 8 +1.674683627968040e-03
+21 9 +3.043996694190472e-03
+21 10 +3.709176492544443e-03
+21 11 +2.997312013828311e-03
+21 12 +1.599019952667030e-03
+21 13 +5.728662937094130e-04
+21 14 +1.609992934304200e-04
+21 15 +7.737655471200314e-05
+21 16 +1.609992934304200e-04
+21 17 +5.728662937094130e-04
+21 18 +1.599019952667030e-03
+21 19 +2.997312013828311e-03
+21 20 +3.709176492544443e-03
+21 21 +3.043996694190472e-03
+21 22 +1.674683627968040e-03
+21 23 +6.297509875229867e-04
+21 24 +1.673952798494322e-04
+21 25 +3.268845994111086e-05
+21 26 +4.307226170255345e-06
+21 27 +1.734187798996243e-07
+21 28 +1.153290298311127e-06
+21 29 +3.265902127647575e-06
+21 30 +4.809474577021396e-06
+22 0 +5.555042869803733e-06
+22 1 +4.420635368354199e-06
+22 2 +3.028730507567648e-06
+22 3 +3.100707295620601e-06
+22 4 +9.243914480592160e-06
+22 5 +4.087587045427118e-05
+22 6 +1.760607022307088e-04
+22 7 +6.247370338825327e-04
+22 8 +1.629230426377810e-03
+22 9 +2.933474132420932e-03
+22 10 +3.538408480595143e-03
+22 11 +2.811983434809747e-03
+22 12 +1.451910099681378e-03
+22 13 +4.768548007400953e-04
+22 14 +9.099433778678653e-05
+22 15 +1.171746709542609e-05
+22 16 +9.099433778678653e-05
+22 17 +4.768548007400953e-04
+22 18 +1.451910099681378e-03
+22 19 +2.811983434809747e-03
+22 20 +3.538408480595143e-03
+22 21 +2.933474132420932e-03
+22 22 +1.629230426377810e-03
+22 23 +6.247370338825327e-04
+22 24 +1.760607022307088e-04
+22 25 +4.087587045427118e-05
+22 26 +9.243914480592160e-06
+22 27 +3.100707295620601e-06
+22 28 +3.028730507567648e-06
+22 29 +4.420635368354199e-06
+22 30 +5.555042869803733e-06
+23 0 +5.404189672356805e-06
+23 1 +4.892870830299098e-06
+23 2 +4.557607934560358e-06
+23 3 +5.537092541242136e-06
+23 4 +1.083855203679700e-05
+23 5 +3.547085934154473e-05
+23 6 +1.510775020427121e-04
+23 7 +5.676546615136151e-04
+23 8 +1.538572432507774e-03
+23 9 +2.819067621052516e-03
+23 10 +3.417150766148686e-03
+23 11 +2.705429500718680e-03
+23 12 +1.374749562040417e-03
+23 13 +4.333463453912217e-04
+23 14 +7.941771000134053e-05
+23 15 +1.479566369747944e-05
+23 16 +7.941771000134053e-05
+23 17 +4.333463453912217e-04
+23 18 +1.374749562040417e-03
+23 19 +2.705429500718680e-03
+23 20 +3.417150766148686e-03
+23 21 +2.819067621052516e-03
+23 22 +1.538572432507774e-03
+23 23 +5.676546615136151e-04
+23 24 +1.510775020427121e-04
+23 25 +3.547085934154473e-05
+23 26 +1.083855203679700e-05
+23 27 +5.537092541242136e-06
+23 28 +4.557607934560358e-06
+23 29 +4.892870830299098e-06
+23 30 +5.404189672356805e-06
+24 0 +3.955165536724783e-06
+24 1 +3.584741991399201e-06
+24 2 +3.508885372422360e-06
+24 3 +3.939399145842972e-06
+24 4 +4.822757117855054e-06
+24 5 +1.528945559383431e-05
+24 6 +1.028440676156929e-04
+24 7 +4.865196638755525e-04
+24 8 +1.440956718322974e-03
+24 9 +2.733108955173010e-03
+24 10 +3.366008382925306e-03
+24 11 +2.697020398631471e-03
+24 12 +1.391340841413025e-03
+24 13 +4.489266759395228e-04
+24 14 +8.931113109195366e-05
+24 15 +2.423720573557286e-05
+24 16 +8.931113109195366e-05
+24 17 +4.489266759395228e-04
+24 18 +1.391340841413025e-03
+24 19 +2.697020398631471e-03
+24 20 +3.366008382925306e-03
+24 21 +2.733108955173010e-03
+24 22 +1.440956718322974e-03
+24 23 +4.865196638755525e-04
+24 24 +1.028440676156929e-04
+24 25 +1.528945559383431e-05
+24 26 +4.822757117855054e-06
+24 27 +3.939399145842972e-06
+24 28 +3.508885372422360e-06
+24 29 +3.584741991399201e-06
+24 30 +3.955165536724783e-06
+25 0 +2.214633245267957e-06
+25 1 +1.585525169790331e-06
+25 2 +1.483434350126737e-06
+25 3 +1.972238971450125e-06
+25 4 +8.239998404110594e-07
+25 5 +3.274470653067594e-06
+25 6 +7.580088249132948e-05
+25 7 +4.457366278418717e-04
+25 8 +1.401383271659800e-03
+25 9 +2.715854393917418e-03
+25 10 +3.391604051034845e-03
+25 11 +2.775387360033505e-03
+25 12 +1.495302570719864e-03
+25 13 +5.208990796590071e-04
+25 14 +9.956297062102457e-05
+25 15 +4.074204269152465e-06
+25 16 +9.956297062102457e-05
+25 17 +5.208990796590071e-04
+25 18 +1.495302570719864e-03
+25 19 +2.775387360033505e-03
+25 20 +3.391604051034845e-03
+25 21 +2.715854393917418e-03
+25 22 +1.401383271659800e-03
+25 23 +4.457366278418717e-04
+25 24 +7.580088249132948e-05
+25 25 +3.274470653067594e-06
+25 26 +8.239998404110594e-07
+25 27 +1.972238971450125e-06
+25 28 +1.483434350126737e-06
+25 29 +1.585525169790331e-06
+25 30 +2.214633245267957e-06
+26 0 +1.270433760442372e-06
+26 1 +3.916387056204372e-07
+26 2 +2.231233391960010e-07
+26 3 +1.503250077270970e-06
+26 4 +3.125235105917701e-06
+26 5 +1.232580616064923e-05
+26 6 +9.755857943602422e-05
+26 7 +4.851055857767528e-04
+26 8 +1.457115907850736e-03
+26 9 +2.782087863624691e-03
+26 10 +3.471885190847275e-03
+26 11 +2.885556868129979e-03
+26 12 +1.636626067410123e-03
+26 13 +6.667717289764138e-04
+26 14 +2.263997570460314e-04
+26 15 +1.189280941020137e-04
+26 16 +2.263997570460314e-04
+26 17 +6.667717289764138e-04
+26 18 +1.636626067410123e-03
+26 19 +2.885556868129979e-03
+26 20 +3.471885190847275e-03
+26 21 +2.782087863624691e-03
+26 22 +1.457115907850736e-03
+26 23 +4.851055857767528e-04
+26 24 +9.755857943602422e-05
+26 25 +1.232580616064923e-05
+26 26 +3.125235105917701e-06
+26 27 +1.503250077270970e-06
+26 28 +2.231233391960010e-07
+26 29 +3.916387056204372e-07
+26 30 +1.270433760442372e-06
+27 0 +1.299354594308245e-06
+27 1 +5.522911269684502e-07
+27 2 +4.619462725569895e-07
+27 3 +2.265200690627976e-06
+27 4 +8.097778286089136e-06
+27 5 +3.240334951419666e-05
+27 6 +1.498979407853844e-04
+27 7 +5.803392722650569e-04
+27 8 +1.582282591448272e-03
+27 9 +2.903121917018245e-03
+27 10 +3.560888391768400e-03
+27 11 +2.942173666034896e-03
+27 12 +1.681218578604672e-03
+27 13 +7.183020985079531e-04
+27 14 +2.890668649459803e-04
+27 15 +1.861637286406668e-04
+27 16 +2.890668649459803e-04
+27 17 +7.183020985079531e-04
+27 18 +1.681218578604672e-03
+27 19 +2.942173666034896e-03
+27 20 +3.560888391768400e-03
+27 21 +2.903121917018245e-03
+27 22 +1.582282591448272e-03
+27 23 +5.803392722650569e-04
+27 24 +1.498979407853844e-04
+27 25 +3.240334951419666e-05
+27 26 +8.097778286089136e-06
+27 27 +2.265200690627976e-06
+27 28 +4.619462725569895e-07
+27 29 +5.522911269684502e-07
+27 30 +1.299354594308245e-06
+28 0 +2.040365887620211e-06
+28 1 +1.650917666586412e-06
+28 2 +1.774875725028040e-06
+28 3 +3.556606295780957e-06
+28 4 +1.121238171560661e-05
+28 5 +4.596797846319543e-05
+28 6 +1.924256950599667e-04
+28 7 +6.695452279961972e-04
+28 8 +1.710357891797661e-03
+28 9 +3.026685345607163e-03
+28 10 +3.623902514336288e-03
+28 11 +2.912274546185048e-03
+28 12 +1.573517463148064e-03
+28 13 +5.814421846018108e-04
+28 14 +1.585057189477723e-04
+28 15 +6.269150114528087e-05
+28 16 +1.585057189477723e-04
+28 17 +5.814421846018108e-04
+28 18 +1.573517463148064e-03
+28 19 +2.912274546185048e-03
+28 20 +3.623902514336288e-03
+28 21 +3.026685345607163e-03
+28 22 +1.710357891797661e-03
+28 23 +6.695452279961972e-04
+28 24 +1.924256950599667e-04
+28 25 +4.596797846319543e-05
+28 26 +1.121238171560661e-05
+28 27 +3.556606295780957e-06
+28 28 +1.774875725028040e-06
+28 29 +1.650917666586412e-06
+28 30 +2.040365887620211e-06
+29 0 +2.889936412548378e-06
+29 1 +2.523107656067143e-06
+29 2 +2.137256869716177e-06
+29 3 +2.408742209727751e-06
+29 4 +7.837863399645522e-06
+29 5 +4.293412664154757e-05
+29 6 +2.012737823483604e-04
+29 7 +7.094420933272181e-04
+29 8 +1.788723143733490e-03
+29 9 +3.116507360268357e-03
+29 10 +3.668485365947303e-03
+29 11 +2.864609577951840e-03
+29 12 +1.444029026933867e-03
+29 13 +4.403845160530417e-04
+29 14 +6.521201643211877e-05
+29 15 +2.389980714464935e-07
+29 16 +6.521201643211877e-05
+29 17 +4.403845160530417e-04
+29 18 +1.444029026933867e-03
+29 19 +2.864609577951840e-03
+29 20 +3.668485365947303e-03
+29 21 +3.116507360268357e-03
+29 22 +1.788723143733490e-03
+29 23 +7.094420933272181e-04
+29 24 +2.012737823483604e-04
+29 25 +4.293412664154757e-05
+29 26 +7.837863399645522e-06
+29 27 +2.408742209727751e-06
+29 28 +2.137256869716177e-06
+29 29 +2.523107656067143e-06
+29 30 +2.889936412548378e-06
+30 0 +3.189540008095353e-06
+30 1 +2.665276215102024e-06
+30 2 +1.538390887473923e-06
+30 3 +2.126393704049059e-07
+30 4 +2.872410902877456e-06
+30 5 +3.332700529158972e-05
+30 6 +1.874186897482456e-04
+30 7 +7.023315789295831e-04
+30 8 +1.808842702438711e-03
+30 9 +3.169450767598823e-03
+30 10 +3.727981450772813e-03
+30 11 +2.895425157778220e-03
+30 12 +1.436817970496205e-03
+30 13 +4.198892675035715e-04
+30 14 +6.131415667355502e-05
+30 15 +9.736971670136333e-06
+30 16 +6.131415667355502e-05
+30 17 +4.198892675035715e-04
+30 18 +1.436817970496205e-03
+30 19 +2.895425157778220e-03
+30 20 +3.727981450772813e-03
+30 21 +3.169450767598823e-03
+30 22 +1.808842702438711e-03
+30 23 +7.023315789295831e-04
+30 24 +1.874186897482456e-04
+30 25 +3.332700529158972e-05
+30 26 +2.872410902877456e-06
+30 27 +2.126393704049059e-07
+30 28 +1.538390887473923e-06
+30 29 +2.665276215102024e-06
+30 30 +3.189540008095353e-06
diff --git a/examples/3dgraphs/grid.jl b/examples/3dgraphs/grid.jl
new file mode 100644
index 0000000..305aa29
--- /dev/null
+++ b/examples/3dgraphs/grid.jl
@@ -0,0 +1,18 @@
+
+# Original Python:
+# from pyx import *
+#
+# g = graph.graphxyz(size=4, z=graph.axis.lin(min=0.001))
+# g.plot(graph.data.file("grid.dat", x=1, y=2, z=3), [graph.style.grid()])
+# g.writeEPSfile("grid")
+# g.writePDFfile("grid")
+# g.writeSVGfile("grid")
+
+using PyX
+
+g = graph.graphxyz(size=4, z=graph_axis.lin(min=0.001))
+plot(g, graph_data.file("examples/3dgraphs/grid.dat", x=1, y=2, z=3),
+ [graph_style.grid()])
+writeEPSfile(g, "grid")
+writePDFfile(g, "grid")
+
diff --git a/examples/bargraphs/changebar.jl b/examples/bargraphs/changebar.jl
new file mode 100644
index 0000000..cbb68aa
--- /dev/null
+++ b/examples/bargraphs/changebar.jl
@@ -0,0 +1,17 @@
+
+# Original Python:
+
+# from pyx import *
+
+# g = graph.graphxy(width=8, x=graph.axis.bar())
+# g.plot(graph.data.file("minimal.dat", xname=0, y=2), [graph.style.changebar()])
+# g.writeEPSfile("changebar")
+# g.writePDFfile("changebar")
+# g.writeSVGfile("changebar")
+
+using PyX
+
+g = graph.graphxy(width=8, x=graph_axis.bar())
+plot(g, graph_data.file("examples/bargraphs/minimal.dat", xname=0, y=2), [graph_style.changebar()])
+writeEPSfile(g, "changebar")
+writePDFfile(g, "changebar")
diff --git a/examples/bargraphs/compare.jl b/examples/bargraphs/compare.jl
new file mode 100644
index 0000000..b2a43e3
--- /dev/null
+++ b/examples/bargraphs/compare.jl
@@ -0,0 +1,22 @@
+
+# Original Python:
+
+# from pyx import *
+
+# g = graph.graphxy(width=8, x=graph.axis.nestedbar())
+# g.plot([graph.data.file("minimal.dat", xname="$0, 0", y=2),
+# graph.data.file("minimal.dat", xname="$0, 1", y=3)],
+# [graph.style.bar()])
+# g.writeEPSfile("compare")
+# g.writePDFfile("compare")
+# g.writeSVGfile("compare")
+
+using PyX
+using LaTeXStrings
+
+g = graph.graphxy(width=8, x=graph_axis.nestedbar())
+plot(g, [graph_data.file("examples/bargraphs/minimal.dat", xname=L"$0, 0", y=2),
+ graph_data.file("examples/bargraphs/minimal.dat", xname=L"$0, 1", y=3)],
+ [graph_style.bar()])
+writeEPSfile(g, "compare")
+writePDFfile(g, "compare")
diff --git a/examples/bargraphs/errors.jl b/examples/bargraphs/errors.jl
new file mode 100644
index 0000000..da22081
--- /dev/null
+++ b/examples/bargraphs/errors.jl
@@ -0,0 +1,35 @@
+
+# Original Python:
+
+# from random import random
+# from pyx import *
+
+# g = graph.graphxy(width=8, x=graph.axis.bar())
+# g.plot(graph.data.file("minimal.dat", xname=0, y=2, stack=3,
+# dy="1+random()", dstack="1+random()",
+# context={"random": random}),
+# [graph.style.errorbar(),
+# graph.style.stackedbarpos("stack"),
+# graph.style.bar([color.rgb.green]),
+# graph.style.range({"y": "stack"}),
+# graph.style.errorbar()])
+# g.writeEPSfile("errors")
+# g.writePDFfile("errors")
+# g.writeSVGfile("errors")
+
+using PyX
+
+using PyCall
+@pyimport random
+
+g = graph.graphxy(width=8, x=graph_axis.bar())
+plot(g, graph_data.file("examples/bargraphs/minimal.dat", xname=0, y=2, stack=3,
+ dy="1+random()", dstack="1+random()",
+ context=Dict("random"=>random.random)),
+ [graph_style.errorbar(),
+ graph_style.stackedbarpos("stack"),
+ graph_style.bar([color_rgb.green]),
+ graph_style.range(Dict("y"=>"stack")),
+ graph_style.errorbar()])
+writeEPSfile(g, "errors")
+writePDFfile(g, "errors")
diff --git a/examples/bargraphs/fromvalue.jl b/examples/bargraphs/fromvalue.jl
new file mode 100644
index 0000000..0b8e72e
--- /dev/null
+++ b/examples/bargraphs/fromvalue.jl
@@ -0,0 +1,19 @@
+
+# Original Python:
+
+# from pyx import *
+
+# g = graph.graphxy(width=8, x=graph.axis.bar())
+# g.plot(graph.data.file("minimal.dat", xname=0, y=2),
+# [graph.style.barpos(fromvalue=0), graph.style.bar()])
+# g.writeEPSfile("fromvalue")
+# g.writePDFfile("fromvalue")
+# g.writeSVGfile("fromvalue")
+
+using PyX
+
+g = graph.graphxy(width=8, x=graph_axis.bar())
+plot(g, graph_data.file("examples/bargraphs/minimal.dat", xname=0, y=2),
+ [graph_style.barpos(fromvalue=0), graph_style.bar()])
+writeEPSfile(g, "fromvalue")
+writePDFfile(g, "fromvalue")
diff --git a/examples/bargraphs/minimal.dat b/examples/bargraphs/minimal.dat
new file mode 100644
index 0000000..d7b89a3
--- /dev/null
+++ b/examples/bargraphs/minimal.dat
@@ -0,0 +1,12 @@
+January -5 1
+Feburary -4 3
+March 0 8
+April 3 13
+May 7 18
+June 10 21
+July 12 23
+August 12 23
+September 8 19
+October 4 13
+November 0 6
+December -4 2
diff --git a/examples/bargraphs/minimal.jl b/examples/bargraphs/minimal.jl
new file mode 100644
index 0000000..54683c1
--- /dev/null
+++ b/examples/bargraphs/minimal.jl
@@ -0,0 +1,15 @@
+
+# Original Python:
+
+# from pyx import *
+
+# g = graph.graphxy(width=8, x=graph.axis.bar())
+# g.plot(graph.data.file("minimal.dat", xname=0, y=2), [graph.style.bar()])
+# g.writeEPSfile("minimal")
+# g.writePDFfile("minimal")
+# g.writeSVGfile("minimal")
+
+g = graph.graphxy(width=8, x=graph_axis.bar())
+plot(g, graph_data.file("examples/bargraphs/minimal.dat", xname=0, y=2), [graph_style.bar()])
+writeEPSfile(g, "bar_minimal")
+writePDFfile(g, "bar_minimal")
diff --git a/examples/bargraphs/month.jl b/examples/bargraphs/month.jl
new file mode 100644
index 0000000..8f5b49d
--- /dev/null
+++ b/examples/bargraphs/month.jl
@@ -0,0 +1,27 @@
+
+# Original Python:
+
+# from pyx import *
+
+# mypainter = graph.axis.painter.bar(nameattrs=[trafo.rotate(45),
+# text.halign.right],
+# innerticklength=0.1)
+# myaxis = graph.axis.bar(painter=mypainter)
+
+# g = graph.graphxy(width=8, x=myaxis)
+# g.plot(graph.data.file("minimal.dat", xname=1, y=2), [graph.style.bar()])
+# g.writeEPSfile("month")
+# g.writePDFfile("month")
+# g.writeSVGfile("month")
+
+using PyX
+mypainter = graph_axis_painter.bar(nameattrs=[trafo.rotate(45),
+ text_halign.right],
+ innerticklength=0.1)
+myaxis = graph_axis.bar(painter=mypainter)
+
+g = graph.graphxy(width=8, x=myaxis)
+plot(g, graph_data.file("examples/bargraphs/minimal.dat", xname=1, y=2),
+ [graph_style.bar()])
+writeEPSfile(g, "month")
+writePDFfile(g, "month")
diff --git a/examples/bargraphs/stacked.jl b/examples/bargraphs/stacked.jl
new file mode 100644
index 0000000..a069b76
--- /dev/null
+++ b/examples/bargraphs/stacked.jl
@@ -0,0 +1,27 @@
+
+# Original Python:
+
+# from pyx import *
+
+# g = graph.graphxy(width=14, height=6, x=graph.axis.bar())
+# g.plot(graph.data.file("minimal.dat", xname=0, y=2, stack=3),
+# [graph.style.bar(),
+# graph.style.text("y"),
+# graph.style.stackedbarpos("stack"),
+# graph.style.bar([color.rgb.green]),
+# graph.style.text("stack")])
+# g.writeEPSfile("stacked")
+# g.writePDFfile("stacked")
+# g.writeSVGfile("stacked")
+
+using PyX
+
+g = graph.graphxy(width=14, height=6, x=graph_axis.bar())
+plot(g, graph_data.file("examples/bargraphs/minimal.dat", xname=0, y=2, stack=3),
+ [graph_style.bar(),
+ graph_style.text("y"),
+ graph_style.stackedbarpos("stack"),
+ graph_style.bar([color_rgb.green]),
+ graph_style.text("stack")])
+writeEPSfile(g, "stacked")
+writePDFfile(g, "stacked")
diff --git a/examples/drawing/arrow.jl b/examples/drawing/arrow.jl
new file mode 100644
index 0000000..ec2cb06
--- /dev/null
+++ b/examples/drawing/arrow.jl
@@ -0,0 +1,23 @@
+
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# c.stroke(path.curve(0, 0, 0, 4, 2, 4, 3, 3),
+# [style.linewidth.THICK, style.linestyle.dashed, color.rgb.blue,
+# deco.earrow([deco.stroked([color.rgb.red, style.linejoin.round]),
+# deco.filled([color.rgb.green])], size=1)])
+# c.writeEPSfile("arrow")
+# c.writePDFfile("arrow")
+# c.writeSVGfile("arrow")
+
+
+using PyX
+
+c = canvas.canvas()
+stroke(c, path.curve(0, 0, 0, 4, 2, 4, 3, 3),
+ [style_linewidth.THICK, style_linestyle.dashed, color_rgb.blue,
+ deco.earrow([deco.stroked([color_rgb.red, style_linejoin.round]),
+ deco.filled([color_rgb.green])], size=1)])
+writeEPSfile(c, "arrow")
+writePDFfile(c, "arrow")
diff --git a/examples/drawing/metapost.jl.broken b/examples/drawing/metapost.jl.broken
new file mode 100644
index 0000000..bcd2f84
--- /dev/null
+++ b/examples/drawing/metapost.jl.broken
@@ -0,0 +1,51 @@
+
+# Original Python:
+# from pyx import *
+# from pyx.metapost.path import beginknot, endknot, smoothknot, tensioncurve
+
+# p1, p2, p3, p4, p5 = (0, 0), (2, 1.33), (1.3, 3), (0.33, 2.33), (1, 1.67)
+# openpath = metapost.path.path([
+# beginknot(*p1), tensioncurve(), smoothknot(*p2), tensioncurve(),
+# smoothknot(*p3), tensioncurve(), smoothknot(*p4), tensioncurve(),
+# endknot(*p5)])
+# closedpath = metapost.path.path([
+# smoothknot(*p1), tensioncurve(), smoothknot(*p2), tensioncurve(),
+# smoothknot(*p3), tensioncurve(), smoothknot(*p4), tensioncurve(),
+# smoothknot(*p5), tensioncurve()])
+# c = canvas.canvas()
+# for p in [p1, p2, p3, p4, p5]:
+# c.fill(path.circle(p[0], p[1], 0.05), [color.rgb.red])
+# c.fill(path.circle(p[0], p[1], 0.05), [color.rgb.red, trafo.translate(2, 0)])
+# c.stroke(openpath)
+# c.stroke(closedpath, [trafo.translate(2, 0)])
+
+# c.writeEPSfile("metapost")
+# c.writePDFfile("metapost")
+# c.writeSVGfile("metapost")
+
+using PyX
+
+beginknot = metapost_path.beginknot
+endknot = metapost_path.endknot
+smoothknot = metapost_path.smoothknot
+tensioncurve = metapost_path.smoothknot
+
+p1, p2, p3, p4, p5 = (0, 0), (2, 1.33), (1.3, 3), (0.33, 2.33), (1, 1.67)
+openpath = metapost_path.path([
+ beginknot(p1...), tensioncurve(), smoothknot(p2...), tensioncurve(),
+ smoothknot(p3...), tensioncurve(), smoothknot(p4...), tensioncurve(),
+ endknot(p5...)])
+closedpath = metapost_path.path([
+ smoothknot(p1...), tensioncurve(), smoothknot(p2...), tensioncurve(),
+ smoothknot(p3...), tensioncurve(), smoothknot(p4...), tensioncurve(),
+ smoothknot(p5...), tensioncurve()])
+c = canvas.canvas()
+for p in [p1, p2, p3, p4, p5]:
+ fill(c, path.circle(p[0], p[1], 0.05), [color_rgb.red])
+ fill(c, path.circle(p[0], p[1], 0.05), [color_rgb.red, trafo.translate(2, 0)])
+stroke(c, openpath)
+stroke(c, closedpath, [trafo.translate(2, 0)])
+
+writeEPSfile(c, "metapost")
+writePDFfile(c, "metapost")
+
diff --git a/examples/drawing/path.jl b/examples/drawing/path.jl
new file mode 100644
index 0000000..380d3ed
--- /dev/null
+++ b/examples/drawing/path.jl
@@ -0,0 +1,20 @@
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# c.stroke(path.line(0, 0, 3, 0))
+# c.stroke(path.rect(0, 1, 1, 1))
+# c.fill(path.circle(2.5, 1.5, 0.5))
+# c.writeEPSfile("path")
+# c.writePDFfile("path")
+# c.writeSVGfile("path")
+
+using PyX
+
+c = canvas.canvas()
+stroke(c, path.line(0, 0, 3, 0))
+stroke(c, path.rect(0, 1, 1, 1))
+pyx_fill(c, path.circle(2.5, 1.5, 0.5))
+
+writeEPSfile(c, "path")
+writePDFfile(c, "path")
diff --git a/examples/drawing/pathitem.jl b/examples/drawing/pathitem.jl
new file mode 100644
index 0000000..2835313
--- /dev/null
+++ b/examples/drawing/pathitem.jl
@@ -0,0 +1,46 @@
+
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+
+# rect1 = path.path(path.moveto(0, 0), path.lineto(1, 0),
+# path.moveto(1, 0), path.lineto(1, 1),
+# path.moveto(1, 1), path.lineto(0, 1),
+# path.moveto(0, 1), path.lineto(0, 0))
+# rect2 = path.path(path.moveto(2, 0), path.lineto(3, 0),
+# path.lineto(3, 1), path.lineto(2, 1),
+# path.lineto(2, 0))
+# rect3 = path.path(path.moveto(4, 0), path.lineto(5, 0),
+# path.lineto(5, 1), path.lineto(4, 1),
+# path.closepath())
+
+# c.stroke(rect1, [style.linewidth.THICK])
+# c.stroke(rect2, [style.linewidth.THICK])
+# c.stroke(rect3, [style.linewidth.THICK])
+
+# c.writeEPSfile("pathitem")
+# c.writePDFfile("pathitem")
+# c.writeSVGfile("pathitem")
+
+using PyX
+
+c = canvas.canvas()
+
+rect1 = path.path(path.moveto(0, 0), path.lineto(1, 0),
+ path.moveto(1, 0), path.lineto(1, 1),
+ path.moveto(1, 1), path.lineto(0, 1),
+ path.moveto(0, 1), path.lineto(0, 0))
+rect2 = path.path(path.moveto(2, 0), path.lineto(3, 0),
+ path.lineto(3, 1), path.lineto(2, 1),
+ path.lineto(2, 0))
+rect3 = path.path(path.moveto(4, 0), path.lineto(5, 0),
+ path.lineto(5, 1), path.lineto(4, 1),
+ path.closepath())
+
+stroke(c, rect1, [style_linewidth.THICK])
+stroke(c, rect2, [style_linewidth.THICK])
+stroke(c, rect3, [style_linewidth.THICK])
+
+writeEPSfile(c, "pathitem")
+writePDFfile(c, "pathitem")
diff --git a/examples/drawing/strokefill.jl b/examples/drawing/strokefill.jl
new file mode 100644
index 0000000..50b2d35
--- /dev/null
+++ b/examples/drawing/strokefill.jl
@@ -0,0 +1,20 @@
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# c.stroke(path.rect(0, 0, 1, 1), [style.linewidth.Thick,
+# color.rgb.red,
+# deco.filled([color.rgb.green])])
+# c.writeEPSfile("strokefill")
+# c.writePDFfile("strokefill")
+# c.writeSVGfile("strokefill")
+
+using PyX
+
+c = canvas.canvas()
+stroke(c, path.rect(0, 0, 1, 1),
+ [style_linewidth.Thick,
+ color_rgb.red,
+ deco.filled([color_rgb.green])])
+writeEPSfile(c, "strokefill")
+writePDFfile(c, "strokefill")
diff --git a/examples/drawing/style.jl b/examples/drawing/style.jl
new file mode 100644
index 0000000..3a8c105
--- /dev/null
+++ b/examples/drawing/style.jl
@@ -0,0 +1,29 @@
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# c.stroke(path.line(0, 0, 4, 0),
+# [style.linewidth.THICK, style.linestyle.dashed, color.rgb.red])
+# c.stroke(path.line(0, -1, 4, -1),
+# [style.linewidth(0.2), style.linecap.round, color.rgb.green])
+# c.fill(path.rect(0, -3, 4, 1), [color.rgb.blue])
+# c.writeEPSfile("style")
+# c.writePDFfile("style")
+# c.writeSVGfile("style")
+
+using PyX
+
+c = canvas.canvas()
+stroke(c, path.line(0, 0, 4, 0),
+ [style_linewidth.THICK,
+ style_linestyle.dashed,
+ color_rgb.red])
+stroke(c, path.line(0, -1, 4, -1),
+ [style.linewidth(0.2),
+ style_linecap.round,
+ color_rgb.green])
+pyx_fill(c, path.rect(0, -3, 4, 1),
+ [color_rgb.blue])
+
+writeEPSfile(c, "style")
+writePDFfile(c, "style")
diff --git a/examples/drawing2d/clipping.jl b/examples/drawing2d/clipping.jl
new file mode 100644
index 0000000..e21f4bb
--- /dev/null
+++ b/examples/drawing2d/clipping.jl
@@ -0,0 +1,33 @@
+# Original Python:
+# from pyx import *
+
+# clippath = path.circle(0, 0, 1)
+# drawpath = path.line(-2, -2, 1.2, 2)
+
+# cl = canvas.canvas([canvas.clip(clippath)])
+# cl.stroke(drawpath, [color.rgb.red, style.linewidth(1.0)])
+
+# c = canvas.canvas()
+# c.stroke(drawpath, [style.linewidth(1.0)])
+# c.insert(cl)
+# c.stroke(clippath)
+
+# c.writeEPSfile("clipping")
+# c.writePDFfile("clipping")
+# c.writeSVGfile("clipping")
+
+using PyX
+
+clippath = path.circle(0, 0, 1)
+drawpath = path.line(-2, -2, 1.2, 2)
+
+cl = canvas.canvas([canvas.clip(clippath)])
+stroke(cl, drawpath, [color_rgb.red, style.linewidth(1.0)])
+
+c = canvas.canvas()
+stroke(c, drawpath, [style.linewidth(1.0)])
+pyx_insert(c, cl)
+stroke(c, clippath)
+
+writeEPSfile(c, "clipping")
+writePDFfile(c, "clipping")
diff --git a/examples/drawing2d/ellipse.jl b/examples/drawing2d/ellipse.jl
new file mode 100644
index 0000000..931ba89
--- /dev/null
+++ b/examples/drawing2d/ellipse.jl
@@ -0,0 +1,36 @@
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# circ = path.circle(0, 0, 1)
+
+# # variant 1: use trafo as a deformer
+# c.stroke(circ, [style.linewidth.THIck,
+# trafo.scale(sx=2, sy=0.9), trafo.rotate(45), trafo.translate(1, 0)])
+
+# # variant 2: transform a subcanvas
+# sc = canvas.canvas()
+# sc.stroke(circ, [style.linewidth.THIck])
+# c.insert(sc, [trafo.scale(sx=2, sy=0.9), trafo.rotate(45), trafo.translate(5, 0)])
+
+# c.writeEPSfile("ellipse")
+# c.writePDFfile("ellipse")
+# c.writeSVGfile("ellipse")
+
+
+using PyX
+
+c = canvas.canvas()
+circ = path.circle(0, 0, 1)
+
+# variant 1: use trafo as a deformer
+stroke(c, circ, [style_linewidth.THIck,
+ trafo.scale(sx=2, sy=0.9), trafo.rotate(45), trafo.translate(1, 0)])
+
+# variant 2: transform a subcanvas
+sc = canvas.canvas()
+stroke(sc, circ, [style_linewidth.THIck])
+pyx_insert(c, sc, [trafo.scale(sx=2, sy=0.9), trafo.rotate(45), trafo.translate(5, 0)])
+
+writeEPSfile(c, "ellipse")
+writePDFfile(c, "ellipse")
diff --git a/examples/drawing2d/insert.jl b/examples/drawing2d/insert.jl
new file mode 100644
index 0000000..41bb0b9
--- /dev/null
+++ b/examples/drawing2d/insert.jl
@@ -0,0 +1,32 @@
+# Original Python:
+# from math import sin, cos, radians
+# from pyx import *
+
+# angle = 10
+# factor = 1.0 / (cos(radians(angle)) + sin(radians(angle)))
+
+# cc = canvas.canvas()
+# cc.stroke(path.rect(-2, -2, 4, 4))
+
+# c = canvas.canvas()
+# for i in range(10):
+# c.insert(cc, [trafo.rotate(i*angle), trafo.scale(factor**i)])
+# c.writeEPSfile("insert")
+# c.writePDFfile("insert")
+# c.writeSVGfile("insert")
+
+using PyX
+
+angle = 10
+factor = 1.0 / (cos(deg2rad(angle)) + sin(deg2rad(angle)))
+
+cc = canvas.canvas()
+stroke(cc, path.rect(-2, -2, 4, 4))
+
+c = canvas.canvas()
+for i in 0:9
+ pyx_insert(c, cc, [trafo.rotate(i*angle), trafo.scale(factor^i)])
+end
+
+writeEPSfile(c, "insert")
+writePDFfile(c, "insert")
diff --git a/examples/drawing2d/parallel.jl b/examples/drawing2d/parallel.jl
new file mode 100644
index 0000000..73b284a
--- /dev/null
+++ b/examples/drawing2d/parallel.jl
@@ -0,0 +1,23 @@
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# p = path.line(0, 0, 2, 2)
+# p.append(path.curveto(2, 0, 3, 0, 4, 0))
+# c.stroke(p)
+# c.stroke(p, [deformer.parallel(0.2), color.rgb.blue])
+# c.stroke(p, [deformer.parallel(-0.2), color.rgb.red])
+# c.writeEPSfile("parallel")
+# c.writePDFfile("parallel")
+# c.writeSVGfile("parallel")
+
+using PyX
+
+c = canvas.canvas()
+p = path.line(0, 0, 2, 2)
+pyx_append(p, path.curveto(2, 0, 3, 0, 4, 0))
+stroke(c, p)
+stroke(c, p, [deformer.parallel(0.2), color_rgb.blue])
+stroke(c, p, [deformer.parallel(-0.2), color_rgb.red])
+writeEPSfile(c, "parallel")
+writePDFfile(c, "parallel")
diff --git a/examples/drawing2d/smoothed.jl b/examples/drawing2d/smoothed.jl
new file mode 100644
index 0000000..8bce718
--- /dev/null
+++ b/examples/drawing2d/smoothed.jl
@@ -0,0 +1,23 @@
+# Original Python:
+# from pyx import *
+
+# c = canvas.canvas()
+# p = path.line(0, 0, 2, 2)
+# p.append(path.curveto(2, 0, 3, 0, 4, 0))
+# c.stroke(p)
+# c.stroke(p, [deformer.smoothed(1.0), color.rgb.blue])
+# c.stroke(p, [deformer.smoothed(2.0), color.rgb.red])
+# c.writeEPSfile("smoothed")
+# c.writePDFfile("smoothed")
+# c.writeSVGfile("smoothed")
+
+using PyX
+
+c = canvas.canvas()
+p = path.line(0, 0, 2, 2)
+pyx_append(p, path.curveto(2, 0, 3, 0, 4, 0))
+stroke(c, p)
+stroke(c, p, [deformer.smoothed(1.0), color_rgb.blue])
+stroke(c, p, [deformer.smoothed(2.0), color_rgb.red])
+writeEPSfile(c, "smoothed")
+writePDFfile(c, "smoothed")
diff --git a/examples/graphstyles/density.jl b/examples/graphstyles/density.jl
new file mode 100644
index 0000000..957b487
--- /dev/null
+++ b/examples/graphstyles/density.jl
@@ -0,0 +1,86 @@
+
+# Original Python:
+# from pyx import *
+#
+# # Mandelbrot calculation contributed by Stephen Phillips
+#
+# # Mandelbrot parameters
+# re_min = -2
+# re_max = 0.5
+# im_min = -1.25
+# im_max = 1.25
+# gridx = 100
+# gridy = 100
+# max_iter = 10
+#
+# # Set-up
+# re_step = (re_max - re_min) / gridx
+# im_step = (im_max - im_min) / gridy
+# d = []
+#
+# # Compute fractal
+# for re_index in range(gridx):
+# re = re_min + re_step * (re_index + 0.5)
+# for im_index in range(gridy):
+# im = im_min + im_step * (im_index + 0.5)
+# c = complex(re, im)
+# n = 0
+# z = complex(0, 0)
+# while n < max_iter and abs(z) < 2:
+# z = (z * z) + c
+# n += 1
+# d.append([re, im, n])
+#
+# # Plot graph
+# g = graph.graphxy(height=8, width=8,
+# x=graph.axis.linear(min=re_min, max=re_max, title=r"$\Re(c)$"),
+# y=graph.axis.linear(min=im_min, max=im_max, title=r'$\Im(c)$'))
+# g.plot(graph.data.points(d, x=1, y=2, color=3, title="iterations"),
+# [graph.style.density(gradient=color.rgbgradient.Rainbow)])
+# g.writeEPSfile()
+# g.writePDFfile()
+# g.writeSVGfile()
+
+using PyX
+using LaTeXStrings
+
+# Mandelbrot parameters
+re_min = -2
+re_max = 0.5
+im_min = -1.25
+im_max = 1.25
+gridx = 100
+gridy = 100
+max_iter = 10
+
+# Set-up
+re_step = (re_max - re_min) / gridx
+im_step = (im_max - im_min) / gridy
+# Julia note: indexing is opposite of what would be idiomatic Julia
+d = zeros(gridx*gridy, 3)
+
+# Compute fractal
+for re_index in 0:(gridx-1)
+ re = re_min + re_step * (re_index + 0.5)
+ for im_index in 0:(gridy-1)
+ im = im_min + im_step * (im_index + 0.5)
+ c = complex(re, im)
+ n = 0
+ z = complex(0, 0)
+ while n < max_iter && abs(z) < 2
+ z = (z * z) + c
+ n += 1
+ end
+ d[re_index*gridy + im_index + 1, :] = [re, im, n]
+ end
+end
+
+# Plot graph
+g = graph.graphxy(height=8, width=8,
+ x=graph_axis.linear(min=re_min, max=re_max, title=L"$\Re(c)$"),
+ y=graph_axis.linear(min=im_min, max=im_max, title=L"$\Im(c)$"))
+plot(g, graph_data.points(d, x=1, y=2, color=3, title="iterations"),
+ [graph_style.density(gradient=color_rgbgradient.Rainbow)])
+writeEPSfile(g, "density")
+writePDFfile(g, "density")
+
diff --git a/examples/graphstyles/errorbar.dat b/examples/graphstyles/errorbar.dat
new file mode 100644
index 0000000..bd33a65
--- /dev/null
+++ b/examples/graphstyles/errorbar.dat
@@ -0,0 +1,6 @@
+1 2 0.7
+2 3 0.9
+3 8 0.8
+4 13 1.2
+5 18 1.1
+6 21 1.3
diff --git a/examples/graphstyles/errorbar.jl b/examples/graphstyles/errorbar.jl
new file mode 100644
index 0000000..94b80dc
--- /dev/null
+++ b/examples/graphstyles/errorbar.jl
@@ -0,0 +1,19 @@
+
+# Original Python:
+# from pyx import *
+#
+# g = graph.graphxy(width=8)
+# g.plot(graph.data.file("errorbar.dat", x=1, y=2, dy=3),
+# [graph.style.symbol(), graph.style.errorbar()])
+# g.writeEPSfile("errorbar")
+# g.writePDFfile("errorbar")
+# g.writeSVGfile("errorbar")
+
+using PyX
+
+g = graph.graphxy(width=8)
+plot(g, graph_data.file("examples/graphstyles/errorbar.dat", x=1, y=2, dy=3),
+ [graph_style.symbol(), graph_style.errorbar()])
+writeEPSfile(g, "errorbar")
+writePDFfile(g, "errorbar")
+
diff --git a/examples/graphstyles/histogram.jl b/examples/graphstyles/histogram.jl
new file mode 100644
index 0000000..ebe35c6
--- /dev/null
+++ b/examples/graphstyles/histogram.jl
@@ -0,0 +1,29 @@
+
+# Original Python:
+# from pyx import *
+#
+# d = graph.data.points([(1, 0.3),
+# (2, -0.7),
+# (3, -0.3),
+# (4, 0.8),
+# (5, 0.5)], x=1, y=2)
+#
+# g = graph.graphxy(width=8)
+# g.plot(d, [graph.style.histogram()])
+# g.writeEPSfile("histogram")
+# g.writePDFfile("histogram")
+# g.writeSVGfile("histogram")
+
+using PyX
+
+d = graph_data.points([(1, 0.3),
+ (2, -0.7),
+ (3, -0.3),
+ (4, 0.8),
+ (5, 0.5)], x=1, y=2)
+
+g = graph.graphxy(width=8)
+plot(g, d, [graph_style.histogram()])
+writeEPSfile(g, "histogram")
+writePDFfile(g, "histogram")
+
diff --git a/examples/graphstyles/usesymbol.jl b/examples/graphstyles/usesymbol.jl
new file mode 100644
index 0000000..af49f99
--- /dev/null
+++ b/examples/graphstyles/usesymbol.jl
@@ -0,0 +1,41 @@
+
+# Original Python:
+# from pyx import *
+#
+# # colors and symbols to use (alternatingly)
+# colors = [color.rgb.red, color.rgb.green, color.rgb.blue, color.gray.black]
+# symbols = [graph.style._diamondsymbol, graph.style._trianglesymbol, graph.style._circlesymbol]
+#
+# # create the graph styles to be used below
+# symbol = graph.style.symbol(symbol=attr.changelist(symbols),
+# symbolattrs=[deco.stroked.clear,
+# attr.changelist([deco.filled([cc]) for cc in colors])])
+# line = graph.style.line(lineattrs=[attr.changelist(colors),
+# attr.changelist([style.linestyle.solid])])
+#
+# g = graph.graphxy(width=8, x=graph.axis.linear(min=0, max=1))
+# g.plot([graph.data.function("y(x) = x**%d" % i, points=8) for i in range(1, 7)],
+# styles=[line, symbol])
+# g.writeEPSfile("usesymbol")
+# g.writePDFfile("usesymbol")
+# g.writeSVGfile("usesymbol")
+
+using PyX
+
+# colors and symbols to use (alternatingly)
+colors = [color_rgb.red, color_rgb.green, color_rgb.blue, color_gray.black]
+symbols = [graph_style._diamondsymbol, graph_style._trianglesymbol, graph_style._circlesymbol]
+
+# create the graph styles to be used below
+symbol = graph_style.symbol(symbol=attr.changelist(symbols),
+ symbolattrs=[deco_stroked.clear,
+ attr.changelist([deco.filled([cc]) for cc in colors])])
+line = graph_style.line(lineattrs=[attr.changelist(colors),
+ attr.changelist([style_linestyle.solid])])
+
+g = graph.graphxy(width=8, x=graph_axis.linear(min=0, max=1))
+plot(g, [graph_data_function("y(x) = x**$i", points=8) for i in 1:7],
+ styles=[line, symbol])
+writeEPSfile(g, "usesymbol")
+writePDFfile(g, "usesymbol")
+
diff --git a/examples/splitgraphs/minimal.jl b/examples/splitgraphs/minimal.jl
new file mode 100644
index 0000000..e0e85cf
--- /dev/null
+++ b/examples/splitgraphs/minimal.jl
@@ -0,0 +1,25 @@
+# Original Python:
+# from pyx import *
+
+# g = graph.graphxy(width=8, x=graph.axis.split())
+# g.plot(graph.data.points([((0, 0.1), 0.1),
+# ((0, 0.5), 0.2),
+# ((0, 0.9), 0.3),
+# ((1, 101), 0.7),
+# ((1, 105), 0.8),
+# ((1, 109), 0.9)], x=1, y=2))
+# g.writeEPSfile("minimal")
+# g.writePDFfile("minimal")
+# g.writeSVGfile("minimal")
+
+using PyX
+
+g = graph.graphxy(width=8, x=graph_axis.split())
+plot(g, graph_data.points([((0, 0.1), 0.1),
+ ((0, 0.5), 0.2),
+ ((0, 0.9), 0.3),
+ ((1, 101), 0.7),
+ ((1, 105), 0.8),
+ ((1, 109), 0.9)], x=1, y=2))
+writeEPSfile(g, "minimal")
+writePDFfile(g, "minimal")
diff --git a/examples/splitgraphs/splitatvalue.jl b/examples/splitgraphs/splitatvalue.jl
new file mode 100644
index 0000000..c09d194
--- /dev/null
+++ b/examples/splitgraphs/splitatvalue.jl
@@ -0,0 +1,23 @@
+# Original Python:
+# from pyx import *
+
+# pf = graph.data.paramfunction
+
+# g = graph.graphxy(width=8, x=graph.axis.split())
+# g.plot(pf("k", -1, 1,
+# "x, y = splitatvalue(k, -0.9, 0.9), k**100",
+# points=1000))
+# g.writeEPSfile("splitatvalue")
+# g.writePDFfile("splitatvalue")
+# g.writeSVGfile("splitatvalue")
+
+using PyX
+
+pf = graph_data.paramfunction
+
+g = graph.graphxy(width=8, x=graph_axis.split())
+plot(g, pf("k", -1, 1,
+ "x, y = splitatvalue(k, -0.9, 0.9), k**100",
+ points=1000))
+writeEPSfile(g, "splitatvalue")
+writePDFfile(g, "splitatvalue")
diff --git a/test/runtests.jl b/test/runtests.jl
index d196656..c723586 100644
--- a/test/runtests.jl
+++ b/test/runtests.jl
@@ -2,7 +2,29 @@
include("../src/PyX.jl")
using PyX
-include("../examples/3dgraphs/surface.jl")
+include("../examples/drawing/arrow.jl")
+#include("../examples/drawing/metapost.jl") # Python3 only?
+include("../examples/drawing/pathitem.jl")
+include("../examples/drawing/path.jl")
+include("../examples/drawing/strokefill.jl")
+include("../examples/drawing/style.jl")
+
+include("../examples/drawing2d/clipping.jl")
+include("../examples/drawing2d/ellipse.jl")
+include("../examples/drawing2d/insert.jl")
+include("../examples/drawing2d/parallel.jl")
+include("../examples/drawing2d/smoothed.jl")
+
+include("../examples/splitgraphs/minimal.jl")
+include("../examples/splitgraphs/splitatvalue.jl")
+
+include("../examples/bargraphs/changebar.jl")
+include("../examples/bargraphs/compare.jl")
+include("../examples/bargraphs/errors.jl")
+include("../examples/bargraphs/fromvalue.jl")
+include("../examples/bargraphs/minimal.jl")
+include("../examples/bargraphs/month.jl")
+include("../examples/bargraphs/stacked.jl")
include("../examples/graphs/axis.jl")
include("../examples/graphs/change.jl")
@@ -11,3 +33,13 @@ include("../examples/graphs/lissajous.jl")
include("../examples/graphs/join.jl")
include("../examples/graphs/minimal.jl")
include("../examples/graphs/points.jl")
+
+include("../examples/graphstyles/histogram.jl")
+include("../examples/graphstyles/usesymbol.jl")
+include("../examples/graphstyles/errorbar.jl")
+include("../examples/graphstyles/density.jl")
+
+include("../examples/3dgraphs/bar.jl")
+include("../examples/3dgraphs/color.jl")
+include("../examples/3dgraphs/grid.jl")
+include("../examples/3dgraphs/surface.jl")