我已经从示例中修改了数据结构 d3.js yaxis not drawing all the ticks properly进入
[{name: "john",value: 4500},
{name: "peter",value: 3000},
{name: "tom",value: 2500},
{name: "john",value:2000}];
绘制图表时,第4个名称即第2个约翰没有出现在图表中, 为什么这种行为以及如何让它出现在图表中
答案 0 :(得分:2)
如果仔细观察,您会看到第一个和第四个项目的条形图绘制在相同的位置并重叠。
基本问题是代码使用数据本身(重复)来识别单个元素。如果您希望具有相同数据值的不同元素,则需要为它们提供唯一标识符,以便代码能够区分它们。代码中的比例被设置为使得相同的输入值将映射到相同的输出值,即如果您具有相同的名称,则条形将被绘制在相同的位置。
解决此问题的一种方法是使用唯一ID作为缩放函数的输入,然后使用格式化程序从此ID中生成标签。