regexp ªº¸ê®ÆÃ¸¹ÏÀ³¥Î¹ê¨Ò


³o½gÁ¿¸qªº¥ý­×½Òµ{¬O: gnuplot ø¹Ï³nÅ骺¤@ÂIÂI, ¤Î ¦r¦ê¼Ëª© regexp ªº«e¥|½g¡C

µe¦a¹Ï

§Ú­Ì±q¬ü°ê Census Bureau ªº TIGER/Line ºô¯¸ ¤U¸ü¥[¦{»P¤ºµØ¹F¦{½Ñ°pªºÃä¬É®y¼ÐÀÉ, µy·L­×§ï®æ¦¡«á, ¥Î gnuplot µe¥X¦a¹Ï¡C ¨S¿ìªk, §Ú¤]·Q¥H»OÆW¬°¨Ò, ¥i¬O¦bºô¸ô¤W§ä¤£¨ìÃþ¦üªº, Ãö©ó»OÆWªº¸ê°T¡C ¤@¼Ë, ½Ð¥ý¸õ¥X gnuplot, ¦A­«·s¶i¨Ó¤@¦¸, ¥H½T©w©Ò¦³³]©wÁÙ­ì¡C

±q¤W­zºô­¶¥Xµo, ´`µÛ "Cartographic Boundary Files" ==> "Download Boundary Files" ==> "County and County Equivalent Areas", ³Ì«á§ä¨ì ¥[¦{½Ñ°pªºÃä¬É®y¼ÐÀÉ¡C ª`·N§Ú­Ì­nªº¬O²³æªº ascii ®æ¦¡, ¤£¬O e00 ®æ¦¡¡C

¸ÑÀ£ÁY¤§«á, ¥Î less ¬Ý¤@¤U¡C «ö´X¦¸ªÅ¶¡´Î, ¥i¥H©¹¤U¬Ý; «ö b Áä¥i¥H­Ë°h; ¤W¤U½bÀY¥i¥H¶i¶ZÂ÷²¾°Ê; G ¸õ¨ìÀɮ׳̫᭱; g ¸õ¦^Àɮ׳̫e­±; ^g ¥i¥H¬d¸ß²{¦b¥¿¦bÀ˵øÀɮתº²Ä´X¦C¡C ²{¦b½Ð«ö /END µM«á«ö ENTER Áä¡C ³o¸Ìªº / ªí¥Ü·j´M; ·j´M¨ìªº¦r¦ê·|¤Ï¥Õ¡C ¦A«ö n ·j´M¤U¤@­Ó END, ¤S«ö ^g ¦A¬Ý¤@¤U¥Ø«e¦ì¸m¡C ½ü¬y¦h«ö´X¦¸ n »P ^g¡C ³Ì«á«ö G ¸õ¨ìÀɮ׳̫᭱, «ö ? ¤Î ENTER ­Ë°h·j´M­è­èªº¦r¦ê (´N¬O END) ¬Ý¤@¤U¥[¦{Á`¦@¦³¦h¤Ö­Ó°p?

¦A«ö g ¸õ¦^³Ì«e­±, ³o¦¸·j´M " [0-9][0-9]* " ª`·N«e«á­n¦³ªÅ®æ; ¦ý¤£­n§âÂù¤Þ¸¹¤]ºV¶i¥h¡C ¦A¦h«ö´X¦¸ n ·j´M¤U¤@­Ó¡C ¬O§_¬Ý¨ì¨C­Ó°p¶}ÀY¨º¦C¤W­±ªº ¡u°p¥N¸¹¡v ³£¤Ï¥Õ¤F? Q: ¬°¤°»ò [0-9] ­n¥´¨â¦¸? ¦pªG¥u¥´¤@¦¸·|«ç¼Ë?

¦^¨ì§Ú­Ìªº¸ê®ÆÀÉ¡C ¦pªG­n§â¥¦§ï¦¨ gnuplot »{±oªº¸ê®Æ®æ¦¡, ¥²¶·§R°£±¼¨âÃþªº¦C:

  1. ¨C­Ó°pªº³Ì«e­±, ¦³¤@­Ó ¡u°pªº¾ã¼Æ¥N¸¹¡v, ¦Ó¥B¨ä«áªº®y¼Ð¤£ª¾¹D¬O¤°»òªFªF, ¨Ã¤£¦bÃä¬É¤W, À³¸Ó¾ã¦C§R°£¡C
  2. ¨C­Ó°pªº³Ì«á­±, ¦³¤@­Ó "END", ¤]À³¸Ó§R°£¡C

³Ì«á«ö q ¸õÂ÷ less¡C

§Ú­Ì¥ý³B²z°p§À°ÝÃD: ³v¦CÀˬd, ¤Z¬O¹J¨ì "END", ´N§â¥¦¥h±¼: perl -pe 's/END//' < co06_d00.dat | less «ç»ò¼Ë, ²{¦b«ö /END ·j´M¤£¨ì END ¤F§a? ­Ë¬O¥i¥H«ö /^$ ·j´MªÅ¥Õ¦C¡C ¬Ý¤£¥X¥ô¦óªF¦è¤Ï¥Õ¶Ü? ¨º¬O¦]¬° ^ ¥Nªí¤@¦Cªº¶}ÀY; $ ¥Nªí¤@¦Cªºµ²§À, ³o¨â­Ó regexp ªº¯S®í²Å¸¹³£ÄÝ©ó anchor Ãþ¦r¤¸¡C ´N¹³Áã¤@¼Ë, anchor Ãþ¦r¤¸ªº¥\¥Î¥u¦b±N±ý·j´Mªº¦r¦ê°v¦b¦C­º©Î¦C§À; ¥»¨­¨Ã¤£¯uªº¹ïÀ³¨ì¥ô¦ó¤@­Ó¦r¤¸¡C ³o¸Ì§Ú­Ì·j´M "¦C­º¤§«á¨S¦³¥ô¦ó¦r¤¸, °¨¤W¸òµÛ¦C§À" ªº¦r¦ê, ´N¬O¦b·j´MªÅ¥Õ¦C¡C ÁöµM¬Ý¤£¨ì¤Ï¥Õ, ÁÙ¬O¥i¥H½ü¬y«ö´X¦¸ n »P ^g, ½T»{¤@¤U½T¹ê¬O¦b§äªÅ¥Õ¦C¡C

JediTux ¶¶«K¤@´£, ³o¸Ìªº | °á§@ pipe ¥¦´N¹³¤ôºÞ¤@¼Ë, §â«e¤@­Ó«ü¥Oªº¿é¥Xµ²ªG¾Éµ¹¤U¤@­Ó«ü¥O±µÄò³B²z¡C ³o­Ó¬Ý¦ü¤£°_²´ªº¤pªF¦è, ¨ä¹ê´N¹³¬O¤À¤lªº¤Æ¾ÇÁä, ¿n¤ìªº¾¦, ­^¤åªºÃö«Y¥N¦Wµü, ¼Æ¾Çªº¤p¬A©·, ¼v­µ³]³Æªº AV ºÝ¤l (¬õ¥Õ¶À¤T±ø½u) ¤@¼Ë, ¬Oµo´§ ²Õ¦X¦¡¾Ç²ß combinatorial explosion Ãzµo¤Oªº­«­nÃöÁä¡C ³o¬O·L³n¤£·|§i¶D§Aªº¨Æ; ³o¬Oµ´¦aªZ¤hªº¤Jªù²Ä¤@¶¥¡C

±µ¤U¨Ó³B²z°p­º°ÝÃD¡C §Ú­Ì±N¥ý«eªºµ²ªG¹LÂo¤@¤U, ¥u¯d¤U "§t¦³¨â¦ê¦r¦êªº¦C", ¤]´N¬O­n§â°p­º³oºØ "§t¦³¤T¦ê¦r¦êªº¦C" µ¹§R±¼: perl -pe 's/END//' < co06_d00.dat | perl -ne 'print if /^\s+\S+\s+\S+$/' | less ¡C ¤£¹L³o¼Ë°µ¦³ÂI¤p°ÝÃD: §Ú­Ì§âªÅ¥Õ¦C¤]§R±¼¤F¡C ¨SÃö«Y, ¥ý¦sÀÉ: perl -pe 's/END//' < co06_d00.dat | perl -ne 'print if /^\s+\S+\s+\S+$/' > california.txt ¨Ã¥B±q gnuplot ¸Ì­±¤U plot "california.txt" µeµe¬Ý¡C ¦pªG§A´¿¤U¹L set style data lines ·|µo²{¦h¤F¤@¨Ç¨S¦³·N¸qªº½u¡C ¦]¬°°p»P°p¤§¶¡ªº¸ê®Æ¨S¦³¤À¶}, ©Ò¦³¸ê®Æ³Q¦ê¦¨¤@±ø½u¤F¡C

