Month: July 2016

Rubyのgnuplotで時系列データをプロット

RubyのGnuplot gemから、時系列データをプロットするときの例。基本的にgnuplotのコマンドラインでやっているように、 set timefmt ‘%Y-%m-%dT%H:%M:%SZ’ set xdata time set format x “%H:%M” を、plotオブジェクトに対してコールしてあげればよい。Ruby + Gnuplotは、ネット上に全然サンプルが載っていないので、たまに大変なのですが、文字列処理やM2XのWeb APIと組み合わせて、簡単にプロットしたいときにはとても便利なのです。 インストールや基本的な使い方は過去の記事「Rubyからgnuplotを使ってグラフを描画・保存する例」を参照してください。 ソースコード gistにも上げてあります。 Plot time-series data using Ruby Gnuplot – gist 実行結果のサンプル

numpy.fftのテンプレート

matplotlibのテンプレートにつづいて、numpyでFFTするときのテンプレートです。1.5 MHzのsin関数を5.8MHz 4ビット分解能のADCで5000点サンプルしたときの結果です。np.fft.fftfreq()関数で周波数軸も求められるので、Hzで表示しています。 GistにはJupyter Notebookをそのままアップロードしておいたので、プロット結果、sin.textの中身とあわせて見ることができます。  

matplotlibのテンプレート(Rubyユーザ向け?)

仕事の都合でPython (numpyとmatplotlib)を使わないといけないのですが、numpyの関数スタイルとmatplotlibのオブジェクト指向がなかなかなじめなくて効率が悪いなーと思っています(毎回ウェブで書き方を調べないといけない)。matplotlib.plotの関数とaxesの関数で名前が違う(set_xlim()とxlim()とか)のがすごくややこしい。 とりあえず、軸ラベルの設定やスケール(lin/log)の変更など、やりたいことがすぐできるように自分用のメモ。以下のスクリプトを実行するか、Jupyter notebookにコピーペーストして実行すると、下のような図ができます。 RubyやROOTのオブジェクト指向に慣れている人は、以下の方法でfigとpanel (オフィシャルにはaxesと呼ばれている)を最初に作って、panelに対してplot()やset_xlim()をコールするほうが理解がスムーズだと思います。 FigureオブジェクトとAxes (プロット用のpanel)の生成 ソースコード全体: 1枚のプロットに複数のパネルをつくる例 gistからもダウンロードできます。  

2016年上半期のふりかえり

いつも楽しく読ませてもらっているブログ「ピヨピヨ日記 シンガポール編」に半期の振り返りがアップロードされていたので、これはいいなと思ったのでぼくも取り入れてみることにしました。 ということで、2016年1月〜6月のふりかえりです! 1月 金沢大学に出張して、11月に設置した雷検出器の微調整。 ASTRO-H衛星の観測データ処理プログラムの作成支援。 白色矮星連星GK Perの「すざく」衛星による観測結果の論文化。 https://arxiv.org/abs/1603.07892 2月 種子島でASTRO-H衛星の打ち上げ前の全系試験。 雷雲ガンマ線実験(Thundercloud Project)のデータ公開ページをRuby on Rails、Bootstrap、plotly.jsを使って作成して公開。 雷雲ガンマ線実験の2015年度の観測運用が終了。金沢にでかけて装置を撤収。 シンガポールへの引越しにむけて練馬のアパートの引越し準備(家具を研究室の先輩・後輩にもらってもらった)。 ASTRO-H衛星打ち上げ、JAXAの内之浦宇宙空間観測所で初期運用に参加。EOBがちゃんと伸展して、CAMSも完璧に動作した(プレスリリース)。 3月 練馬のアパートの引越し。 シンガポールへの引越しの準備(日通の海外単身パックの申し込み、荷造り)。 なんだかんだで、荷造りは10日くらいかかった。 住民票を抜いたり、年金継続の手続きをしたり、必要な保険に加入したり。 3月17日夕方、デルタ航空便で成田空港から出発、深夜にシンガポール到着。 City Hallのホテルに住みながら、家を探す。 ちょうどシンガポールに出張に来ていた大学院時代の後輩とランチ。日本よりも海外にいるほうが会いやすい人というのはいるかもしれない。 3月27日に入居(OGというデパートで電子レンジ、ベッドシーツ・枕カバー、炊飯器、湯沸かし器などさまざまな物を購入。事前情報で評判が良かった(?)ベスト電器は、OGよりもずいぶん割高な上に、配送の手続きもややこしかったのが印象的。IKEAでダイニングテーブルも買った。忙しい1日だった、、、)。…

