フロントエンドの用語一覧へ
このページの目次

np.linspaceとは?

読み方:np.linspace

最終更新:2026/08/18

3秒でわかる

start から stop までを等間隔に区切った値を、指定した個数だけ作る NumPy 関数グラフの横軸や実験用のパラメータを一行で用意できます。

もう少し詳しく

どういうものか

np.linspace(start, stop, num) は、start から stop までを等間隔に割った num 個の値を持つ配列を返します。既定では stop も含みます。刻み幅は自分で計算せず、(stop - start) / (num - 1) として NumPy が決めます。

つまり指定するのは「刻み幅」ではなく「何個ほしいか」です。ここが np.arange との決定的な違いです。

なぜ必要か

グラフを描くとき、横軸には端から端まできれいに並んだ点が必要です。刻み幅から作ろうとすると 0.1 のような値が浮動小数で正確に表せないため、最後の点が入ったり入らなかったりします。個数を指定する linspace なら、端の値は必ず指定どおりに入り、点の数もぶれません。

具体例

0 から 2π までを 200 点に割ってサインカーブを描く、という最も多い使い方です。

import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 2 * np.pi, 200) y = np.sin(x) print(x[0], x[-1], len(x)) # 0.0 6.283185307179586 200 <a href="/glossary/plt-plot" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">plt.plot</a>(x, y) plt.show() # 端を含めたくないとき np.linspace(0, 1, 5) # [0. 0.25 0.5 0.75 1. ] np.linspace(0, 1, 5, endpoint=False) # [0. 0.2 0.4 0.6 0.8]

つまずきやすいところ

  • 第三引数を刻み幅と勘違いする。np.linspace(0, 10, 2) は 0.5 刻みではなく [0., 10.] の2要素です

  • num の値と区間の数がずれる。5個の点で区切られる区間は4つなので、刻みは 1/4 になります

  • 返る配列は既定で float です。整数のつもりで添字に使うとエラーになります

  • 等差ではなく等比がほしい場面で使ってしまう。対数軸の目盛りには np.logspace を使います
  • 似た用語との違い

    関数指定するもの終端
    np.linspace個数含む
    np.arange刻み幅含まない
    np.logspace個数含む。値は10の冪


    覚え方

    linspace は linearly spaced の略で、「線形に間隔を空ける」ことだけを担当します。個数を渡す、と覚えれば arange と混ざりません。

    知識のつながり

    サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

    現在地np.linspaceフロントエンド

    LEARN BY DOING

    この用語を、教材で使ってみる

    直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

    データ分析コースの全編を見る