ラベル psutil の投稿を表示しています。 すべての投稿を表示
ラベル psutil の投稿を表示しています。 すべての投稿を表示

2020年12月27日日曜日

Ubuntu20.04でPycraft mod for MinetestとPythonを使用してCPU負荷を棒グラフで表示する

Pycraft mod for MinetestとPythonを使用してCPU負荷を棒グラフで表示するには、以下の手順を実行します。負荷に応じてグラフの色と高さが変わっていきます。

〇Pycraft mod for MinetestとPythonで棒グラフ表示したCPU負荷

作成方法

1. Pycraft mod for Minetestのインストール
Pycraft mod for Minetestをインストールしていない場合は、以下の記事を参考にしてインストールしてください。
Ubuntu20.04でPycraft mod for MinetestとPythonを使用して指定されたブロックの床を作成する

2. プログラミング
以下のコードで、CPU負荷を棒グラフで表示します。Thonnyの場合は、以下のコードを保存後、緑色の再生ボタンをクリックして実行してください。終了するときはCtrl+Cを押してください。
import mcpi.minecraft as minecraft
import mcpi.block as block
import psutil
import time

meter = [
    block.WOOL_WHITE,
    block.WOOL_LIGHT_BLUE,
    block.WOOL_BLUE,
    block.WOOL_GREEN,
    block.WOOL_LIME,
    block.WOOL_YELLOW,
    block.WOOL_ORANGE, 
    block.WOOL_RED,
    block.WOOL_BROWN,
    block.WOOL_BLACK
]

# ローカルサーバに接続
mc = minecraft.Minecraft.create("127.0.0.1")
# プレイヤーの位置を取得
pos = mc.player.getPos()

pos.z += 5

try:
    while True:
        cpu = psutil.cpu_percent(interval=1)
        cpu_meter = int(cpu/10)
        for dm in range(len(meter)):
            if dm <= cpu_meter:
                mc.setBlock( pos.x, pos.y+dm, pos.z, meter[dm])
            else: 
                mc.setBlock( pos.x, pos.y+dm, pos.z, block.AIR)
        time.sleep(1)
except KeyboardInterrupt:
    # クリーンアップ
    for dm in range(len(meter)):
        mc.setBlock( pos.x, pos.y+dm, pos.z, block.AIR)

関連情報

・Minetestに関する情報はこちらを参照してください。

2020年8月13日木曜日

Raspberry PiにJupyterにpsutilをインストールして、CPU温度を取得する

Raspberry Piで、psutilを使用してCPU温度を取得するには、以下のコードを実行します。

〇CPU温度を取得した画面

サンプルコード

以下のコードをノートブックに張り付け、実行します。
import psutil

#print(psutil.sensors_temperatures())
print("CPU temp: {}".format(psutil.sensors_temperatures()['cpu-thermal'][0].current))

psutilのインストール手順

以下のコマンドを実行します(pipenvの場合)。
pipenv install psutil

関連情報

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする

2020年8月12日水曜日

Jupyterにpsutilとtabulateをインストールして、ネットワークインターフェースのIPV4アドレスを表示する

ネットワークインターフェースのIPV4アドレスを表示するには、以下のコードを実行します。

〇ネットワークインターフェースのIPV4アドレスを一覧表示した画面

サンプルコード

以下のコードをノートブックに張り付け、実行します。
from IPython.display import HTML
import psutil
import tabulate
import socket

headers = ["Interface", "Address", "Netmask"]
table = []
#print(psutil.net_if_addrs())
for nif in psutil.net_if_addrs().keys():
  snicaddrs = psutil.net_if_addrs()[nif]
  for snicaddr in snicaddrs:
    if snicaddr.family == socket.AF_INET:
      table.append([nif, snicaddr.address, snicaddr.netmask])

display(HTML(tabulate.tabulate(table, headers, tablefmt='html')))

psutilとtabulateのインストール手順

以下のコマンドを実行します(pipenvの場合)。
pipenv install psutil

pipenv install tabulate

関連情報

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする

2020年8月11日火曜日

Raspberry Pi上のJupyterにmatplotlibとpsutilをインストールして、CPU周波数を棒グラフ表示する

