将堆积柱形 google 图表转换为瀑布图
Turn a stacked column google chart into a waterfall chart
我一直致力于一个项目,使用 google 图表复制瀑布图。我设法拥有 2 个系列的堆叠柱,其中第一个系列是透明的,因此第二个可见系列似乎是浮动的,就像瀑布图一样。问题是第一个透明系列在鼠标悬停时保持交互并突出显示,并显示标签和注释。你能帮我弄清楚如何停止检测到第一列系列吗?
我发现有人已经完成了这项工作,但他们没有提到这是如何完成的。 http://data-ink.com/?p=612.
这里是代码的数据部分:
var data = google.visualization.arrayToDataTable([
['Genre', 'Label1', { role: 'annotation', role:'style' }, 'Label2', { role: 'annotation', role:'style' } ],
['column1', 5, 'opacity: 0.2', 11, 'opacity: 0.2'],
['column2', 5, 'opacity: 0.2', 12, 'opacity: 0.2'],
['column3', 5, 'opacity: 0.2', 13, 'opacity: 0.2'],
['column4', 5, 'opacity: 0.2', 14, 'opacity: 0.2'],
['column5', 5, 'opacity: 0.2', 15, 'opacity: 0.2'],
['column6', 5, 'opacity: 0.2', 26, 'opacity: 0.2']
]);
这是 R3tep 友情提供的jsFiddle,他回答了我的不透明度问题。请注意,我已经将 3 个系列减少到 2 个。
对所需系列使用选项 enableInteractivity: false
。
series:{0: {enableInteractivity: false}} // Serie 0 is the first serie in your array declaration
并将不透明度设置为零:
var data = google.visualization.arrayToDataTable([
['Genre', 'Label1', {
role: 'annotation',
role: 'style'
}, 'Label2', {
role: 'annotation',
role: 'style'
}],
['column1', 5, 'opacity: 0', 11, 'opacity: 0.2'],
['column2', 5, 'opacity: 0', 12, 'opacity: 0.2'],
['column3', 5, 'opacity: 0', 13, 'opacity: 0.2'],
['column4', 5, 'opacity: 0', 14, 'opacity: 0.2'],
['column5', 5, 'opacity: 0', 15, 'opacity: 0.2'],
['column6', 5, 'opacity: 0', 26, 'opacity: 0.2']
]);
我一直致力于一个项目,使用 google 图表复制瀑布图。我设法拥有 2 个系列的堆叠柱,其中第一个系列是透明的,因此第二个可见系列似乎是浮动的,就像瀑布图一样。问题是第一个透明系列在鼠标悬停时保持交互并突出显示,并显示标签和注释。你能帮我弄清楚如何停止检测到第一列系列吗?
我发现有人已经完成了这项工作,但他们没有提到这是如何完成的。 http://data-ink.com/?p=612.
这里是代码的数据部分:
var data = google.visualization.arrayToDataTable([
['Genre', 'Label1', { role: 'annotation', role:'style' }, 'Label2', { role: 'annotation', role:'style' } ],
['column1', 5, 'opacity: 0.2', 11, 'opacity: 0.2'],
['column2', 5, 'opacity: 0.2', 12, 'opacity: 0.2'],
['column3', 5, 'opacity: 0.2', 13, 'opacity: 0.2'],
['column4', 5, 'opacity: 0.2', 14, 'opacity: 0.2'],
['column5', 5, 'opacity: 0.2', 15, 'opacity: 0.2'],
['column6', 5, 'opacity: 0.2', 26, 'opacity: 0.2']
]);
这是 R3tep 友情提供的jsFiddle,他回答了我的不透明度问题。请注意,我已经将 3 个系列减少到 2 个。
对所需系列使用选项 enableInteractivity: false
。
series:{0: {enableInteractivity: false}} // Serie 0 is the first serie in your array declaration
并将不透明度设置为零:
var data = google.visualization.arrayToDataTable([
['Genre', 'Label1', {
role: 'annotation',
role: 'style'
}, 'Label2', {
role: 'annotation',
role: 'style'
}],
['column1', 5, 'opacity: 0', 11, 'opacity: 0.2'],
['column2', 5, 'opacity: 0', 12, 'opacity: 0.2'],
['column3', 5, 'opacity: 0', 13, 'opacity: 0.2'],
['column4', 5, 'opacity: 0', 14, 'opacity: 0.2'],
['column5', 5, 'opacity: 0', 15, 'opacity: 0.2'],
['column6', 5, 'opacity: 0', 26, 'opacity: 0.2']
]);