D 3で様々なスタイルのx軸を描く方法
2404 ワード
この文書は
グラフを描く過程で、直座標系は迂回できない問題で、ヒストグラム、折れ線図、散点図などは直座標系に使用する必要があります.その中で最も重要なのはx軸の描画です.y軸は基本的に数値表示なので.どのようにコードで実現するか,x軸の表現形式は何であるか,これは本論文で主に議論した問題である.
ゼロからとは、描画された座標軸の左端から最初の目盛りが表示されます.折れ線図、散点図は、このようなスタイルのx座標軸をよく採用します.
表現形式:
状況が少なく、基本的に使わないので、説明しません.
時間軸も線形なので、このようなものに分類します.
表現形式:
まずゼロから言わないでください.この使い方は普通ですから.ポイントは
表現形式:
基本的に、柱図にはこのようなx座標軸が採用されています.
表現形式:
通常、x軸のデータは非線形であることが多い.折れ線図、散点図などを描くには、このような表現が必要なので、この方法はよく使われています.
d3.js
V 4バージョンのみを使用して描画され、V 3バージョンには注目せず、時間とともに進みます.グラフを描く過程で、直座標系は迂回できない問題で、ヒストグラム、折れ線図、散点図などは直座標系に使用する必要があります.その中で最も重要なのはx軸の描画です.y軸は基本的に数値表示なので.どのようにコードで実現するか,x軸の表現形式は何であるか,これは本論文で主に議論した問題である.
1連続性x座標軸
1.1ゼロからの連続性x座標軸
ゼロからとは、描画された座標軸の左端から最初の目盛りが表示されます.折れ線図、散点図は、このようなスタイルのx座標軸をよく採用します.
let height = 400
let width = 600
let x = d3.scaleLinear().range([0, width])
let xScale = x.domain([0, 10])
// x
let xAxis = svg.append('g')
.attr('class', 'xAxis')
.attr('transform', `translate(0, ${height})`)
.call(d3.axisBottom(xScale))
d3.axisTop
およびd3.axisBottom()
を使用して、座標軸の上方または下方に目盛りを制御する.表現形式:
1.2ゼロから開始しない連続性x座標軸
状況が少なく、基本的に使わないので、説明しません.
1.3時間型x座標軸
時間軸も線形なので、このようなものに分類します.
let height = 400
let width = 600
let x = d3.scaleTime().range([0, width])
let xScale = x.domain([new Date(2017, 1), new Date(2017, 6)])
// x
let xAxis = svg.append('g')
.attr('class', 'xAxis')
.attr('transform', `translate(0, ${height})`)
.call(d3.axisBottom(xScale))
表現形式:
2非連続性x座標軸
2.1ゼロから開始しない非連続性x座標軸
まずゼロから言わないでください.この使い方は普通ですから.ポイントは
d3.scaleBand()
を使用することです.let height = 400
let width = 600
let x = d3.scaleBand().range([0, width])
let xScale = x.domain([' ', ' ', ' ', ' '])
// x
let xAxis = svg.append('g')
.attr('class', 'xAxis')
.attr('transform', `translate(0, ${height})`)
.call(d3.axisBottom(xScale))
表現形式:
基本的に、柱図にはこのようなx座標軸が採用されています.
2.2ゼロから始まる非連続性x座標軸
d3.scaleOrdinal()
の使用let height = 400
let width = 600
let x = d3.scaleOrdinal().range([150, 300, 450, 600])
let xScale = x.domain([' ', ' ', ' ', ' '])
// x
let xAxis = svg.append('g')
.attr('class', 'xAxisis')
.attr('transform', `translate(0, ${height})`)
.call(d3.axisBottom(xScale))
表現形式:
通常、x軸のデータは非線形であることが多い.折れ線図、散点図などを描くには、このような表現が必要なので、この方法はよく使われています.