玄箱でGD::Graph
最近、WEBでデータをグラフ表示することが多い。
今のところは、PHP&JPGraphを使うことが多いのだが、Perlでのグラフ作成もできるようにしておこうかと思って調べてみると、GD::Graphというモジュールがあるらしい。
じゃあ、こいつを使ってグラフを作成してみよう。
環境:
うーん。。。いまどき、こんな環境使ってる人いるんだろか?(笑)
GD::Graphをインストールしようとしてみる。
#perl -MCPAN 'install GD::Graph'
すると、「GDがアカンで」といわれる。
#perl -MCPAN 'install GD'
「libgdのバージョンがダメ」って言われる。
#apt-get install libgd-gd2-perl
してからやってみても変わらない。
#apt-get install libgd2-noxpm
とやって、その後
#perl -MCPAN 'install GD'
したらOK。
#perl -MCPAN 'install GD::Graph'
やっと入ったよ。
入ったら早速テスト。
前提:
- コードを置くフォルダはCGIが実行可能であること。
- CGIは .cgi .pl で実行可能であること
- /usr/share/fonts/truetype/ttf-ipa にIPAフォントを配置してある
ここで、http://www.gadgety.net/shin/tips/unix/perl-gd.html
のサンプルコードを元に、
#!/usr/bin/perl -w
use strict;
use Jcode;use GD::Graph::bars;
my @labels = qw( under 10s 20s 30s 40s 50s 60s 70s over );
my @dataset = qw( 20 40 60 80 65 15 10 20 5 );
my @data = ( \@labels, \@dataset);my $graph = GD::Graph::bars->new( 400, 300 );
$graph->set( title => jcode("にこにこ村の人口")->utf8,
y_label => jcode("人数")->utf8 );
GD::Text->font_path( "/usr/share/fonts/truetype/ttf-ipa" );
my $font="ipaexg.ttf";
$graph->set_title_font( $font, 14 );
$graph->set_legend_font( $font, 8 );
$graph->set_x_axis_font( $font, 8 );
$graph->set_x_label_font( $font, 10 );
$graph->set_y_axis_font( $font, 8 );
$graph->set_y_label_font( $font, 8 );my $image = $graph->plot( \@data );
open( OUT, "> graph.jpg") or die( "Cannot open file: graph.jpg" );
binmode OUT;
print OUT $image->jpeg();
close OUT;print "Content-type: text/html\n\n";
print "\n";
\n";
print "
print "<img src='./graph.jpg'>\n";
print "\n";
print "\n";
というコードを、
- ファイル名:gd_test.pl
- オーナー:www-data
- パーミッション:755
で保存して、ブラウザから、該当ファイルを叩いてみると、
グラフが表示されるはず。
]CentOS5.3 で VNCServer を使う
ワケあって、CentOSのサーバをあげることに。
本体はサーバルームにあるので、メンテナンスは当然リモート。
なので、
- putty を使った ssh 接続
- VNC経由でのリモートデスクトップ使用
- Xming経由
の3つのアクセス経路を用意する。
CentOS自体は、「Server-GUI」でインストールして、
gnomeを選択すれば、一通り必要なものは入る(はず)。
あとはリモートのPC側の設定。
putty は、特筆すべき事項なし。
VNCを使えるようにする設定は、
http://blog.nyarla.net/2006/10/25/1
を参照。ここに書いてある通りにやれば、多分OK。
puttyでのssh接続ができれば、Xmingがきちんと使える状態に
なっていれば、問題なく使える。
いいたいことはわからなくはないけれど。。。
Microsoftにお願いしたいのは、はっきり言えばWindows 7のSKU見直しだ。あるいは、ULCPC版のWindows 7 Home Premiumを用意することだ。
そして、これはIntelにも言えることだが、ネットブックにかけられているハードウェア仕様の要件はぜひとも撤廃して欲しい。
うーん。。。個人的には違うんじゃないかなあと。
「機能の削り方」が間違えているだけであって、「機能を削る」ことは間違いではないと私は思う。
「PCでできることと同じこと」がネットブックでできるのなら、それはネットブックではなくてPCでしょ?
IntelやMSが言っていることは、ざっくり言えば、
ネットブックってのは、x86アーキテクチャではあるけど、PCとは違うものだよ
ってことだよね?だからこそ、画面の解像度に制限を加えたりとかしてるんだよね?
無論、ネットブックでも「できなきゃいけない」ことはあるよね。
PCのIEとネットブック版のIEで機能の差があってはいけないんですよ。
PCのIEとネットブック版のIEでユーザーインターフェースが違ってはいけないんですよ。
ネットブックでも、Youtubeの動画はきちんと再生できないといけないんですよ。
ネットブックでも、Googleマップはきちんと見れないといけないんですよ。
でもね、
ネットブックでOfficeが動く必要はないんですよ。
ネットブックでTVキャプチャボードが動く必要はないんですよ。
ネットブックでMPEGのエンコーダーが動作する必要はないんですよ。
「ガンバレ!」を言いたくない:タケルンバ卿日記
「ガンバレ!」を言いたくない - (旧姓)タケルンバ卿日記避難所
人に対しても「ガンバレ」って言うのはあんまり好きじゃないのです。できれば言いたくない。それ以外の言葉を言いたい。
私もそうなんですよ。
「がんばれ」って、つい言いたくなる人って、もう、十分にがんばってたりとか、理由があって「がんばれない」人だったりするわけで。そういう人に「がんばれ」っていう意味あるのか?と。
なので、私はこれを使ってます。
「一生懸命やれ。」
Zabbix1.6.1 で遊ぶ
1.インストール
・configure でハマる。
→libmysqlclient15-dev を apt-get
・WEBモニタリングするときはCurlが必要。
→apt-get install php5-curl、apt-get install libcurl3-dev
configure --enable-server --enable-agent --with-mysql --with-libcurl
make と make install
で、めでたく /usr/local/sbin に入りましたとさ。
2.設定
・misc/init.d/debian 下の zabbix-server と zabbix-agent を /etc/init.d/にコピー
・zabbix-agentを書き換える
・DAEMON=/home/zabbix/bin/${NAME} → DAEMON=/usr/local/sbin/${NAME}
・zabbix-serverを書き換える
・DAEMON=/home/zabbix/bin/${NAME} → DAEMON=/usr/local/sbin/${NAME}
・misc/conf 下の zabbix*.conf を /etc/zabbix へコピー
・zabbix_server.conf を書き換える。
・DBHost,DBUser,DBPassword を書き換える
・fping を使うなら、 FpingLocation も設定する。
と、いうわけで、入れてはみたものの。。。。
重い!(笑)
さすがに、PowerPC200Mhzでは荷が重いか。。。