Aliexpressで600円のGPSモジュールを使ってみる

先日の「Raspberry Piで128×64のOLEDに日本語を表示(美咲フォント)」に続き、今年の冬の雷雲ガンマ線観測で使用するGPSモジュールの動作試験をしてみました。このモジュールは、Aliexpress (Alibaba)のお店で$5.58(購入時のレートで約600円)で売られている「NEO-6M GPS」というもの。レシーバはubloxのNEO-6M-0-001(データシートPDF)を搭載。まだ試していませんが、RTC用の電池も載っているように見えます。が無料配送のオプションを選択すると、「China Post Ordinary Small Packet Plus」という配送サービスで中国からシンガポールまで約1週間で配送されてきます。 【参考】雷雲プロジェクト – Thundercloud Project 本番の環境では、製作中のFPGA/ADCボード上のFPGAにGPSの1PPS信号とシリアル出力(NMEA出力)を接続して、FPGA/ADCで検出したガンマ線1個1個に精密な時刻付けをするために使用します。が、まだFPGA/ADCボードが手元にないので、今回はUSB-シリアル変換モジュールを使ってMacから簡単な動作試験。 秋月のFT232RLを使ったUSB-Serial変換モジュール(AE-UM232R)のRx/Txに、このモジュールのTx/Rxを接続して、3.3Vを供給します。接続のときは、 GPSモジュールのTx → FT232RLのRx FT232RLのTx → GPSモジュールのRx となることに注意(当たり前といえば当たり前ですが)。 screenコマンドで9600bpsでFT232RLに接続して、窓際において5分くらい待つと、 のように、メッセージが表示されるようになりました。 NMEA形式のメッセージを解釈してくれるウェブサービス (http://freenmea.net/decoder )で変換してみたところ、以下のようにちゃんと現在の位置と時刻が表示されました。 2016-07-03T07:07:45Z 1°17’56.59”N, 103°50’13.97”E…

洋食専門のホーカーセンターSalute Coffeeshop

シンガポール日記 Day 94 (その他のシンガポール記事一覧→シンガポール日記) セントーサ島に行った帰りに、ハーバーフロントからバスで移動して、洋食のお店ばかりが集まった面白いホーカーセンター(コーヒーショップ)「Salute Coffeeshop」(リンクはドイツ料理屋Stew KücheのFacebook)に行ってきました。Alexandra RoadのIKEAの近く、Jalan Bukit Merahから50mほど入った自動車修理工場の並ぶ通りの一画にあって、5〜6軒のお店が入っています(1軒は工事中(?)だった)。ドイツ料理、イタリアン、バーガー、シーフード。一般的なホーカーセンターやコーヒーショップのお店と比べると値段は倍以上しますが、出てくる料理は本格的に見えます(いくつかのお店は調理場も外から見えるようになっていて、白い調理着を着たイタリアンのシェフが料理をしている様子はホーカーの様子とはまた違う雰囲気)。日本人の家族連れも多くみかけました。 写真は、Stew Kücheの豚肉料理。大きめのブロック肉が、外側がカリカリ、内側は柔らかく仕上げられていて、うまかったです。2人以上でシェアするのが良さそうなくらいの量。15ドルくらいだったかな? 外から見た様子はこんなかんじ。 住所 119 Bukit Merah Lane 1 #01-40 Salute Coffeeshop Singapore 151119 Stew Kücheというお店が一番有名(?)なようでネット上の口コミにもよく登場します。Facebookのレビューを見ると、昔よりも値上げされたわりに料理の質が落ちていて、2度といかないと憤っている人たちもいるようです。なるほど。

Underwater World Singaporeの閉館キャンペーン

シンガポール日記 Day 94 (その他のシンガポール記事一覧→シンガポール日記) セントーサ島で25年営業してきた有名な水族館、Underwater World Singaporeが6月27日で営業終了するということで、最後のチャンスに見学に行ってきました。Straits Timesの記事「Underwater World Singapore to close on June 26 with lease ending; public to enjoy lower ticket prices from June 7」にも出ているように、最近ではセントーサの他の施設、とくにResort World…