plotlyでグラフを描いてみた
これまではpythonでグラフを書くときにはmatplotlib
を使っていたのですが,plotly
というライブラリが良さそうなので少し使ってみました.
Sample graph
試しにsin, cosを出力するグラフを書いてみました.気が向いたらもう少しいろんなグラフを作ってみようと思います.
Sample code
import plotly.express as px import numpy as np import pandas as pd pd.options.plotting.backend = "plotly" x = np.linspace(start=0, stop=10, num=101) df_exp = pd.DataFrame(dict(x=x, y=np.cos(x), func="cos")) df_sin = pd.DataFrame(dict(x=x, y=np.sin(x), func="sin")) df = pd.concat([df_exp, df_sin]) fig = px.line(data_frame=df, x="x", y="y", color="func", markers=True) fig.show()
Powershellで再生デバイスを切り替える
概要
AudioDeviceCmdletsというPowershellでAudioDeviceを操作するためのModuleを使って,GUIではなくPowershellから再生デバイスを変更できるようにします.
手順
Module
AudioDeviceCmdlets
のインストール.管理者権限のpowershellで実行します.❯ Install-Module -Name AudioDeviceCmdlets -V -Force
-Force
オプションなしだと自分の環境だと失敗しました.原因はよくわかっていませんがインストールがスキップされてしまいます.❯ Install-Module -Name AudioDeviceCmdlets -V ... VERBOSE: The specified Location is 'https://www.powershellgallery.com/api/v2' and PackageManagementProvider is 'NuGet'. VERBOSE: Searching repository 'https://www.powershellgallery.com/api/v2/FindPackagesById()?id='AudioDeviceCmdlets'' for ''. VERBOSE: Total package yield:'1' for the specified package 'AudioDeviceCmdlets'. VERBOSE: Skipping installed module AudioDeviceCmdlets 3.0.0.4.
AudioDeviceCmdlets
のインポートインストールしただけではまだ使えないのでインポートします.
Get-Module
コマンドを叩いた時にAudioDeviceCmdlets
があれば,インポートに成功しています.# import module ❯ Import-Module AudioDeviceCmdlets # check module ❯ Get-Module ModuleType Version PreRelease Name ExportedCommands ---------- ------- ---------- ---- ---------------- Binary 3.0.0.4 AudioDeviceCmdlets {Get-AudioDevice, Set-AudioDevice, Write-AudioDevice} ...
AudioDeviceのリストを取得する.
インポートに成功したら各種Cmdletsが使えるようになるので,実際にAudioDeviceのリストを取得します. 使うCmdletsは
Get-AudioDevice -List
です.こんな感じに接続しているデバイスの情報を取得できます.
❯ Get-AudioDevice -List Index : 1 Default : False Type : Playback Name : Speakers (Realtek(R) Audio) ID : {0.0.0.00000000}.{52736375-a7ca-fdf8-3b5d-9218beaab35a} Device : CoreAudioApi.MMDevice ...
AudioDeviceを切り替える
先ほど取得した情報をもとに
Set-AudioDevice
を使って,デバイスを切り替えます.今回はindexをもとに切り替えます.❯ Set-AudioDevice -Index 3
コマンド実行後,再生デバイスが切り替わっているはずです.
windows11でApple Magic Trackpad 3 を使う
概要
デスクトップでもトラックパッドを使いたくなってWindows対応製品を探してみたが,ぱっとするものがなかったのでApple Magic Trackpad 3(現行のやつ) を買ってみた.
導入に少しだけ手間取ったので備忘録として手順を残しておく.
手順
driverのダウンロード
https://github.com/imbushuo/mac-precision-touchpad から最新版のReleases(Drivers-amd64-ReleaseMSSigned.zip) をダウンロードして展開する.
driverのインストール
windows 10以前ではドライバを手動インストールする場合に,
inf
ファイルを右クリックして「インストール」を選択できたらしいのだが,自分の環境(windows 11)では,クリックしても「インストール」の項目がなかったので管理者権限のPowerShellからインストールを実行した.# <EXTRACTED_DRIVER_DIR_PATH>は各自の環境に合わせて書き換える必要あり ❯ Get-ChildItem "<EXTRACTED_DRIVER_DIR_PATH>" -Recurse -Filter "*inf" | ForEach-Object { PNPUtil.exe /add-driver $_.FullName /install }
この時点でPCとUSB接続すると,ジェスチャー含め操作可能になっている.
-
普通のBluetoothデバイスを追加するときの手順と同じ.
Settings -> Bluetooth & devices -> Add device
Magic TrackpadにペアリングモードはないのでWindows側の設定だけで十分.もし"Add device"を実行しても,Magic Trackpadが認識されない場合,Trackpadの電源をつけなおしてみると認識されるかも.
bitFlyer Lightning API - "Invalid signature"の原因と解決方法
概要
bitFlyer Lightning APIを使って,botを書いていた時に,Invalid signature
Errorが発生して少し解決に手間取ったのでここに書いておきます.
今回の自分の場合は,認証が必要なPrivate APIを使ったときに,認証が通らず以下のようなエラーレスポンスが返ってくる,という状況でした.
{ status: -500, error_message: 'Invalid signature', data: null }
原因
いろいろ原因を調査してみましたが,結局,コード中のAPI secretに不備があったことが原因でした.具体的にはコピーの失敗でAPI secretの末尾がなくなっていました.
しょうもない原因ですが,Invalid signature
Errorが発生した場合にまず,認証情報を確認してみると解決するかもしれません.
解決策
コード内部のAPI secretをしっかりと確認して正確に使用する.