我试图在X轴上显示1,1.5,4,7,9
,在Y轴上显示2.5,1,5,3
。当我尝试执行此操作时,我的输出类似于1, 1.5, 2, 2.5,......
,这基本上是我提供的值的细分。我只想要在XY轴上给定的值,而又不需要自动范围(滚动值)。
答案 0 :(得分:0)
假设您自标记了angular后就使用JavaScript。
您将必须设置三个属性才能进行此工作:tickvals,ticktext和tickmode。他们在文档中告诉您:
tickmode (枚举:“自动” |“线性” |“数组”)
设置该轴的刻度模式。如果为“自动”,则通过nticks
设置刻度数。如果为“线性”,则刻度的位置由起始位置tick0
和刻度步长dtick
确定(如果tick0
和dtick
为默认值,则“线性”为默认值提供)。如果为“数组”,则通过tickvals
设置刻度的位置,刻度文本为ticktext
。 (如果提供了tickvals
,则“ array”是默认值)。tickvals (数据数组) 设置此轴上的刻度线出现的值。仅在
tickmode
设置为“ array”时有效。与ticktext
一起使用。ticktext (数据数组) 设置通过
tickvals
在刻度位置显示的文本。仅在tickmode
设置为“ array”时有效。与tickvals
一起使用。
因此tickmode
说您要使用自己的标签,tickvals
说出放置这些标签的位置,而ticktext
是您的标签。设置tickvals
和ticktext
可以使Plotly推断tickmode
,因此,如果需要,您应该可以忽略它。使用类似以下内容的代码可以帮助您实现目标:
var layout = {
xaxis: {
tickmode: "array",
tickvals: [1,1.5,4,7,9],
ticktext: [1,1.5,4,7,9]
},
yaxis: {
tickvals: [1,1.5,4,7,9],
ticktext: [1,1.5,4,7,9]
}
}
This example应该有所帮助。