Charts 谷歌图表-悬停栏时显示实际数字
我使用谷歌柱状图的短格式。这种格式工作得很好,为酒吧节省了空间。然而,当用户将鼠标悬停在横杆上时,我喜欢显示实际的数字,如1180,而不是1.2K。当前,当用户将鼠标悬停在工具栏上时,它会显示短格式编号。是否可以在悬停时显示实际值,但保持条形图显示的简短格式 提前感谢, 小提琴:Charts 谷歌图表-悬停栏时显示实际数字,charts,google-visualization,Charts,Google Visualization,我使用谷歌柱状图的短格式。这种格式工作得很好,为酒吧节省了空间。然而,当用户将鼠标悬停在横杆上时,我喜欢显示实际的数字,如1180,而不是1.2K。当前,当用户将鼠标悬停在工具栏上时,它会显示短格式编号。是否可以在悬停时显示实际值,但保持条形图显示的简短格式 提前感谢, 小提琴: load('current',{packages:['corechart','bar']}); google.charts.setOnLoadCallback(drawChart); 函数绘图图(){ 变量数组=[
load('current',{packages:['corechart','bar']});
google.charts.setOnLoadCallback(drawChart);
函数绘图图(){
变量数组=[
[、“今天小时数”、“目标小时数”],
[“标题1”,45534151],
[“标题2”,55606150],
[“标题3”,850,920],
[“标题4”,1050512320]
];
var data=new google.visualization.arrayToDataTable(数组);
var formatter=new google.visualization.NumberFormat({
//前缀:“$”,
图案:“短”
});
格式化程序。格式化(数据,1);
格式(数据,2);
var view=newgoogle.visualization.DataView(数据);
view.setColumns([0,1,1{
计算:“字符串化”,
资料来源专栏:1,
键入:“字符串”,
角色:“注释”
},
2, {
计算:mystringy.bind(未定义,2),
资料来源专栏:2,
键入:“字符串”,
角色:“注释”
},
]);
变量选项={
言辞:{
格式:'短',
标题:“迄今为止的进展”,
//viewWindowMode:“显式”,
//视图窗口:{
//最高:50,
//最低:0
//},
网格线:{
计数:8
}
},
图表区:{
右:0,,
宽度:“80%”,
身高:“80%”
},
酒吧:{
groupWidth:70//设置每个条的宽度
},
注释:{//设置条形图系列的字体样式格式。。。
文本样式:{
fontName:‘时代罗马’,
尺寸:10,
}
},
宽度:500,
身高:500,
酒吧:“垂直”,
};
var chart=new google.visualization.ColumnChart(document.getElementById('classic_div'));
//图表绘制(数据、选项);
图表绘制(视图、选项);
}
函数myString(列、数据、行){
返回“”+数据。getFormattedValue(行、列);
}
默认情况下,工具提示将显示格式化的值因此,使用悬停时所需的格式格式化数据表列 然后对注释使用calc函数,并使用其他格式设置程序显示短格式 请参阅以下工作片段
google.charts.load('current',{packages:['corechart','bar']});
google.charts.setOnLoadCallback(drawChart);
函数绘图图(){
变量数组=[
[、“今天小时数”、“目标小时数”],
[“标题1”,45534151],
[“标题2”,55606150],
[“标题3”,850,920],
[“标题4”,1050512320]
];
var data=new google.visualization.arrayToDataTable(数组);
var formatTooltip=new google.visualization.NumberFormat({
模式:“#,##0”
});
formatTooltip.format(数据,1);
formatTooltip.format(数据,2);
var formatShort=new google.visualization.NumberFormat({
图案:“短”
});
var view=newgoogle.visualization.DataView(数据);
view.setColumns([0,1,1{
计算:函数(dt,行){
返回formatShort.formatValue(dt.getValue(第1行));
},
键入:“字符串”,
角色:“注释”
},
2, {
计算:函数(dt,行){
返回formatShort.formatValue(dt.getValue(第2行));
},
键入:“字符串”,
角色:“注释”
},
]);
变量选项={
言辞:{
格式:'短',
标题:“迄今为止的进展”,
//viewWindowMode:“显式”,
//视图窗口:{
//最高:50,
//最低:0
//},
网格线:{
计数:8
}
},
图表区:{
右:0,,
宽度:“80%”,
身高:“80%”
},
酒吧:{
groupWidth:70//设置每个条的宽度
},
注释:{//设置条形图系列的字体样式格式。。。
文本样式:{
fontName:‘时代罗马’,
尺寸:10,
}
},
宽度:500,
身高:500,
酒吧:“垂直”,
};
var chart=new google.visualization.ColumnChart(document.getElementById('classic_div'));
图表绘制(视图、选项);
}
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
google.charts.load('current', {packages: ['corechart', 'bar']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var array = [
["", "Today Hrs", "Goal Hrs"],
["Title1", 4553, 4151],
["Title2", 5560, 6150],
["Title3", 850, 920],
["Title4", 10505, 12320]
];
var data = new google.visualization.arrayToDataTable(array);
var formatter = new google.visualization.NumberFormat({
//prefix: '$',
pattern : 'short'
});
formatter.format(data, 1);
formatter.format(data, 2);
var view = new google.visualization.DataView(data);
view.setColumns([0, 1, {
calc : "stringify",
sourceColumn : 1,
type : "string",
role : "annotation"
},
2, {
calc : mystringy.bind(undefined, 2),
sourceColumn : 2,
type : "string",
role : "annotation"
},
]);
var options = {
vAxis : {
format : 'short',
title : 'Progress To-Date',
//viewWindowMode:'explicit',
//viewWindow: {
// max: 50,
// min:0
//},
gridlines : {
count : 8
}
},
chartArea : {
right : 0,
width : "80%",
height : "80%"
},
bar : {
groupWidth : 70 // Set the width for each bar
},
annotations : { // Setting for font style format of the bar series...
textStyle : {
fontName : 'Times-Roman',
fontSize : 10,
}
},
width : 500,
height : 500,
bars : 'vertical',
};
var chart = new google.visualization.ColumnChart(document.getElementById('classic_div'));
//chart.draw(data, options);
chart.draw(view, options);
}
function mystringy(column, data, row) {
return ' ' + data.getFormattedValue(row, column);
}