[解決済み] matplotlib で x 軸または y 軸の "目盛り頻度" を変更する
2022-03-15 04:45:48
質問
Pythonが私のデータをどのようにプロットするかを修正しようとしています。
セイ
x = [0,5,9,10,15]
そして
y = [0,1,2,3,4]
それなら、私ならこうします。
matplotlib.pyplot.plot(x,y)
matplotlib.pyplot.show()
で、x軸の刻みは5刻みでプロットされています。1の間隔で表示させる方法はありますか?
解決方法は?
マークを付ける位置を明示的に設定するには
plt.xticks
:
plt.xticks(np.arange(min(x), max(x)+1, 1.0))
例えば
import numpy as np
import matplotlib.pyplot as plt
x = [0,5,9,10,15]
y = [0,1,2,3,4]
plt.plot(x,y)
plt.xticks(np.arange(min(x), max(x)+1, 1.0))
plt.show()
(
np.arange
が使われ、Pythonの
range
関数は、万が一のために
min(x)
と
max(x)
はint型ではなくfloat型です)。
は
plt.plot
(または
ax.plot
) 関数は、自動的にデフォルトの
x
と
y
の制限を受けます。これらの制限を維持したまま、目盛りのステップサイズだけを変更したい場合は、次のようにします。
ax.get_xlim()
を使用して、Matplotlib が既に設定した制限を発見することができます。
start, end = ax.get_xlim()
ax.xaxis.set_ticks(np.arange(start, end, stepsize))
デフォルトのティックフォーマッターは、ティック値を有効数字に丸めるという適切な仕事をするはずです。しかし、もっと細かく書式を制御したい場合は、独自のフォーマッタを定義することができます。たとえば
ax.xaxis.set_major_formatter(ticker.FormatStrFormatter('%0.1f'))
以下は実行可能な例です。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
x = [0,5,9,10,15]
y = [0,1,2,3,4]
fig, ax = plt.subplots()
ax.plot(x,y)
start, end = ax.get_xlim()
ax.xaxis.set_ticks(np.arange(start, end, 0.712123))
ax.xaxis.set_major_formatter(ticker.FormatStrFormatter('%0.1f'))
plt.show()
関連
-
Python入門 openを使ったファイルの読み書きの方法
-
[解決済み】Python regex AttributeError: 'NoneType' オブジェクトに 'group' 属性がない。
-
[解決済み】numpy: true_divide で無効な値に遭遇
-
[解決済み] 関数デコレータを作成し、それらを連鎖させるには?
-
[解決済み] リストを均等な大きさの塊に分割するには?
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み] AndroidでPythonを実行する方法はありますか?
-
[解決済み] Matplotlibでプロットを表示するのではなく、画像ファイルに保存する。
-
[解決済み] matplotlib のプロットで軸のテキストを非表示にする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PicgoのイメージベッドツールをPythonで実装する
-
Pythonによるjieba分割ライブラリ
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】DataFrameのコンストラクタが正しく呼び出されない!エラー
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】終了コード -1073741515 (0xC0000135)でプロセス終了)
-
[解決済み】cアンダースコア式`c_`は、具体的に何をするのですか?
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない