MacBook Pro+Paralles+Ubuntuでスクリーンショットの取得方法
Mac+Paralles上のUbuntuでスクリーンショットを取得する方法
MacBook ProにはPrint Screenボタンがない。スクリーンショットを取得するにはPrint Screenボタンを必要とするUbuntuでどうやってスクリーンショットを取るのか。
Mac メニュー バーの[ II ] メニューから、[デバイス]-[キーボード]-[PrintScreen]を選択する。
使い方はこちら参照。
Ubuntuの画面をMacのスクリーンショットで取得する方法
- command(⌘) + Shift + 3 :画面全体のスクリーンショット
- command(⌘) + Shift + 4 :領域を選択
Parallesのメニュー[表示]-[スクリーンショットを取得する]からも可能。
pngファイルがデスクトップに作成される。
JupyterをVisual Studio Codeから使う
WebアプリであるJupyterですが、これをVSCode上で扱うことも可能です。これには以下の2通りの方法があります。
1つは、Pythonのソースコードと特別なコメントである#%%を追加し、このコメントで囲まれた部分をJupyterのセルとみなして実行できるようにする機能です。PythonのコードなのでVSCodeのすべての機能が使える一方、実行結果は別のウィンドウで表示され、Jupyter Notebookとして保存できます。さらに、データビューアで変数に格納したデータを見たり、セル単位のデバッグを行うことも可能です。
もう1つは、VSCodeの中でWebアプリと同様のJupyter Notebookを表示し、セルを編集、実行する機能です。これは既存のJupyterと互換性がある一方、デバッグなどVSCodeの機能の一部が使えません。
本節では、前者の方法について簡単に紹介していきます。
プロジェク用のディレクトリに移動して準備。
$ cd /path/to/project $ pyenv local 3.10.8 $ python -m venv -.venv
このフォルダをVSCodeで開く。 VSCodeのターミナルから、Jupyterと追加ライブラリをPandas、Matplotlib、seabornをインストール。
$ pip install jupyter pandas matplotlib seaborn Collecting jupyter Downloading jupyter-1.0.0-py2.py3-none-any.whl (2.7 kB) Collecting pandas Downloading pandas-1.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.1/12.1 MB 21.2 MB/s eta 0:00:00 Collecting matplotlib (中略) [notice] A new release of pip available: 22.2.2 -> 22.3 [notice] To update, run: pip install --upgrade pip
Pandasに付属するデータセットを準備。(ここ書籍のURLだとうまく行かないよ〜)
$ curl -OL https://datahub.io/machine-learning/iris/r/iris.csv $ head iris.csv sepallength,sepalwidth,petallength,petalwidth,class 5.1,3.5,1.4,0.2,Iris-setosa 4.9,3.0,1.4,0.2,Iris-setosa 4.7,3.2,1.3,0.2,Iris-setosa 4.6,3.1,1.5,0.2,Iris-setosa 5.0,3.6,1.4,0.2,Iris-setosa 5.4,3.9,1.7,0.4,Iris-setosa 4.6,3.4,1.4,0.3,Iris-setosa 5.0,3.4,1.5,0.2,Iris-setosa 4.4,2.9,1.4,0.2,Iris-setosa
hoge.pyを作成。
#%% import pandas as pd #%% df = pd.read_csv("iris.csv")
%%の上に「Run Cell」(セルの実行)と文字が現れるのでクリックして実行する。または、Shift+Enterで実行。
実行結果が新しいタブが開いて表示される。
(以下の内容も書籍の通りでは動かないので修正)
#%% df.head #%% df.hist(by="class", column="sepallength", sharex=True, sharey=True) #%% import seaborn as sns sns.pairplot(df, hue='class')
Python Interactiveタブの最上部にあるSaveボタンから、グラフや表を含めてJupyter Notebookとして出力できる。
同じく上部のVariablesボタンを押下すると、現在の変数一覧を表示される。変数をダブルクリックなどしてみよう。
Ubuntu22の標準ディレクトリ(ドキュメント、デスクトップ等)を日本語から英語にする
構成
以下のコマンドを実行。
$ LANG=C xdg-user-dirs-gtk-update
ウィンドウが開くので、" Don't ask me this again " にチェックを入れて、[ Update Names ] をクリック。
でもこれやったらファイルクスプローラ(←正式名称は?)のサイドバーは日本語のままで「ドキュメント」をクリックしてもDocumentを開いてくれるわけでなく無反応になる。だめじゃん。。。と思ったら、いつのまにか英語表記に変わっていた。
MacBoo Pro+Pallarels上のUbuntu 22の時間がズレる
構成
- MacBook Pro 13 (13-inch, 2019, Two Thunderbolt 3 ports) Model A2159
- macOS Monterey Version 12.6
- Pallarels Desktop 15 for Mac Home Edition Version 15.1.5 (47309)
- Ubuntu 22.04 LTS 日本語 Remix
Pallarelsの問題かな?
これは関係あるかな? ↓
とりあえず、大きくずれているときはntpupdateで合わせるようにしよう。これと同等のtimedatectlコマンドは?
$ sudo apt install ntpdate $ sudo ntpdate ntp.nict.jp
Ubuntu22のターミナルのプロンプトがやたらと長いから短くする
username@hostname:/lib/gnome-settings-daemon-3.0/gtk-modules$ pwd /lib/gnome-settings-daemon-3.0/gtk-modules
プロンプトが長い!邪魔!
~/.bashrcを編集する。\wを\Wにする。小文字を大文字。
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' ↓ PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\W\[\033[00m\]\$ '
設定を反映する。
$ source ~/.bashrc
こうなった。
username@hostname:gtk-modules$ pwd /lib/gnome-settings-daemon-3.0/gtk-modules
参考 ↓
VSCodeのPythonのリント、フォーマット、コード補完
pp.263-269
Ubuntu22にPythonをインストール(pyenvとvenvを使う)
環境
-
OS標準インストールのPython3は、OSを安定させるためにもむやみなアップグレードやパッケージ追加を避けたい。
Pythonの標準機能であるpyenvとvenvを使いこなそう。
pyenvを用いると、指定した特定のバージョンのPython実行環境を導入することができ、さらに複数のバージョンをそれぞれ異なるディレクトリに収納して切り替えることができるようになる。これにより、プロジェクトごとに適したバージョンの実行環境を用意することができる。
venvは、もともと「virtualenv」として知られていた外部のツールがPython 3.3で標準として取り込まれたもの。
シェル上で「python3 -m venv 環境名」という書式で新しい環境を構築することができ、環境名と同じ名前のディレクトリが新たに作成される。当該環境上でpipなどを使ってパッケージを導入すると、他の環境には影響を与えることなくその環境でのみパッケージを利用できるようになる。
複数のプロジェクトが異なるパッケージを利用しており、それらが競合して同時に利用するのに不都合な場合などに、プロジェクトごとに独立した環境を簡単に用意することができる。
pyenvをインストールする
Mac、Windowsは、公式ドキュメントの手順に従うといいが、Linuxの場合は別プロジェクトであるpyenv installerを使用するのがいい。
事前準備としてgitをインストールする。
$ sudo apt install git
curlをインストール
$ sudo apt install curl
任意のPythonバージョンを導入するために必要なコンパイル環境を整える。(Suggested build environmentより)
$ sudo apt update $ sudo apt install make build-essential libssl-dev zlib1g-dev \ libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \ libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
インストール
バージョンを指定してインストールする場合の例としてドキュメントには以下の記述があるが、v2.2.5なんてタグはなさそうだし、タグ指定して動作するかは未確認。
$ export PYENV_GIT_TAG=v2.2.5 $ curl https://pyenv.run | bash
最新版をインストールする場合は以下の通り。
$ curl https://pyenv.run | bash % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 270 100 270 0 0 203 0 0:00:01 0:00:01 --:--:-- 203 Cloning into '/home/tokushima/.pyenv'... remote: Enumerating objects: 1007, done. (中略) WARNING: seems you still have not added 'pyenv' to the load path. # Load pyenv automatically by appending # the following to ~/.bash_profile if it exists, otherwise ~/.profile (for login shells) and ~/.bashrc (for interactive shells) : export PYENV_ROOT="$HOME/.pyenv" command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)" # Restart your shell for the changes to take effect. # Load pyenv-virtualenv automatically by adding # the following to ~/.bashrc: eval "$(pyenv virtualenv-init -)"
最後のメッセージの通りに.bashrcに設定を書き込もう。
$ cat << 'EOF' >> ~/.bashrc export PYENV_ROOT="$HOME/.pyenv" command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)" EOF
シェルを再起動
exec $SHELL
バージョン確認
$ pyenv --version pyenv 2.3.5
pyenvのアップデート
pyenv update
pyenvのアンインストール
$ rm -fr ~/.pyenv
あと、.bash_profileに追加した設定を消しておく。 最後にシェルを再起動。
exec $SHELL
pyenvの使い方
インストール可能なバージョンを表示する。
$ pyenv install --list (中略) 3.10.0 3.10-dev 3.10.1 3.10.2 3.10.3 3.10.4 3.10.5 3.10.6 3.10.7 3.10.8 3.11.0 3.11-dev 3.12-dev (中略)
バージョン3.10.8をインストールする。
$ pyenv install 3.10.8
インストール済みの使用可能なバージョンを確認する。システムのPythonに戻すときは
$ pyenv versions * system (set by /home/tokushima/.pyenv/version) 3.10.8
使用するバージョンを切り替える。
pyenv shell <version> -- select just for current shell session pyenv local <version> -- automatically select whenever you are in the current directory (or its subdirectories) pyenv global <version> -- select globally for your user account
プロジェクトフォルダでlocalオプションを指定するのがいいと思う。使用するバージョンを指定する。
$ pyenv local 3.10.8 $ python --version Python 3.10.8 $ ls -a . .. .python-version $ cat .python-version 3.10.8
venvの使い方
venv --- 仮想環境の作成 — Python 3.10.6 ドキュメント
ヘルプの表示
$ python -m venv -h
プロジェクトフォルダで仮想環境を作る。
$ python -m venv .venv $ ls -a . .. .python-version .venv
このフォルダをVSCodeで開くと自動で反映される。
コマンドラインで仮想環境を有効にするには
$ source ./venv/bin/activate
以上