d3.js - D3 为什么地图不都是沿着X轴的?
问题描述
你能告诉我如何解决这个问题吗?见链接。或如何缩短轴:P
https://codepen.io/DeanWinchester88/pen/powwzgL
var xScale = d3.scale
.ordinal()
.domain( data.monthlyVariance.map( (val) => val.year )
)
.rangeRoundBands( [0,width ], 0, 0);
var xAxis = d3.svg
.axis()
.scale(xScale)
.tickValues(
xScale.domain().filter(function (year) {
// set ticks to years divisible by 10
return year % 10 === 0;
})
)
svg
.append('g')
.classed('x-axis', true)
.attr('id', 'x-axis')
.attr(
'transform',
'translate(' + padding.left + ',' + (height + padding.top ) + ')'
)
.call(xAxis)
解决方案
您可以在 xAxis 上旋转标签,以便它们变得可读:
...
svg
.append('g')
.classed('x-axis', true)
.attr('id', 'x-axis')
.attr(
'transform',
'translate(' + padding.left + ',' + (height + padding.top ) + ')'
)
.call(xAxis)
.selectAll('text')
.attr('transform', 'rotate(90)')
.style('text-anchor', 'start')
...
您可能需要对填充进行一些调整,并且可以将其放在另一个角度。您可以查看示例以获取更多详细信息
推荐阅读
- selenium - Selenium 等效于 Puppeteer 中的 networkidle2/networkIdle0
- html - 为什么这种变换旋转在 Edge 中不起作用?
- plot - Julia Plot Log 色标
- chart.js - Chart.js 散点图根据值填充图表的部分
- java - PKCS#12 KeyStore 格式的 Bouncy Castle FIPS 模式
- coldfusion - 插入带有结果集数据的临时表
- javascript - 我不确定如何在我的 java 项目中执行 html 转义以防止 XSS
- php - WooCommerce:检查订单是否免费送货
- node.js - 预加载在生产中无法正常工作/编译(Electron-vue SimulatedGREG)
- sqlite - 与 Flutter/Sqlite 的一对多关系