§Ú­Ì§ï¤@¤U¹LÂo±ø¥ó, §ï¦¨¯d¤U "ªÅ¦C, ©Î§t¦³¨â¦ê¦r¦êªº¦C": perl -pe 's/END//' < co06_d00.dat | perl -ne 'print if /^(|\s+\S+\s+\S+)$/' | less ¦sÀɦA­«µe¤@¦¸¬Ý¬Ý§a¡C ³o¸Ìªº (...|...) ªí¥Ü "©Î"¡C ¨Ò¦p³o­Ó regexp: log(|s|ged|ging) ·|·j´M log, logs, logged, ©Î logging¡C

¥H¦P¼Ëªº¤è¦¡, ¤U¸ü¨Ã³B²z Nevada ¦{ªº¦a¹Ï, ²£¥Í nevada.txt¡C µM«á¶i¤J gnuplot ¨Ã¤U«ü¥O : plot "california.txt", "nevada.txt" µ²ªGµo²{µe¥X¨Ó¦³ÂIÁà, ¤ñ¨Ò¤£¤Ó¹ï¡C ¦b½n«× 38 «×ªþªñ, ¸g«×¨C¤@«×ªº¶ZÂ÷, ¤j¬ù¬O½n«×¨C¤@«×¶ZÂ÷ªº 4/5, ©ÎªÌ§óºë½T¦a»¡, ³o­Ó¤ñ¨Ò¬O cos(38«×)¡C ©Ò¥H³]©w·sªº¤ñ¨Ò set size ratio 1/cos(38/180.0*pi) ­«µe¤@¹M¡C ­Ë¤£¬O§Ú°O±o«Ü²M·¡¬O½Ö¤ñ½Ö, ¤Ï¥¿¤£¬O cos(...) ´N¬O 1/cos(...) ¸Õ¸Õ¬Ý´Nª¾¹D¤F°Õ¡C ¦pªG§A·Qª¾¹D¤ñ¨Ò¨s³º³]¦¨¦h¤Ö, ¥i¥H¤U print 1/cos(38/180.0*pi) §â³o­Ó¤ñ­È¦L¥X¨Ó¡C ª`·N: ¦b gnuplot ªº¼Æ¾Ç¹Bºâ·í¤¤, ¨â­Ó¾ã¼Æ¬Û°£, ·|µL±ø¥ó±Ë¥h, ©Ò¥H³o¸Ìªº 180 ¼g¦¨ 180.0¡C

¬ü°ê¥[¦{»P¤ºµØ¹F¦{½Ñ°pÃä¬É¹Ï

¤Ó¶§¨t¦æ¬P½Ã¬P½è¶q-¥b®|¤ñ¸û¹Ï

The Nine Planets ¬O¤@­Ó«Ü´Îªº±Ð¨|ºô¯¸, ¤¶²Ð¤E¤j (®@, ¤£, ³Ñ¤U¤K¤j) ¦æ¬P©M¤Ó¶§¨t¤ºªº¨ä¥Lª«Åé¡C ±q¨º¸Ì¨ú±o ¦æ¬P½Ã¬P°ò¥»¸ê®Æªí, ±N¥¦¥t¦s·sÀÉ, ¥s°µ solar-system.txt ¦n¤F¡C ¥Î vim ½s¿è¤@¤U, §â¥¦¥hÀY¥h§À, ¥u³Ñ¤U¨C¦C¤@Áû¬Pªº°ò¥»¸ê®Æ, ©M¤@¨ÇªÅ¦C¡C ¦b vim ¸Ì­±¤U :%s/^/x / ¦b¨C¦C³Ì«e­±¥[¤W¤@­Ó "x" ©MªÅ®æ¡C µM«á§â¦æ¬P«e­±ªº x §ï¦¨ 0, ... ¤ì¬P½Ã¬P«e­±ªº x §ï¦¨ 5, ¤g¬P½Ã¬P«e­±ªº x §ï¦¨ 6, ... µ¥µ¥, ¤è«Kµ¥¤@¤U¥Î¤£¦PªºÃC¦âµe¥X¡C vim ªº visual block mode ¦b³o®É«D±`¦n¥Î, «ØÄ³½Ð±Ð¤@¤U¨­®Çªº vim °ª¤â¡C ¦A·j´M Amalthea, ª`·N³oÁû½Ã¬Pªº½è¶q 3.5e18 ¤¤¶¡¦h¤F¤@­ÓªÅ®æ, §â¥¦§R±¼¡C ³Ì«áÅܦ¨ ³o¼Ë¡C

­º¥ý§â§Ú­Ì¦³¿³½ìªºÄæ¦ì§ì¥X¨Ó: ¥¦¬O½Öªº½Ã¬P? ¦W¦r¥s¤°»ò? ¥b®|´X¤½¨½? ½è¶q´X¤½¤ç? ¥H¤Uªº«ü¥O, ½Ð¥´¦b¤@¦C¤W, ¤¤³~¤£­n´«¦C¡C perl -ne 'print "$1 $2 $3 $4\n" if /^(\d) <a href=.*>(\w+)<\/a>\s+(\S+)\s+([\d\.]+(e\d+)?)/' solar-system.txt > x ³o»òªøªº«ü¥O, «Ü®e©ö¥´¿ù¡C «ØÄ³±q³Ì²³æªº regexp ¶}©l¸Õ°_, ¦¨¥\¤§«á¦A³v¨B¥[ªø¤@ÂI¡C ¨Ò¦p¥ý¥´ perl -ne 'print "$1\n" if /^(\d) /' solar-system.txt > x §ì¥X¥¦ªº¥D¬P¥N¸¹¡C

¦^¨ì gnuplot µøµ¡, ¥ý¸Õ¥Î¤@¤U set label ... «ü¥O©M set xrange ... «ü¥O:

        set label "good" at 3,1 center tc lt 1
        set label "ok" at 1,3 center tc lt 2
        plot sin(x)
        plot x*x
        set xrange [0:5]
        set yrange [0:20]
        replot

³o¨Ç«ü¥O¬O¤°»ò·N«ä? ¦pªG¦³¿³½ìª¾¹D¸Ô±¡, ½Ð¦b gnuplot ¸Ì­±¤U help set label ¾\Ū¤â¥U¡C ¦n¤F, ²{¦b§Ú­Ì¦³¤T¶µ¥ô°È: (1) §ä¥X x ªº½d³ò (2) §ä¥X y ªº½d³ò (3) ²£¥Í¤@°ï set label ... «ü¥O¡C

¥ô°È¤@«Ü²³æ: ¦b shell ©³¤U°õ¦æ sort -n +2 < x | less ´N¥i¥H¦b±Æ§Çµ²ªGªº³Ì¤W­±¬Ý¨ì³Ì¤p­È (6), ¦b³Ì¤U­±¬Ý¨ì³Ì¤j­È (71492)¡C ³o¸Ìªº -n ªí¥Ü±N¸ê®Æµø¬°¼Æ¦r (¦Ó«D¦r¦ê) ¨Ó±Æ§Ç; +2 ªí¥Ü±q²Ä¤GÄæ¶}©l±Æ§Ç (³Ì«e­±¨ºÄæºÙ¬°²Ä¹sÄæ)¡C

¥ô°È¤G: ¥Î sort -n +3 < x | less ¥i¥H¶Ü? «Ü¥i±¤, sort ¬Ý¤£À´¬ì¾Ç°O¸¹¡C ¤S¥i¥H­É§U regexp ¤F: perl -ne 'print "$2 $1\n" if / ([\d\.]+)e(\d+)$/' x | sort -n | less µo²{³Ì¤p­È¬O 1.8e15 ³Ì¤j­È¬O 1.9e27¡C

¥ô°È¤T: ²{¦b­n°µ¤@¥ó©_©Çªº¨Æ±¡: §O¤H¬O¥Îµ{¦¡²£¥Í¸ê®Æ; §Ú­Ì«o¬O¥Î¸ê®Æ²£¥Í (µ¹ gnuplot ¬Ýªº) µ{¦¡: perl -pe 's/(\S+)\s+(\S+)\s+(\S+)\s+(\S+)/set label $. "$2" at $3,$4 center tc lt $1 /' x > y ¦A¥Î less ©Î vim ¥´¶} y ¨Ó¬Ý¬Ý, ¤£¿ù§a? °í«ù¥Î·Æ¹«ªº¤H, ¬OµLªk²z¸Ñ©R¥O¦C¦n³Bªº¡C

¦^¨ì gnuplot µøµ¡, °õ¦æ:

        load "y"
        set xrange [6:71492]
        set yrange [1.8e15:1.9e27]
        plot x*x*x*1e12*4*pi/3
    

³o¸Ìªº load "y" §âÀÉ®× y ¸Ì­±ªº gnuplot «ü¥O³v¤@°õ¦æ¤@¦¸; ±µ¤U¨Ó¨â¥y³]©w½d³ò; ³Ì«á¤@¥yµe¥X¤ô²yªº½è¶q-¥b®|¹Ï¡C (1km^3 * 1g/cm^3 = 10^12 kg ³o¬O¨C¥ß¤è¤½¨½ªº¤ôªº½è¶q¡C) ¶â, ³o¹Ï¬Ý¨ÓÁàÁ઺, ¥u¦³¤ì¬P¤@Áû»»»»»â¥ý; ¨ä¥L¬P²y³£À½¦b¥ª¤U¨¤¡C ¹J¨ì³oºØª¬ªp, ¥Î logscale ³Ì¦X¾A¤F:

        set logscale
        replot
    

¤g¬P¦pªG©ñ¦b¤ô¸Ì, ·|¯B°_¨Ó­C¡C

¤Ó¶§¨t¦æ¬P½Ã¬P½è¶q-¥b®|¤ñ¸û¹Ï


¥¼­×§ï§¹¦¨...


¨È¬w¦U°ê¤H¤f±K«×¤ñ¸û¹Ï

¬ü°ê¤¤±¡§½ºô¯¸¦³¤@­ÓÀÉ®×¥i¥H¤U¸ü, ¥s°µ CIA Fact Book ¸Ì­±¦³¥@¬É¦U°ê²¤¶, ¹ï¦a²z¦Ñ®vÀ³¸Ó¦³¤@¨Ç¥Î³B¡C ¸ÑÀ£ÁY¤§«á¦³¤@­Ó factbook/print ¥Ø¿ý¡C §Ú¼g¤F¤@¤ä¤pµ{¦¡ ciafbxf ±q¨º­Ó¥Ø¿ý¤Uªº©Ò¦³Àɮ׸̭±, ±N¤@¨Ç³Ì°ò¥»ªº¸ê®ÆÂ^¨ú¥X¨Ó¦¨¬° all_countries.txt¡C ¥H¤U§Ú­Ì­n±q³o­ÓÀɮ׸̭±§ì¥X¨È¬w¦U°êªº¸ê°T, ¥H¤H¤f·í°µ x ¶b, ¤g¦a­±¿n·í°µ y ¶b, ¥Î gnuplot ±N¦U°ê¦WºÙµe¦b®y¼Ð¥­­±¤W¡C

­º¥ý¥Î grep ¹LÂo, ¥u¨ú¥X¨È¬w°ê®a¸ê°T; ¨ä¦¸¥Î cut ¹LÂo, ¥u¨ú¥X°ê¦W, ¤H¤f, »P¤g¦a­±¿n; ³Ì«á§â³o¨Ç¸ê°T¤Æ¦¨¤@°ï set label ... «ü¥O, ¦s¦¨¤@­Ó gnuplot ©R¥O½Z¡C ª`·N: ³Ì«á¤@¥y¸Ü¤Óªø¤F, ©Ò¥H¥Î­Ë±×½u "\" §i¶D shell §Ú­Ìªº©R¥OÁÙ¨S¦³¥´§¹¡C ¦pªG§â¾ã­Ó©R¥O¥´¦b¦P¤@¦C, ´N¤£¥²¥´­Ë±×½u¡C »yªk½Ð°Ñ¦Ò regular expression Á¿¸q¡C

        grep -i asia < all_countries.txt > tmp1.txt
        cut -d : -f 2,5,8 < tmp1.txt > tmp2.txt
        perl -ne 'print qq(set label "$1" at $2,$3 center\n) \
            if /(.*):(\d+):(\d+)/' < tmp2.txt > asia_countries.gpt

