趣味で計算流砂水理

Computational Sediment Hydraulics for Fun

pythonで気付いたこと

なんとか論文もまとまり,かなり脱力状態です. 査読が通れば,アジョイント法の話も書こうと思ってます.

今回の論文ではすべてグラフはmatplotlibで書きました. pythonを使ってる中で,気付いたことをまとめておきます.

会社のプロキシ抜け

うちの会社の環境では,コマンドプロンプトで以下を実行するとOKでした.

condaも問題なく使えるので環境構築が可能です.

csvファイルのreadの速度

数100万のデータになるので結構時間がかかります. 読み込む方法は,pandasの.read_csvが圧倒的に速いです.

参照Python §12 : グラフのためのデータ処理 高速なファイル処理ができるpandas|hitochan007のブログ(Pythonの勉強ブログ)

列の抽出なども速いので,便利でした.

matplotlibのベクター貼り付け

いつの間にかemf出力がなくなっており,ベクター出力は,eps,pdf,svgの三択です. epsは環境依存も有り,今後あまり使うことはないかと思います. TeXだとpdfがいいと思いますが,wordだったのでsvgを使いました.直接は貼れないので,IllustratorInkscapeから貼り付けました.

matplolibが遅い

特に塗りつぶし系が遅いです.ちなみに論文のコンター図は描画に15分かかります.

と苦労していたのですが,今日色々調べていたら,pcolorではなく,contourfで書いたら,100倍くらいので速度で書けました. なので,pcolorは大きなデータでは辞めたほうが良いかもしれません.

jupyterなしでは...

jupyter使いまくりです.無いと無理です. jupyter notebookの次世代として,jupyter labというものが出るらしいです.

Jupyter Notebookの次世代版、JupyterLabのこれが凄いポイントの紹介 - のんびりしているエンジニアの日記

そろそろgithubを立ち上げて,python系のソースコードはjupyterで書いたものをgistに上げて,それをブログにあげようかなと思ってます.

今週からちょこちょこブログも書きます.