Matlab の凡例に日本語を使う

解決法

フォントに日本語をフォントを指定する

 

サンプルコ―ド

figure()
hold on
p1 = plot*1
p2 = plot((1:10),(1:10)*2)
p3 = plot((1:10),(1:10)*3)
legend()
legend([p1 p2 p3],'い','ろ','は','FontName',"MS Gothic")

 

これでキミも豆腐バスターズの一員だ!!

 

環境設定いじりますみたいな記事しか出てきません。

謎。

*1:1:10),(1:10

centos6 samba 3.x をWin10から利用する話

要点

smb2を使え

iptableの設定は上から適応される

 

sambaしてwin10からffmpegを叩くpythonを起動することを目指した。

win10ではsmb2出ないといけなくて、smb1だとつないでくれない。

 

max protocol = smb2 みたいなことをする。

iptableの設定は上から適応されるので上の方にsmbのポートを開ける処理を書いておくべき。

これでだいたい動くよ やったね、

 

 

 

elecomのマウスをmacで使ってChromeで戻ったり進んだりする話

どうもこんにちは

今回は、elecomの無線マウス(M-XGS10DB)をmacで使うときに少しハマったので、その話を書きとどめておこうと思います。

今回ハマったのはマウスの特殊ボタンが使えないという症状でした。
特殊ボタンというのは右クリック、左クリック、ホイールに続く第4,第5のボタンたちのことです。
このボタンたちを使うには、まずエレコムから対応するユーティリティをダウンロードしてインストールします。
ここでは指示に従ってください。何度か再起動します。

インストールが終わったら、ユーティリティを起動してみます。
そうすると、システムのセキュリティにMouseEventChangeを許可しろといった文面が出てきます。
このMouseEventChangeは、ユーティリティの内部にあります。
アプリケーション〉ユーティリティ〉ELECOM_Mouse_Util(右クリック〉パッケージの内容を開く)〉Contents〉Resources〉MacOS〉MouseEventChange といった階層構造になっています。

これをドラックアンドドロップして加えてください。
再起動したあとに、MouseEventChangeと、同じフォルダにあるElecomGestureをダブルクリックします。
このとき、見かけ上は変化がないですが、気にしないでください。
このあと、ELECOM_Mouse_Utilをダブルクリックすると、ようやく起動します。
起動したら最初は規定の設定をクリックしてください。
これで特殊ボタンが使えるようになりました(やったぜ)。

このまま特殊ボタンを変更してChromeブラウジングするときに進んだり戻ったりしたいところですが、実はSafari用の進む戻るしかありません。
そこで、任意キーを特殊ボタンに割り当てます。
command + 矢印キー(左:戻る、右:進む)なので、これを割り当てることでelecomのマウスを使ってchromeブラウジングすることができます。

いかがでしたか?
macでもカスタム次第でchromeで便利にブラウジングすることができます。
みなさんも自分なりの設定を見つけてみてください!

matplotlibのholdについて

python + matplotlibでグラフを重ねる際、hold(True)を使っていると次のような警告が出る

 

Warning (from warnings module):
File "C:\Program Files\Python36\lib\site-packages\matplotlib\rcsetup.py", line 156
mplDeprecation)
MatplotlibDeprecationWarning: axes.hold is deprecated, will be removed in 3.0

 

警告なので別に動く

最新のversionではhold(True)をせずとも、holdが最初から機能している。

むしろ別々のグラフにしたいのであれば、cla()を使い、明示的にグラフを白紙に戻す必要がある。

らしい。

 

matplotlib.org

 

日本語で明記してある記事が出てこなかったので備忘録メモ

TSUBAMEの練習

TSUBAMEにアクセスするためにwindows10から試行錯誤したので備忘録

トップページ | TSUBAME計算サービス

とりあえずここ。

 

 

利用した環境

windows10 home

cygwin

X window

 

cygwinインストーラーで導入(32, 64 どちらでも可能)

インストール時に、Net、X11をインストールするようにチェックすること

550 Fail の警告が出た場合は、ftpではなくhttpからインストールするように設定するとうまく動作した。