¦pªG¨S¦³ grep »P cut ¥i¥Î, ´N³s«e­±¨â¥y¤]¥i¥H¥Î perl ¨Ó°µ:

        perl -ne 'print if /asia/i' < all_countries.txt > tmp1.txt
        perl -ne 'print "$1:$2:$3\n" if \
            /^.*?:(.*?):.*?:.*?:(.*?):.*?:.*?:(.*?):/' \
            < tmp1.txt > tmp2.txt

¦pªG¬O¦b MS Windows ¤U, ³Ì¥~¼h¤£¯à¨Ï¥Î³æ¤Þ¸¹, ¥²¶·¨Ï¥ÎÂù¤Þ¸¹¡C §â¤T¥y¦X¨Ö¦b¤@°_¼g¦¨:

        perl -ne "print qq(set label '$1' at $2,$3 center\n) if \
        /^.*?:(.*?):.*?:.*?:(.*?):.*?:.*?:(.*?):/" all_countries.txt

(­Y¦b unix ¤U, «h¤Ï¦Ó¥²¶·¦b $ «e­±¥[¤W \ ¥H¨¾ shell ¸ÑÄÀ) §O¾á¤ß, ³o¨Ç»P gnuplot ¥»¨­µLÃö, ¥u¬O­n¶¶«K±j½Õ regexp ªº¥Î³B¡C ¤£·| regexp ¨Ã¤£¼vÅT¾Ç²ß gnuplot; ¦ý¬O·|¤F regexp ¤§«á, §A·|µoı«Ü¦h gnuplot ¬Ý¦ü¬£¤£¤W¥Î³õªº±¡¹Ò, ¨ä¹ê¤]³£¥i¥Hµo´§¡C

