build_graph_gnuplot.xml 7.4 KB

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