damyarou

python, GMT などのプログラム

自己紹介

記事の最後に行く

お仕事はなんですか?

私は、設計コンサルタント会社に勤務する土木技術者です。 私の仕事は、水力発電所のダムやトンネルを設計したり、工事現場でそれらが出来上がるのを監督する仕事です。

昔は日本国内専門でしたが、2011年から海外での仕事がメインになっています。 マレーシア国の仕事を通算で6年やっていました。 今は日本にいます。

日本では小さな仕事を自分で営業してとって自分で処理しています。 なんだかパッとしない日々です。

早く海外にでて大きなプロジェクトの仕事がしたい!

このブログには何を書きますか?

仕事や趣味で作った小さなプログラムをメインにアップしていきます。 これには、自分のプログラミング環境を快適にするためのストックの意味もありますが、「こういうグラフはどうやって書くの?」という時に、自分のみならず、どなたかの参考になることもあるかな、と思っています。また気まぐれで、日々感じたことなども書くかもしれません。

どんな電子機器を使っていますか?

iMac (Retina 4K, 21.5-inch, 2017)自宅でのメイン機2018.12.14〜
MacBook Pro (Retina, 13-inch, Mid 2014)外出用2015.02.01〜
iPad mini 4通勤時・就寝前のWebsite閲覧2016.03.12〜
iPhone 8LINE他メールチェック、たまに電話2018.10.15〜

f:id:damyarou:20190427175745j:plain:w600

Spec. of Mac
Machine iMac MacBook Pro
Type Retina 4K, 21.5-inch, 2017 Retina, 13-inch, Mid 2014
Purchased 2018/12/14 2015/02/01
Processor 3GHz Quad-Core Intel Core i5 2.6GHz Dual-Core Intel Core i5
Memory 8GB 8GB
Display 21.5-inch (4096 x 2304) 13.3-inch (2560 x 1600)
Storage SSD 256GB SSD 128GB
External
storage
Portable HDD 1TB
(IO data HDPHUT1NV)
SD card 128GB
(Transcend JetDrive Lite330)

電子機器には満足していますか?

  • 満足しています。
  • ただし、iMacは標準メモリ8GBのままなのですが、16GBにしておけばよかった。大きなWordファイルを扱うときに重たいので。

Macを使う理由はなんですか?

  • かっこいいから(スタイリッシュだから)
  • シェル・スクリプトが使えるから(コマンドプロンプトで使うバッチファイルより断然いい)
  • 画面がとても綺麗で見やすい(Retinaだから。Win機とはくらべものにならない)

Macで何をやっているのですか?

  • 仕事・趣味で使う計算プログラムやグラフ作成プログラムを作る(Python 3メイン)
  • ホームページ作成・管理やブログ執筆
  • 設計理論の勉強・文書化(いろいろな調べごとを含む)
  • 仕事で使う報告書作成補助

プログラミング環境はどんなのですか?

主に使っている言語は、Python 3であり、各種計算から作図までこれでこなします。 ただし、地図へのプロットおよび3次元プロットは Python ではやりきれないので、GMT (Generic Mapping Tools) を使っています。 (PythonにもBasemapという地図を扱うモジュールがあることは知っているのですが、インストールの仕方がわからず、使えません。またPythonの3次元グラフは GMT に比べると見劣りするので使いません。)

プログラミングは Jupyter Lab (Jupytwr notebook) 上で行っています。 Jupyter 上での Python の実行は、Mac でも Windows(会社のパソコン)でも特に不自由なく行っています。 ただ、GMT を使う場合、Mac ならば Jupyter 上でシェルスクリプトbash)にコマンドを突っ込んで簡単に使えるのですが、Windows の場合はそうもいかず、何かと面倒で困っています。

Jupyter Lab (Jupyter notebook) はとても便利なのですが、「あのプログラムを使いまわそう」というときに、そのプログラムが入っているJupyterを開き直さないと取りに行けません。 そこで、別途プログラムとその使用例がわかる何かがほしいわけで、そのためにも「はてなブログ」を利用しようと思っています。

boostnote というすばらしいメモソフトがあり、ネット接続も不要で重宝するのですが、同じページに解説・プログラム・グラフなどの画像がある方が見やすいため、これらを同じページに保存・閲覧できるブログにアップしておくのが、使い勝手が良いと考えています。

インストールしているソフトはどんなものですか?

手動インストール

Firefox                       # ブラウザ
Google Chrome                 # ブラウザ
dropbox                       # オンラインストレージサービス
Microsoft Office 2016 for Mac # Word, Excel, PowerPoint, OneNote
Ricty Diminished              # フォント (プログラミング用等幅)
IPAex                         # フォント (日本語)
Atom                          # テキストエディタ
CotEditor                     # テキストエディタ
XQuartz                       # macOS向けのX Window System
Google Earth Pro              # バーチャル地球儀システム
boostnote                     # メモアプリ
Google 日本語入力               # 日本語入力システム

Homebrewによるインストール

brew install gcc                    # gfortran含む
brew install python3                # Python3.7
brew install gawk                   # GMT使用時の補助プログラミング
brew install ghostscript            # eps取扱用
brew install imagemagick --with-x11 # 画像処理
brew install gmt                    # 作図:Generic Mapping Tools
brew cask install mactex            # TeX Live 2019

注)brew でMacTeXをインストールした場合、パスが通っていないので.bash_profileに以下を追加。

export PATH=$PATH:/usr/local/texlive/2019/bin/x86_64-darwin/

terminal再起動し、echo $PATHでパスを確認後、以下を実施。

sudo tlmgr update --self --all
sudo tlmgr paper a4

Python3 モジュールの pip によるインストール

pip3 install --upgrade setuptools
pip3 install --upgrade pip
pip3 install numpy            # 数値計算用ライブラリ
pip3 install scipy            # 数値解析用ライブラリ
pip3 install matplotlib       # グラフ作成用ライブラリ
pip3 install pillow           # 画像処理用ライブラリ
pip3 install pandas           # データ加工支援用ライブラリ
pip3 install xlrd             # エクセルデータ読込用ライブラリ
pip3 install sympy            # 記号計算用ライブラリ
pip3 install openpyxl         # エクセルファイル取扱用
pip3 install seaborn          # 作図用
pip3 install scikit-learn     # 機械学習練習用
pip3 install Jupyter notebook # 開発環境
pip3 install Jupyter lab      # 開発環境

記事一覧

29, 設計 RC円形圧力トンネルの配筋設計(2), https://damyarou.hatenablog.com/entry/2019/05/26/150320
28, 設計 RC円形圧力トンネルの配筋設計(1), https://damyarou.hatenablog.com/entry/2019/05/23/154902
27, 設計 圧縮材のせん断と引張に対する安全率, https://damyarou.hatenablog.com/entry/2019/05/21/131848
26, 設計 圧縮材のせん断強度と圧縮強度・引張強度の関係, https://damyarou.hatenablog.com/entry/2019/05/21/131311
25, 設計 取水口における渦防止のための被り水深, https://damyarou.hatenablog.com/entry/2019/05/21/094509
24, Python フォルダ内のjpgファイルの余白削除, https://damyarou.hatenablog.com/entry/2019/05/19/161352
23, Python フォルダ内のJPGファイルを縮小しhtmlで表示, https://damyarou.hatenablog.com/entry/2019/05/19/161019
22, Python 経度・緯度で与えられた2点間距離計算, https://damyarou.hatenablog.com/entry/2019/05/19/111347
21, GMT ETOPO1で地形図作成, https://damyarou.hatenablog.com/entry/2019/05/19/084401
20, 設計 制水口式調圧水槽のサージング解析, https://damyarou.hatenablog.com/entry/2019/05/18/110312
19, 設計 制水口式調圧水槽の基本設計, https://damyarou.hatenablog.com/entry/2019/05/16/161932
18, 設計 ダムの安定計算, https://damyarou.hatenablog.com/entry/2019/05/16/111013
17, GMT Windows10にインストールして使う, https://damyarou.hatenablog.com/entry/2019/05/15/110035
16, matplotlib 構造物上にプロット, https://damyarou.hatenablog.com/entry/2019/05/06/083046
15, matplotlib 時系列グラフの軸設定, https://damyarou.hatenablog.com/entry/2019/05/05/093259
14, Python 確率雨量の推定(3)プログラミング, https://damyarou.hatenablog.com/entry/2019/05/05/051844
13, Python 確率雨量の推定(2)データ概観, https://damyarou.hatenablog.com/entry/2019/05/05/045943
12, Python 確率雨量の推定(1)計算式, https://damyarou.hatenablog.com/entry/2019/05/05/022253
11, matplotlib 河川流況表示(2), https://damyarou.hatenablog.com/entry/2019/05/03/091105
10, matplotlib 河川流況表示(1), https://damyarou.hatenablog.com/entry/2019/05/03/085611
09, matplotlib 多くの線の描画, https://damyarou.hatenablog.com/entry/2019/05/02/005821
08, matplotlib 数表を伴うグラフ, https://damyarou.hatenablog.com/entry/2019/05/01/173048
07, matplotlib 棒グラフ, https://damyarou.hatenablog.com/entry/2019/05/01/172456
06, matplotlib グラフ軸設定, https://damyarou.hatenablog.com/entry/2019/05/01/110705
05, 設計 岩盤内埋設式水圧鉄管の限界座屈圧力, https://damyarou.hatenablog.com/entry/2019/04/30/162036
04, Python 色見本作成(16進指定), https://damyarou.hatenablog.com/entry/2019/04/29/105537
03, Python 色見本作成(HSV => 16進変換), https://damyarou.hatenablog.com/entry/2019/04/29/105235
02, Python 色見本作成(matplotlibで使える色名), https://damyarou.hatenablog.com/entry/2019/04/28/153420
01, 自己紹介, https://damyarou.hatenablog.com/entry/2019/04/28/075534
00, Hatena Blog を始める, https://damyarou.hatenablog.com/entry/2019/04/27/102905

Thank you.

記事の先頭に行く