import { ChartReferenceLine, ChartSeries } from "../types"; import { BarChartLayout } from "../BarChart/types"; export type BarLineChartProps = { /** X 軸のカテゴリラベル */ categories: string[]; /** * 左軸に描画する棒系列。 * `label` が `lineSeries` と同じでも内部で区別する。 */ barSeries: ChartSeries[]; /** * 右軸に描画する折れ線系列。 * `label` が `barSeries` と同じでも内部で区別する。 */ lineSeries: ChartSeries[]; /** * 棒のレイアウト。凡例 OFF でも grouped / stacked は維持する。 * カテゴリ位置(折れ線)は動かさない。 * - single: 系列 1 本(デフォルト) * - grouped: 系列を横並びで比較。非表示はフェード後に残りが詰まって幅を広げる * - stacked: 系列を積み上げて構成比を比較。非表示はフェード後に滑って積み直す */ barLayout?: BarChartLayout; /** * theme.palette.chart.colorSchemes のキー。 * 未指定時は palette.chart.series(デフォルト)を使う。 */ colorScheme?: string; /** 左軸(棒)の数値表示。未指定時は toLocaleString() */ barValueFormatter?: (value: number) => string; /** 右軸(折れ線)の数値表示。未指定時は toLocaleString() */ lineValueFormatter?: (value: number) => string; /** 系列が 2 本以上のとき凡例を表示。デフォルト true */ showLegend?: boolean; /** 折れ線のデータ点にマーカーを表示。デフォルト true */ showPoints?: boolean; /** 凡例クリックで系列の表示/非表示を切り替え。デフォルト true */ interactiveLegend?: boolean; /** * 値軸上の参照線。 * `axis: "secondary"` は右軸(折れ線)スケールに乗せる。 */ referenceLines?: ChartReferenceLine[]; /** * 棒の太さ(カテゴリスロット幅に対する比率 0–1)。 * BarChart の barWidthRatio と同じ。 */ barWidthRatio?: number; /** true の間、チャートの代わりにローディング表示 */ loading?: boolean; /** 描画可能なデータがないときのメッセージ。未指定時は「データがありません」 */ emptyMessage?: string; "aria-label": string; height?: number; className?: string; };