The d3.axis.tickFormat() Function in D3.js is used to control which ticks are labelled. This function is used to implement your own tick format function.
Syntax:
axis.tickFormat([format])
Parameters: This function accepts the following parameter.
- format: These parameters are format to set the tick format function.
Return Value: This function returns the currently set tick format function, which defaults to null.
Below programs illustrate the d3.axis.tickFormat() function in D3.js:
Example 1:
<!DOCTYPE html> < html > < head > < title > D3.js | D3.axis.tickFormat() Function </ title > < script type = "text/javascript" </ script > < style > svg text { fill: green; font: 15px sans-serif; text-anchor: center; } </ style > </ head > < body > < script > var width = 400, height = 400; var svg = d3.select("body") .append("svg") .attr("width", width) .attr("height", height); var yscale = d3.scaleLinear() .domain([0, 1]) .range([height - 50, 0]); var y_axis = d3.axisLeft().scale(yscale) .tickValues([0, .2, .5, .70, 1]) .tickFormat((d, i) => ['a', 'e', 'i', 'o', 'u'][i]); svg.append("g") .attr("transform", "translate(100, 20)") .call(y_axis) </ script > </ body > </ html > |
Output:
Example 2:
<!DOCTYPE html> < html > < head > < title > D3.js | D3.axis.tickFormat() Function </ title > < script type = "text/javascript" </ script > < style > svg text { fill: green; font: 15px sans-serif; text-anchor: center; } </ style > </ head > < body > < script > var width = 600, height = 400; var svg = d3.select("body") .append("svg") .attr("width", width) .attr("height", height); var xscale = d3.scaleLinear() .domain([0, 10]) .range([0, width - 100]); var x_axis = d3.axisBottom(xscale).ticks(4) .tickFormat(x => `(${x.toFixed(1)})`); var xAxisTranslate = height / 2; svg.append("g") .attr("transform", "translate(50, " + xAxisTranslate + ")") .call(x_axis) </ script > </ body > </ html > |
Output: