2020/06/08

Matplotlib on Mac

http://ekbo.blogspot.com/2020/02/matplotlib-on-mac-homebrew.html

混沌としてきた.Catalina にアップグレードするタイミングで, Python 3.8 が供給されたのか,タイミングは分からないけど,自分にとっては同時になってしまった.

>>> import matplotlib.pyplot as plt
ImportError: numpy.core.multiarray failed to import
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/homebrew/lib/python3.7/site-packages/matplotlib/__init__.py", line 205, in <module>
    _check_versions()
  File "/opt/homebrew/lib/python3.7/site-packages/matplotlib/__init__.py", line 190, in _check_versions
    from . import ft2font
ImportError: numpy.core.multiarray failed to import

発端はこいつ.Pythonでグラフが書けなくなった.何が起きているのか全く分からなかったのだが,

% brew search python3

で判明.python@3.8 が供給されていて,インストールされている!!何かが起きても仕方がない状況が生じてしまったようだ...諦めて,

% /opt/homebrew/opt/python@3.8/bin/pip3 install matplotlib

で入れ直し.動いた.3.7 の削除をすべきか?

ps.
pipにしようかどうしようかと思っていたところもあったが,brewでpython入れると,

# You can install Python packages with
# /opt/homebrew/opt/python@3.8/bin/pip3 install <package>
って言われてる.従え.

2020/04/05

montageでフォントエラー

何故か, montage で画像を連結しただけで,フォントエラー

montage: unable to read font `helvetica' @ error/annotate.c/RenderFreetype/1391.

が出た.

対処作が簡潔すぎて驚いたのだが,gs (ghostcript) を入れたら解決とな...

% brew install gs

参考)
https://apple.stackexchange.com/questions/224285/why-does-image-magick-fail-to-read-fonts

2020/02/22

Matplotlib on Mac Homebrew

matplotlibの入れ方更新 -> https://ekbo.blogspot.com/2020/06/Matplotlib-on-Mac.html 2020.6.8

自分がどうするかの宣言も含めて,Mac OS X の Homebrew の Python (Version 3) でどう環境を構築するか.

そもそも Python 自体のインストールが混沌としてしまっている...

  1. QGISのためのパッケージインストール.確か,QGISのインストールで,Python3 をバイナリパッケージで入れろと言われた気がする.
  2. MacPorts がまだ Homebrew への完全移行が終わっていないので残ってる.
  3. Homebrew で入れた

/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
/opt/homebrew/bin/python3
/opt/local/bin/python3
/usr/local/bin/python3
一つ多い....

で,Matplotlib をはぢめましょう.と思ったときに,ふと,,,どうすんだ?

確実に,Homebrew の環境で作業するために,
/opt/homebrew/bin/pip3.7 install matplotlib
にしました.pip3 で十分ですが... pip とすると, Version 2 と Version 3 を見失う場合があるので念の為(自分は,Python2 をインストールしていないので混乱しませんが).

#!/opt/homebrew/bin/python3

import sys
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

t = np.arange(0,2*np.pi, 0.1)
plt.figure(1)
plt.plot(t, np.sin(t))
plt.show()

sys.exit(0)

動いた!


2020/02/21

sshpass on Homebrew

MacPorts から, HomeBrew へ乗り換えを進めています.

% brew install sshpass
Error: No available formula with the name "sshpass"
We won't add sshpass because it makes it too easy for novice SSH users to
ruin SSH's security.

1つ,移行が出来なかったのが sshpass.まぁ,言ってることも分からんでもない.が,今どきログインパスワード(公開鍵を使ってない)な時点で意識低いということで,自分専用端末からだけは使う.

macOS に Homebrew で sshpass をインストールするに書かれているようなHomebrew の中でなんとかする!という方針もありですが,それも面倒なので,ソースから.

どこにあるかは,port に教えてもらう.
% port info sshpass | grep Homepage
Homepage:             http://sourceforge.net/projects/sshpass/

私の趣味的には, ~/local なので,
% ./configure --prefix=$HOME/local
% make
% make install