BarList

ランキングリスト

プレビュー

ワイズサーチ
3,420 件
直接アクセス
2,150 件
トークライン
1,280 件
コードベース
940 件
テックノート
520 件

使いどころ

使う場面

  • 項目ごとの値を、ラベル付きの横棒で並べる。ランキングや上位 N 件(流入元、ページ別アクセス、商品別売上)
  • 既定は値の降順。並び順を変えない元データには sortOrder="none" を使う
  • 行ごとに href を渡すと、その行がリンクになる。Next.js の Link は as で渡す

使わない場面

  • 10 件を超える項目。上位 5〜10 件に絞り、残りは「その他」にまとめるか Table を使う
  • 時間の推移。LineChart か ColumnChart を使う
  • 凡例が必要な複数系列や、軸を持つ比較。BarChart か ColumnChart を使う

使い方

<BarList
  data={[
    { label: "ワイズサーチ", value: 3420 },
    { label: "トークライン", value: 1280 },
  ]}
/>

プロパティ

名前型デフォルト説明
data必須BarListItem[]なしデータ配列(必須)
sortOrder"ascending" | "descending" | "none""descending"ソート順
valueFormatter(value: number) => stringなし値のフォーマッタ関数

型と必須かどうかはソースの型定義から自動で生成しています。表にない HTML 標準の属性(className や aria-* など)も、ルート要素にそのまま渡せます。

アクセシビリティ

  • ラベルと値が文字で出ているので、棒の長さが読めなくても内容は伝わる。値を省略しない
  • href を付けた行は <a> になり、Tab で移動して Enter で開ける。リンクの意味がラベルだけで伝わる文言にする
  • 棒の色を意味づけに使うときは、色だけに頼らずラベルにも書く

文言

  • ラベルは短く(半角 20 文字程度まで)。長いとバーの上で折り返す
  • valueFormatter か displayValue で単位を付ける(「1,240 件」「12.4%」)

関連するコンポーネント