在立体主义示例中,将context.horizon()的height参数更改为较小的值会导致图形自身重叠更多。对于增加值,情况正好相反-重叠较少。
但是,当我更改高度参数时,我的图形仍然保持相同的重叠级别,并且它们只是相应地放大和缩小自己。当我使高度变小时,图形实际上会失去分辨率。
我该如何解决这个问题?
下面是我的代码:
`var context = cubism.context().step(1000000).size(1000);`
var graphite = context.graphite("http://graphite.example.com");
var horizon = context.horizon().metric(graphite.metric).height(200);
var metrics = [
"summarize(example0,'10s')",
"summarize(example1,'10s')",
"summarize(example2),'10s')",
"summarize(example3),'10s')"
]
d3.select("#supergraph").append("div")
.attr("class", "axis")
.call(context.axis().ticks(4).orient("top"));
d3.select("#supergraph").append("div")
.attr("class", "rule")
.call(context.rule());
d3.select("#supergraph").selectAll(".horizon")
.data(metrics)
.enter().append("div")
.attr("class", "horizon")
.call(horizon);
发布于 2013-01-07 17:15:05
立体主义将始终绘制与您为其设置的颜色数量相等的波段数,除非您显式设置范围,否则它将始终将最高波段顶部的最大值设置为数据的最大值。这意味着您有两个选项可以在更改大小时保持相同的分辨率:
1)您可以使用horizon.extent([min, max])
显式设置范围,并在缩放高度时缩放最小值和最大值。换句话说,如果您将图表的高度加倍,则范围内的最小和最大高度也会加倍。
2)您可以更改您为其指定的颜色数量,这将更改它创建的波段数量。换句话说,如果您将图表的高度增加了一倍,则为其提供一个新的颜色数组,其中的颜色数为原来的一半。
https://stackoverflow.com/questions/13731752
复制相似问题