build_graph_gnuplot.xml 7.4 KB

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