build_graph_gnuplot.xml 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project basedir="../../." name="graph_gnuplot" default="graph_to_image">
  3. <description>to use from to dita conversion from xsl/ant to generate png graphs</description>
  4. <!-- modules WPS_Functions - to be copied to any module needed -->
  5. <property name="WPS_Functions" location="${basedir}/WPS_Functions"/>
  6. <property name="build_WPS_Functions.xml" location="${WPS_Functions}/build_WPS_Functions.xml"/> <!-- call it to get properties -->
  7. <property name="build_WPS_Functions.xml.properties" location="${build_WPS_Functions.xml}.properties"/>
  8. <!-- eof modules WPS_Functions -->
  9. <!-- local shared module individual properties should contain ${project.name} basedir ant its .temp -->
  10. <property name="graph_gnuplot" location="${basedir}/WPS_Functions/graph_gnuplot/build_graph_gnuplot.xml"/>
  11. <property name="build_graph_gnuplot.childproperties" location="${WPS_Functions.childproperties}/build_graph_gnuplot.properties"/>
  12. <property name="graph_gnuplot_basedir" location="${basedir}/WPS_Functions/graph_gnuplot" />
  13. <property name="graph_gnuplot_basedir.temp" location="${graph_gnuplot_basedir}/temp" />
  14. <!-- eof shared local module individual properties -->
  15. <!-- local individual module properties -->
  16. <!--<property name="genpng2.sh" location="${mapserver_gml_to_png_basedir}/map/genpng2.sh"/>-->
  17. <property name="gnuplot" value="/opt/local/bin/gnuplot"/>
  18. <property name="graph_gnuplot_helper.xsl" location="${basedir}/WPS_Functions/graph_gnuplot/build_graph_gnuplot_helper.xsl"/>
  19. <!--<property name="PATH_ADD" value="/opt/local/bin:/usr/bin:/bin"/>-->
  20. <target name="write_child_props_to_config_dir" depends="read_build_properties">
  21. <echoproperties destfile="${build_graph_gnuplot.childproperties}"/>
  22. </target>
  23. <target name="graph_gnuplot:create_tempdir">
  24. <!--<mkdir dir="${mapserver_gml_to_png_basedir.temp}"/>-->
  25. <mkdir dir="${graph_gnuplot_basedir.temp}/graph_to_image/${uuid}"/>
  26. </target>
  27. <target name="clean" description="Clean all output and temp files">
  28. <delete dir="${graph_gnuplot_basedir.temp}" failonerror="false"/>
  29. </target>
  30. <target name="read_build_properties" depends="graph_gnuplot:create_tempdir">
  31. <ant antfile="${build_WPS_Functions.xml}" target="save_build_properties"/>
  32. <loadproperties srcfile="${build_WPS_Functions.xml.properties}"/>
  33. </target>
  34. <target name="graph_to_image" depends="graph_gnuplot:create_tempdir" description="To generate image">
  35. <property name="srcfile" value="${srcfile}"/>
  36. <property name="dstfile" value="${dstfile}"/>
  37. <property name="fileindex" value="${fileindex}"/> <!-- to uniq name -->
  38. <property name="barchart.gnuplot.dita" value="${srcfile}"/>
  39. <property name="population.dat.dita" value="${srcfile}.dat"/>
  40. <property name="barchart.png.dita" value="${dstfile}"/>
  41. <property name="ditadir" value="${ditadir}"/>
  42. <property name="uuid" value="${uuid}"/>
  43. <property name="images.xml" value="${graph_gnuplot_basedir.temp}/graph_to_image/${uuid}/${fileindex}_images.xml"/>
  44. <property name="barchart.gnuplot" value="${graph_gnuplot_basedir.temp}/graph_to_image/${uuid}/barchart.${fileindex}.gnuplot"/>
  45. <property name="population.dat" value="${graph_gnuplot_basedir.temp}/graph_to_image/${uuid}/population.${fileindex}.dat"/>
  46. <property name="barchart.png" value="${graph_gnuplot_basedir.temp}/graph_to_image/${uuid}/barchart.${fileindex}.png"/>
  47. <!--<property name="build_graph_to_image_make.xml" value="${build_graph_to_image_make.xml}.xml"/>-->
  48. <!-- example from web http://timmurphy.org/2014/08/11/creating-bar-charts-with-gnuplot/
  49. plot <data_file> using <label_column>:xtic(<value_column>) with boxes
  50. barchart.gnuplot:
  51. set terminal pngcairo font "arial,10" size 500,500
  52. set output 'barchart.png'
  53. set boxwidth 0.75
  54. set style fill solid
  55. set title "Population of Australian cities (millions), as of June 2012"
  56. plot "population.dat" using 2:xtic(1) with boxes
  57. population.dat
  58. Adelaide 1.277174
  59. Brisbane 2.189878
  60. Canberra 0.374658
  61. Darwin 0.131678
  62. Hobart 0.216959
  63. Melbourne 4.246345
  64. Sydney 4.667283
  65. -->
  66. <!-- contains info about images
  67. <image x="1" y="1">
  68. <xmin>6524926.16944566666666666690</xmin>
  69. <ymin>6012771.75580466666666666690</ymin>
  70. <xmax>6525264.83611233333333333310</xmax>
  71. <ymax>6013110.42247133333333333310</ymax>
  72. <file>/Users/a.binder/Documents/xmlschema_procesy5/src-xmlschema/public_html/WPS_Functions/mapserver_gml_to_png/map/image-1-1.png</file>
  73. </image> -->
  74. <echo>
  75. gnuplot ${barchart.gnuplot.dita}
  76. </echo>
  77. <!--<xslt basedir="${graph_gnuplot_basedir.temp}" style="${graph_gnuplot_helper.xsl}" in="${srcfile}" out="${build_graph_to_image_make.xml}" >
  78. <factory name="net.sf.saxon.TransformerFactoryImpl">
  79. <attribute name="http://saxon.sf.net/feature/xinclude-aware" value="true"/>
  80. </factory>
  81. <classpath location="/opt/local/share/java/saxon9he.jar"/>
  82. <param name="temp" expression="${graph_gnuplot_basedir.temp}"/>
  83. <!-\- <param name="srcfile" expression="${srcfile}"/> <!-\\- zrodlo do zrobienia grapha - dane do przetworzenia -\\->
  84. <param name="dstfile" expression="${dstfile}"/> <!-\\- nazwa docelowa -\\->-\->
  85. <param name="fileindex" expression="${fileindex}"/>
  86. <param name="ditadir" expression="${ditadir}"/>
  87. <param name="uuid" expression="${uuid}"/>
  88. <param name="images.xml" expression="${images.xml}"/>
  89. <param name="barchart.gnuplot" expression="${barchart.gnuplot}"/>
  90. <param name="population.dat" expression="${population.dat}"/>
  91. <param name="barchart.png" expression="${barchart.png}"/>
  92. </xslt>-->
  93. <!--<exec executable="${gnuplot}" dir="${graph_gnuplot_basedir.temp}/graph_to_image/${uuid}">-->
  94. <exec executable="${gnuplot}" dir="${ditadir}/graph_to_image">
  95. <arg line="${barchart.gnuplot.dita}"/>
  96. <!--<env key="PATH" path="$PATH:${PATH_ADD}"/>-->
  97. </exec>
  98. <condition property="barchart.png.empty">
  99. <length file="${ditadir}/graph_to_image/${fileindex}.png" when="equal" length="0"/>
  100. </condition>
  101. <!--<move file="${images.xml}" tofile="${barchart.png.dita}"/>
  102. <mkdir dir="${ditadir}/${fileindex}"/>-->
  103. <!--<move todir="${ditadir}/graph_to_image/${fileindex}" >
  104. <fileset dir="${graph_gnuplot_basedir}/graph_to_image">
  105. <include name="${fileindex}_image-*"/>
  106. </fileset>
  107. </move>-->
  108. <antcall target="graph_to_image.confirm"/>
  109. </target>
  110. <target name="graph_to_image.confirm" unless="${barchart.png.empty}" description="to confirm that we created .png file">
  111. <echoxml file="${dstfile}">
  112. <graph fileindex="${fileindex}"/>
  113. </echoxml>
  114. </target>
  115. </project>