2015年8月14日金曜日

[Python][gnuplot]Temporary file を使う

データファイル, plt ファイルを temporary file にする。
tempfile.mkstemp() を使う場合はユーザー責任でファイルを削除する必要がある。
# -*- coding:utf-8 -*-
import tempfile
import os

# データ作成
(fd, dataFilename) = tempfile.mkstemp()
print "Data tempfile name: %s" % (dataFilename)
f = os.fdopen(fd, 'w')

str = """
東京\t25.10
網走\t17.80
那覇\t28.00
"""

f.write(str)
f.close()

# plot データ作成
(fd, pltFilename) = tempfile.mkstemp()
print "Plot tempfile name: %s" % (pltFilename)
pngfile = "data06.png"
f = os.fdopen(fd, 'w')

str = """
set terminal png font "/usr/share/fonts/ipa-gothic/ipag.ttf,12"
set output '%s'
set title '各地の気温'
set xlabel '場所'
set ylabel '気温'
set xrange [-1:3]
set yrange [0:30]
set boxwidth 0.5 relative
set style fill solid 0.2
set grid
unset key
plot '%s' using 2:xticlabels(1) with boxes
""" % (pngfile, dataFilename)

f.write(str)
f.close()

# gnuplot コマンド実行
os.system("gnuplot %s" % pltFilename)

# ファイル削除
os.remove(dataFilename)
os.remove(pltFilename)

0 件のコメント:

コメントを投稿