同学们大家好。
我正在 Elixir 项目中使用 Elixir 库 ContEx 创建图表 - https://hexdocs.pm/contex/Contex.html
我有一个条形图。下面是我用来创建此图表的代码。
dataset = [
["Sage", scores.sage],
["Scientist", scores.scientist],
["Leader", scores.leader],
["Warrior", scores.warrior],
["Mother", scores.mother],
["Entrepreneur", scores.entrepreneur],
["Perfectionist", scores.perfectionist],
["Servant", scores.servant]
]
options = [
custom_value_scale:
Contex.ContinuousLinearScale.new()
|> Contex.ContinuousLinearScale.domain(0, 56)
|> Contex.Scale.set_range(0, 56),
colour_palette: ["ffdfae"],
data_labels: false,
]
Contex.Dataset.new(dataset)
|> Contex.Plot.new(Contex.BarChart, 550, 280, options)
|> Contex.Plot.to_svg()
|> elem(1)
现在我应该如何将 y 轴小数刻度更改为整数。我发现了以下功能。但这似乎并没有提供我想要的答案。
https://hexdocs.pm/contex/Contex.BarChart.html#custom_value_formatter/2
这是我需要使用的功能吗?我没有找到任何其他方法可以做到这一点。请帮我解决这个问题。
我应该如何将 y 轴刻度更改为整数?
我认为这是不可能的。
ContinuousLinearScale
已将浮动“烘焙”到源代码中。您可以从该模块复制代码(在deps/contex/lib/chart/scale/continuous_linear_scale.ex
中)并制作自己的使用整数的模块,例如DiscreteLinearScale
。我还没有阅读整个模块,所以我不知道它有多难。首先,只需找到所有浮点数并将它们更改为整数。这可能足以让它发挥作用。