0p_000_autorebase.dash みたいなものを走らせている間は時間がかかるので待つ。

ウイルス対策ソフトのせいで遅くなるという話もあるので、場合によっては切ってからインストールするといいらしい。

※インストール後に

c3270 error code 1

のようなコードが出たが、ガン無視でなんとかなった。

 

TSUBAMEにアクセス

sshでアクセスする必要がある。

東工大ポータルから入り、TSUBAMEにアクセス。

sshキーの公開鍵を登録。

秘密鍵パーミッションを700とかにしておくこと

ssh xxDyyyyy@login.t3.gsic.titech.ac.jp -i ./sshkey -YC

でアクセスできることを確認

 

Xterm 起動

cygwinから

startx

 

Xを直接

スタートメニューから

Cygwin X → Xwin server を起動

右下のメニューバーにXserverが出てくる

X application menu からXterms が起動できる。

 

テスト

とりあえずgeditでもひらいてみては。(筆者はここで感動)

 

TSUBAME上の有償プログラム(comsol)を使いたかったが現在年末のために人が多すぎるので入れず・・・。

qrshってなんだよ・・・

 

c++で球面調和関数を使いたかったけれどもライブラリがないからpythonから引っ張ってきた話

実のところあるらしいが、visual studio 2017ではなかったのでpythonのscipy.specialから引っ張ってくることにした。

 

c++pythonを使うには、

インタプリタを呼ぶ、pythonのオブジェクトを渡してムニャムニャする、インタプリタを閉じるの3構成である。

一度インタプリタを呼べば勝手にやってくれる。

複数のインタプリタを使う方法はあるのだろうか・・・。

 

windows 10 では python3 をインストールすると、Python.h が //python/include/ あたりにある。

このpathをインクルードのpathに追加する(プロパティページのVC++ディレクトリにある)。

dllも要求されるのでリンカーの全般タブにある追加のライブラリディレクトリに//python/libs/を追加する。

これでreleaseモードなら使える。

CPUのbit数も合わせる必要があるので注意。

 

忘れないようにメモメモです。

 

使うときは下参照。

int main(){int main(){ Py_Initialize();
PyObject * pModule = PyImport_ImportModule("scipy.special"); if (pModule == NULL) { return 0; }
PyObject * pFunc = PyObject_GetAttrString(pModule, "sph_harm");
PyObject * pArgs = PyTuple_New(4); PyObject * pValue0 = PyLong_FromLong(0); PyObject * pValue1 = PyLong_FromLong(0); PyObject * pValue2 = PyLong_FromLong(0); PyObject * pValue3 = PyLong_FromLong(0);
PyTuple_SetItem(pArgs, 0, pValue0); PyTuple_SetItem(pArgs, 1, pValue1); PyTuple_SetItem(pArgs, 2, pValue2); PyTuple_SetItem(pArgs, 3, pValue3);
Py_DecRef(pValue1); Py_DecRef(pValue2); Py_DecRef(pValue2); Py_DecRef(pValue3);

PyObject * pValue = PyObject_CallObject(pFunc, pArgs); double result = PyComplex_RealAsDouble(pValue); std::cout << "result: " << result << std::endl;
Py_DecRef(pModule); Py_DecRef(pFunc); Py_DecRef(pArgs);

Py_Finalize(); return 0;}

論文の参照の比較

web of science で得られる論文の参照関係をまとめたファイルを利用して引用している論文の一覧を取得する。

pythonで検討

 

web of science の上の方にプルダウンメニューでendnote~とかある場所から保存できる。

他のファイルフォーマットで保存を選ぶと、中でポップアップされる。ここにもプルダウンメニューがあるので

詳細表示、引用文献

をえらび、さらに保存形式を選ぶ。保存したファイルをテキトーにパースして読めば引用が比較できる。DOIとかで比較すればいいんじゃないのだろうか。

save as bibtex format

import re

ref1 = [x.replace("{","").replace("}","").replace(",","") for x in re.findall("DOI.*\n",open("savedrecs.bib",encoding='utf-8').read())]

これで取り出せる。自身のDOIは一番始めに来ている。

これで比較するのじゃー。