matplotlibとpsutilをインストールして、CPU周波数を棒グラフ表示するには、以下のコードを実行します。

〇CPU周波数を棒グラフで表示

サンプルコード

以下のコードをノートブックに張り付け、実行します。
%matplotlib inline
import matplotlib.pyplot as plt
import psutil

print(psutil.cpu_freq())
label = ["current CPU freq."]

idx = [1]
values = [psutil.cpu_freq().current]
for index, value in enumerate(idx):
    plt.text(idx[index], values[index]/2, str(values[index]))
plt.bar(idx, values, tick_label=label, align="center", color=["lightgreen"])
plt.show()

matplotlibとpsutilのインストール手順

以下のコマンドを実行します。
sudo apt-get -y install libatlas-base-dev

pipenv install matplotlib

pipenv install psutil

関連情報

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする

2020年7月21日火曜日

Jupyterにpsutilとtabulateをインストールして、パーティション情報を表示する

パーティション情報を表示するには、以下のコードを実行します。

〇パーティション情報を一覧表示

サンプルコード

以下のコードをノートブックに張り付け、実行します。
from IPython.display import HTML
import psutil
import tabulate
from psutil._common import bytes2human

headers = ["Mountpoint", "Device", "Total size", "Used", "Free", "Use %", "Type"]
table = []
for part in psutil.disk_partitions(all=False):
  usage = psutil.disk_usage(part.mountpoint)
  table.append([part.mountpoint, 
    part.device,
    bytes2human(usage.total),
    bytes2human(usage.used),
    bytes2human(usage.free),
    int(usage.percent),
    part.fstype])

display(HTML(tabulate.tabulate(table, headers, tablefmt='html')))

psutilとtabulateのインストール手順

以下のコマンドを実行します(pipenvの場合)。
pipenv install psutil

pipenv install tabulate

関連情報

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする

Raspberry Pi上のJupyterにmatplotlibとpsutilをインストールして、物理・論理CPU数を棒グラフ表示する

matplotlibとpsutilをインストールして、物理・論理CPU数を棒グラフ表示するには、以下のコードを実行します。

〇物理・論理CPU数を棒グラフで表示

サンプルコード

以下のコードをノートブックに張り付け、実行します。
%matplotlib inline
import psutil
import matplotlib.pyplot as plt
print("Number of physical cpu: {}".format(psutil.cpu_count(logical=True)))

print("Number of locgical cpu: {}".format(psutil.cpu_count(logical=False)))

label = ["physical cpu counts", "logical cpu counts"]

idx = [1, 2]
values = [psutil.cpu_count(logical=True), psutil.cpu_count(logical=False)]
for index, value in enumerate(idx):
    plt.text(idx[index], values[index]/2, str(values[index]))
plt.bar(idx, values, tick_label=label, align="center", color=["green", "lightgreen"])
plt.show()

matplotlibとpsutilのインストール手順

以下のコマンドを実行します。

sudo apt-get -y install libatlas-base-dev

pipenv install matplotlib

pipenv install psutil

関連情報

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする

2020年7月20日月曜日

Raspberry Pi上のJupyterにmatplotlibとpsutilをインストールして、使用済みメモリを円グラフ表示する

matplotlibとpsutilをインストールして、使用済みメモリを円グラフ表示するには、以下のコードを実行します。

〇メモリの使用量を円グラフで表示


サンプルコード

以下のコードをノートブックに張り付け、実行します。
%matplotlib inline
import matplotlib.pyplot as plt
import psutil

label = ["used", "free"]
used = psutil.virtual_memory().percent
values = [used, 100-used]
plt.pie(values, labels=label, \
  autopct="%.1f%%", pctdistance=0.6, \
  wedgeprops={'linewidth': 3, 'edgecolor':"white"}, \
  colors=["#FBB45C", "#206491"])
plt.title("used memory")
plt.show()

matplotlibとpsutilのインストール手順

以下のコマンドをpipenvの仮想環境で実行します。
sudo apt-get -y install libatlas-base-dev

pipenv install matplotlib

pipenv install psutil

関連情報

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする