物理の駅 Physics station by 現役研究者

テクノロジーは共有されてこそ栄える

2023-07-01から1ヶ月間の記事一覧

Python matplotlib で ROOTの推奨カラーマップ kBird を使う

root.cern.ch Better palettes like kBird are recommended. と書かれているので使ってみよう。 import matplotlib red_bird = [ 0.2082, 0.0592, 0.0780, 0.0232, 0.1802, 0.5301, 0.8186, 0.9956, 0.9764] green_bird = [ 0.1664, 0.3599, 0.5041, 0.6419,…

CERN ROOTとPython scipy、lmfit を使って正規分布でフィッティングする方法を比較

同じデータを使って、CERN ROOT、Pythonのscipy、lmfit を使って正規分布でフィッティングするコードと結果を比較する。 まずは、データ生成部分 C++用 std::vector<double> vx{-3.65,-3.45,-3.35,-3.25,-3.15,-3.05,-2.95,-2.85,-2.75,-2.65,-2.55,-2.45,-2.35,-2.2</double>…

Python+matplotlibでA4の方眼紙風PDFを作る

グリッド間隔、線の種類、線の幅、線の色、用紙サイズは自由に設定できるようにした。 要点は次の3つ plt.subplots_adjust()で枠線の外側をなくしてfigureを紙面全体にする plt.gca().axis("off") で枠線、目盛り、目盛りラベルを消す plt.plot(transform=pl…

Python+matplotlib legend(凡例)の操作: 記号作成、複数の記号を一つのラベルで表示など

matplotlib公式のlegendのチュートリアルの一部をこの記事で紹介する。 matplotlib.org matplotlibにおける凡例はplt.legend() とする。 label で指定したグラフの凡例が、グラフの隙間に自動的に描画される。 import numpy as np import scipy import matpl…

Python+matplotlib splines(枠線)、ticks(目盛り)、ticks label (目盛りラベル)を制御する

普通に描画する fig, ax = plt.subplots() ax.plot([0,1],[0,1]) plt.show() 軸を全て消す。 fig, ax = plt.subplots() ax.plot([0,1],[0,1]) ax.axis("off") plt.show() subplotsを使わない場合はaxのかわりにplt.gca()とする。 plt.plot([0,1],[0,1]) plt.…

Python: SpotifyのAPIでPodcastの情報を取得する

ポッドキャストも聞けるSpotify(スポティファイ) は、開発者向けのAPIを公開しています。 SpotifyのAPIでPodcastの情報を取得するためのサンプルコードを公開します。 Client IDとClient secret は Spotify for Developers で取得します。 pip install spoti…

Python 与えられた整数を指定された割合に整数で分割する方法

ChatGPTに書かせた def split_numbers(total, ratios): # 各割合に対応する数値を計算 numbers = [total * ratio for ratio in ratios] # 小数点以下を四捨五入 numbers = [round(number) for number in numbers] # 残りの誤差を調整 total_numbers = sum(nu…