Á`¤§, ³Ì«á¶i¤J gnuplot, ¥Î load ©R¥O¸ü¤J­è¤~²£¥Íªº gnuplot ©R¥O½Z asia_countries.gpt, ¨Ã¥B¥H»OÆWªº¤H¤f±K«×»P¤£¤¦ªº¤H¤f±K«×µe¨â±ø½u¤è«K¤ñ¸û¡C ¤U plot µe¹Ïªº®É­Ô, ¥i¥H¦P®É¥Î title ¿ï¶µ§ïÅÜ ¡u¹Ï¨Ò¡v ©ÒÅã¥Üªº¦r¦ê¡C ¤S, ¦]¬° ¡u¹Ï¨Ò¡v ªº¤º©w¦ì¸m¬O¥k¤W¨¤, »P¹Ï¤¤¸ê°T²VÂø, ©Ò¥H§Ú­Ì±N¥¦²¾¨ìªÅªÅªº¥ª¤W¨¤¥h, ¤ñ¸û²M²n¡C

        load "asia_countries.gpt" 
        set logscale 
        set xrange [3e2:3e7]
        set yrange [3e5:3e9]
        set key top left
        plot x*628.21 title "Taiwan", x*45.52 title "Bhutan"

¨È¬w¦U°ê¤H¤f±K«×¹Ï

»OÆW¦a§Î¹Ï

Gnuplot ¥i¥Hµe 3-d ¹Ï, ¦Ó¥B¥i¥H¥Î·Æ¹«±ÛÂà¹Ï®×§ïÅܵø¨¤¡C ¥ýµe¤@­Ó²³æªº°¨¾b­±¸Õ¸Õ¬Ý: splot x*x-y*y ½Ð¥Î·Æ¹«±ÛÂà¹Ï®×¡C ¥Î³o­ÓªF¦è¾ÇÂùÅÜ¼Æ¨ç¼Æ, ·Pı´r§Ö¦h¤F§a?

·íµM, ¥¦¤£¥u¥i¥Hµe 3-d ¨ç¼Æ, ¤]¥i¥Hµe 3-d ¸ê®Æ¡C ¬ü°ê¤ÓªÅÁ`¸p JPL ¹êÅç«Çªº Shuttle Radar Topography Mission ´£¨Ñ¥þ²yªº¦a­±°ª«×¸ê°T¡C §Ú¤U¸ü¥_½n 23 «×ªF¸g 121 «×ªþªñªº¸ê°T, ¨Ã¼g¤F¤@­Ó¤pµ{¦¡ hgt2txt ±N¤§Âà´«¦¨ gnuplot »{±oªº¯Â¤å¦r®æ¦¡, ¦s¦¨ÀÉ®× taiwan.txt:

        ./hgt2txt -s 100 > taiwan.txt
  

µM«á¶i¤J gnuplot µe¹Ï:

        splot "taiwan.txt"              # ¸G¸G­D­Dªº, ¤£¤Ó¹³»OÆW...
        set xrange [0:60]; replot       # ¦³ÂI¼Ë¤l¡C ¦pªGµÛ¦â©O?
        set pm3d; replot                # ÁÙ¬O¤Ó¶Ã¡C ´«­Ó½Õ¦â½L¬Ý¬Ý
        set palette model HSV functions gray, 1, 1
        replot                          # 
        set palette model HSV functions gray>0.01?gray*0.9:0, gray>0.01?1:0, 1
        replot                          # ®ü­±µe¥Õ¦â; ³°¦a¥Ñ¬õ¨ìµµ
        set view map; replot            # ¦pªG§ïµe¥­­±¹Ï©O?
        set palette model XYZ functions gray**0.35, gray**0.5, gray**0.8
        splot "taiwan.txt" lt 3         # ¥t¥~¤@­Ó¥Ñ¶Â¨ìª÷ªº½Õ¦â½L

»OÆW 3d ¦a§Î¹Ï »OÆW 2d ¦a§Î¹Ï

ª`·N¨ì¸ê®ÆÀÉ taiwan.txt ªº®æ¦¡:

gnuplot ¤]¥i¥H±µ¨ü¨C¦C¤T­Ó¼Æ¦rªºÀÉ®×, ¤À§O¥Nªí¤@ÂIªº x,y,z ­È¡C °²³]¸ê®Æ©T©w¨C m ¦C¤§«á¦h¤@­ÓªÅ¦C, ³oºØ¼Ëª©­«½Æ¥X²{ n ¦¸, ¨Ã¥B¦b gnuplot ¸Ì­±³]©w data style lines (©Î linespoints), ¨º»ò´N¥i¥Hµe¥X¤@­Ó m ­¼ n ªº mesh (ºôª¬µ²ºc)¡C x-y ®y¼Ð¤£¥²¹ï»ô¦¨¤è®æª¬,; z ¬Æ¦Ü¤£»Ý­n¬O x-y ªº¨ç¼Æ (¦±­±¥i¥H½ÂàÂл\¦b¦Û¤v¤W­±) ¥u­n¤j­PÁٺ⥭·Æ, gnuplot ¤@¼Ë¥i¥H³B²z, ¹³¬O³o­Ó²³æªº½d¨Ò: pyramid.dat (ø¹Ï¤è¦¡¨£Àɮפºµù¸Ñ) ¦]¬°¦a¹Ï¤@¯ë»¡¨Ó³£¤ñ¸û¤£¥­·Æ, ©Ò¥H¤W­±»OÆW¦a¦a§Î¹Ï³o­Ó¨Ò¤lªº®ÄªG¤£¤Ó¦n¡C §Ú­Ì¬Ý¤@­Ó¸û¥­·Æªº¨Ò¤l: ¥ý¦b shell ¤U°õ¦æ ./torus > torus.dat ²£¥Í¸ê®ÆÀÉ, µM«á¦b gnuplot ¤º¤U:

        set hidden3d; 
        splot "torus.dat" with lines
  

[to-do: ¨ì ³o¸Ì ¤U¸ü blender °µªº "¬PÄ¥°g¯è°O" ¬PÄ¥¼Ò«¬, ¥Î blender ¶×¥X¦¨ dxf ®æ¦¡, ¦A¥Î perl Âন gnuplot ¥i¥HŪªº®æ¦¡...]


regexp

  1. regexp
  2. ²¤¶
  3. ¤Ï¥Õ½m²ß
  4. ºô­¶®Ñ³æ
  5. ½Ö±`¤W¾÷

  1. µL©Ò¤£¦b
  2. ²³æ¨Ò¤l
  3. ¸ê®ÆÃ¸¹Ï
  4. ºô¸ôÀ³¥Î
  5. ³W«h¦Cªí