cabal install gtkで文句を言われる場合の対処

CV/Image.chs.h:1: (column 1) [ERROR]  >>> Lexical error !
The character '#' does not fit here.

とか言われた時にどうするかって訳

https://github.com/aleator/CV/wiki/BuildProblems

に書いてあった。

結論

LANG=C cabal install gtk

する。

LANG=Cって何やって思ってぐぐったら

http://mstssk.blogspot.jp/2009/04/whats-langc.html

が出た。アプリケーションにとってデフォルトのロケールで表示するオプションらしい?

numpy, scipy, pylabで、データ形式を指定する

引数における、dtypeをstringで渡す際、どの名前を使えば良いかって訳

引用元

[http://helpful.knobs-dials.com/index.php/Python_usage_notes-Numpy,scipy,matplotlib,_pylab]

要するに

データの種類

  • float
  • int
  • unsigned int
  • bool
  • complex

の頭1文字取ってきて、その後に何バイト使っているかを書く。

例えば、8バイト(64bit)のfloat(=double)なら f8 があなたの求めているもの

エンディアンについて

さすがにこの分野に使ってる以上どうせLEだろwwとか思ってるとたまに詰まる

何も付けなければシステムネイティブな感じで適当にやってくれる

指定したいときは先ほどの指定子に対して

  • <を最初につけるとLE
  • >を最初につけるとBE

例えば、BEで2バイトのunsingned int(=u short)なら >u2

文字をインポートするとき

文字なら大抵numpy.arrayじゃなくてリストでいいんじゃとか個人的に思うけれど

  • S#でbytestring
  • U#でUnicode(UCS周りの地獄を見そう
  • V#はvoid型

#はバイト数と言えないのがUCSの怖いとろこやね。。。

大体こんな感じっぽい?

matplotlibでインタラクティブモードを使う

一応これで、計測機器からの入力データを継続的に(リアルタイムで)監視できるようになるんかな?

サンプル

解説

pylab.ion()

によって、インタラクティブモードをオンにする

データを描画する時は、plot関数などだけではなく

pylab.draw()

が必要である。

また、これだけではlineオブジェクトが増えていくだけなので、適宜消去する必要がある

#現在のfigure, axisを取得
fig = pylab.gcf()
#axis = pylab.gca()

figure.clear()
#axis.clear()

ついでにこれは、pylab.clf()で代用できる。