如何设置 googleVis 气泡图的 colorAxis?
How do I set the colorAxis of a googleVis bubble chart?
我尝试调整 GoogleVis 气泡图 example,使其具有基于利润列的气泡的连续色标:
library(googleVis)
Bubble <- gvisBubbleChart(Fruits, idvar="Fruit",
xvar="Sales", yvar="Expenses",
colorvar="Profit",
options=list(
## custom color
## colors = "['red', 'green', 'blue']",
## custom color scale does not work
colorAxis="{colors: ['yellow', 'red']}",
hAxis='{minValue:75, maxValue:125}'))
plot(Bubble)
然而,无论我尝试使用 'colorAxis' 选项,它都不起作用,而我确实遵循 official documentation。这看起来很奇怪,因为当我查看绘图的源代码时,我可以看到设置了选项:
// jsDrawChart
function drawChartBubbleChartID2b6add84971() {
var data = gvisDataBubbleChartID2b6add84971();
var options = {};
options["colorAxis"] = {colors: ['yellow', 'red']};
options["hAxis"] = {minValue:75, maxValue:125};
var chart = new google.visualization.BubbleChart(
document.getElementById('BubbleChartID2b6add84971')
);
chart.draw(data,options);
}
我做错了什么?感谢您的帮助。
更新:
我在 GitHub 上添加了一个 issue 后,在 GitHub (devtools::install_github("mages/googleVis")
) 上,当前开发者版本的问题应该已经解决。事实上,它有效:
问题好像是数据列"Profit":
var datajson = [
["Apples", 98, 78, "20"],
["Oranges", 96, 81, "15"],
["Bananas", 85, 76, "9"]
];
data.addColumn('string','Fruit');
data.addColumn('number','Sales');
data.addColumn('number','Expenses');
data.addColumn('string','Profit');
由于某些原因,我没有看到此列被定义为 string
类型的列。当您将相关行更改为
var datajson = [
["Apples", 98, 78, 20],
["Oranges", 96, 81, 15],
["Bananas", 85, 76, 9]
];
data.addColumn('number','Profit');
渐变色标应用于气泡。
这可能是 googleVis
实现中的错误,因为 Fruits
数据将利润列定义为数字。
我尝试调整 GoogleVis 气泡图 example,使其具有基于利润列的气泡的连续色标:
library(googleVis)
Bubble <- gvisBubbleChart(Fruits, idvar="Fruit",
xvar="Sales", yvar="Expenses",
colorvar="Profit",
options=list(
## custom color
## colors = "['red', 'green', 'blue']",
## custom color scale does not work
colorAxis="{colors: ['yellow', 'red']}",
hAxis='{minValue:75, maxValue:125}'))
plot(Bubble)
然而,无论我尝试使用 'colorAxis' 选项,它都不起作用,而我确实遵循 official documentation。这看起来很奇怪,因为当我查看绘图的源代码时,我可以看到设置了选项:
// jsDrawChart
function drawChartBubbleChartID2b6add84971() {
var data = gvisDataBubbleChartID2b6add84971();
var options = {};
options["colorAxis"] = {colors: ['yellow', 'red']};
options["hAxis"] = {minValue:75, maxValue:125};
var chart = new google.visualization.BubbleChart(
document.getElementById('BubbleChartID2b6add84971')
);
chart.draw(data,options);
}
我做错了什么?感谢您的帮助。
更新:
我在 GitHub 上添加了一个 issue 后,在 GitHub (devtools::install_github("mages/googleVis")
) 上,当前开发者版本的问题应该已经解决。事实上,它有效:
问题好像是数据列"Profit":
var datajson = [
["Apples", 98, 78, "20"],
["Oranges", 96, 81, "15"],
["Bananas", 85, 76, "9"]
];
data.addColumn('string','Fruit');
data.addColumn('number','Sales');
data.addColumn('number','Expenses');
data.addColumn('string','Profit');
由于某些原因,我没有看到此列被定义为 string
类型的列。当您将相关行更改为
var datajson = [
["Apples", 98, 78, 20],
["Oranges", 96, 81, 15],
["Bananas", 85, 76, 9]
];
data.addColumn('number','Profit');
渐变色标应用于气泡。
这可能是 googleVis
实现中的错误,因为 Fruits
数据将利润列定义为数字。