说我有以下代码
<% data = [
[1,1],[2,3],[3,5],[4,8],[6,4],[7,2]
] %>
<%= line_chart data, {discrete: true, library: {width: 600} }%>
使用 chartkick,这会生成以下图表
我希望使用整数标记垂直轴。 (不是小数)我认为
discrete
option 应该这样做,但对于这个例子,它所做的只是将水平轴上元素的格式从时间更改为数字(即以下代码<%= line_chart data, {library: {width: 600} }%>
产生这个
)。
所以我的问题是:
discrete
到底是做什么的?做,除了将实际上是数字的日期更改为数字。如何使用它使垂直轴上的数字成为整数? (或者,如果它不能用于执行此操作,我可以使用什么?)
最佳答案
discrete
选项仅适用于“主轴”并且用于离散轴。您应该仔细阅读离散轴和连续轴之间的差异。
我只是阅读了配置选项。显然你可以通过一个 ticks
每个轴的选项。刻度线是标记。您可以从数据中获取每个范围的最小值和最大值,然后以 1 个整数间隔将其展开。
因此,以下内容应该适合您:
data = [[1,1],[2,3],[3,5],[4,8],[6,4],[7,2]]
x_values = data.map(&:first)
x_range = (x_values.min)..(x_values.max)
y_values = data.map(&:last)
y_range = (y_values.min)..(y_values.max)
library_options = {
width: 600,
hAxis: {ticks: x_range.to_a},
vAxis: {ticks: y_range.to_a}
# to_a because I don't know if Range is acceptable input
}
line_chart(data, {library: library_options})
更多选项,请查看 Google Chart's configuration options for line charts .
关于ruby-on-rails - Rails chartkick : want only integer values on axes. 使用离散的还是其他的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27590771/