Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌图表-负值/正值注释位置_Javascript_Charts_Google Visualization - Fatal编程技术网

Javascript 谷歌图表-负值/正值注释位置

Javascript 谷歌图表-负值/正值注释位置,javascript,charts,google-visualization,Javascript,Charts,Google Visualization,我有下面的柱状图,我想为上面的正值和下面的负值定位注释。怎么做 关于值和注释格式的附加问题-如何实现注释(上下列的值)的格式,如vAxis google.charts.load('current',{callback:drawChart,'packages':['corechart'],'language':'hr'}); 函数绘图图() { var data=new google.visualization.DataTable(); data.addColumn('date','Datum

我有下面的柱状图,我想为上面的正值和下面的负值定位注释。怎么做

关于值和注释格式的附加问题-如何实现注释(上下列的值)的格式,如vAxis

google.charts.load('current',{callback:drawChart,'packages':['corechart'],'language':'hr'});
函数绘图图()
{
var data=new google.visualization.DataTable();
data.addColumn('date','Datum');
data.addColumn('number','Vrijednost');
data.addColumn('number','Pred.prema preth.5 dana');
data.addColumn('number','Pred.prema preth.10 dana');
data.addColumn('number','relationapromjena');
data.addRows([
[新日期('2017-08-03'),12.10260,12.09797,12.148753333,0.3199602122016],
[新日期('2017-08-02'),12.06400,12.16005,12.1761866667,-0.69882870054079],
[新日期('2017-08-01'),12.14890,12.12988,12.1606066667,0.3129386508133],
[新日期('2017-07-31'),12.11100,12.13091,12.14988,-0.001651364026678],
[新日期('2017-07-28'),12.11120,12.1175,12.1160933333,0.11821210392746],
[新日期('2017-07-27'),12.09690,12.10942,12.079293333,0.24113757271416],
[新日期('2017-07-26'),12.06780,12.10184,12.04073333333,0],
[新日期('2017-07-25'),12.06780,12.06525,11.9929866667,0.28753781205331],
[新日期('2017-07-24'),12.03320,12.02595,11.95908,0.18983547592086],
[新日期('2017-07-21'),12.01040,11.95357,11.9320066667,0.41468798073707],
[新日期('2017-07-20'),11.96080,11.9183,11.9194,0.1951832460733],
[新日期('2017-07-19'),11.93750,11.89151,11.91418666667,0.21154604904174],
[新日期('2017-07-18'),11.91230,11.89439,11.9377666667,0.1235543302851],
[新日期('2017-07-17'),11.89760,11.93811,11.9670466667,-0.36595680537295],
[新日期('2017-07-14'),11.94130,11.95136,11.972373333,0.068716427416171],
[新日期('2017-07-13'),11.93310,11.96335,11.9757133333,-0.1848567987152],
[新日期('2017-07-12'),11.95520,11.94968,11.96142,-0.070212979370754],
[新日期('2017-07-11'),11.96360,11.95871,11.9442266667,0.19429834846403],
[新日期('2017-07-10'),11.94040,11.9698,11.93224,0.099761076413629],
[新日期('2017-07-07'),11.92850,11.96977,11.93431333333,-0.13478894228354],
[新日期('2017-07-06'),11.94460,11.93426,11.9310266667,-0.10036297944233],
[新日期('2017-07-05'),11.95660,11.86036,11.91198,0.66342251932174],
[新日期('2017-07-04'),11.87780,11.86771,11.918093333,0.04801724968622],
[新日期('2017-07-03'),11.87210,11.88418,11.9194466667,-0.078273604120727],
[新日期('2017-06-30'),11.88140,11.92094,11.9075066667,-0.076531684958581]
]);
变量ColumnOpt={
身高:300,
标题:“Relatina promjena vrijednosti[%]”,
注释:{textStyle:{fontName:'Tahoma',fontSize:9},
vAxis:{textStyle:{fontName:'Tahoma',fontSize:9},格式:“#.#'%”,
视图窗口:{min:data.getColumnRange(4.min-0.5}},
hAxis:{textStyle:{fontName:'Tahoma',fontSize:9},showTextEvery:5},
图表区:{宽度:“80%”,高度:“80%”,
图例:{位置:'无'},
颜色:[“紫色”]
};
var view2=新的google.visualization.DataView(数据);
view2.setColumns([0,4,{calc:'stringify',sourceColumn:4,类型:'string',角色:'annotation'}]);
var container=document.getElementById('Chart2');
var chart2=新的google.visualization.ColumnChart(容器);
var observer=新的MutationObserver(函数(){
$。每个($('text[text anchor=“start”]”)、函数(索引、标签){
var labelValue=parseFloat($(label.text());
if(labelValue<0&&$(label.attr('font-height')!='bold'){
var bounds=label.getBBox();
var chartLayout=container.getChartLayoutInterface();
$(label.attr('y',chartLayout.getYLocation(labelValue)-bounds.height-8);
}
});
});
observer.observe(容器,{childList:true,子树:true});
图表2.绘制(视图2,ColumnOpt);
}

这里要处理的几个问题

在此图表上,注释具有属性-->
text-anchor=“middle”

与另一个上的
text-anchor=“start”
相比

要格式化批注,请使用数字格式化程序

  var formatAnnotation = new google.visualization.NumberFormat({
    pattern: ColumnOpt.vAxis.format
  });
在视图上使用自定义函数,而不是预定义的
“stringify”
函数

var view2 = new google.visualization.DataView(data);
view2.setColumns([0,4,{
  calc: function (dt, row) {
    return formatAnnotation.formatValue(dt.getValue(row, 4));
  },
  type: 'string',
  role: 'annotation'
}]);
这会导致数字中的逗号出现问题
需要用十进制替换
parseFloat
以处理ok

注释重叠也存在一个问题

但是这个片段应该让你更接近

google.charts.load('current',{callback:drawChart,'packages':['corechart'],'language':'hr'});
函数绘图图()
{
var data=new google.visualization.DataTable();
data.addColumn('date','Datum');
data.addColumn('number','Vrijednost');
data.addColumn('number','Pred.prema preth.5 dana');
data.addColumn('number','Pred.prema preth.10 dana');
data.addColumn('number','relationapromjena');
data.addRows([
[新日期('2017-08-03'),12.10260,12.09797,12.148753333,0.3199602122016],
[新日期('2017-08-02'),12.06400,12.16005,12.1761866667,-0.69882870054079],
[新日期('2017-08-01'),12.14890,12.12988,12.1606066667,0.3129386508133],
[新日期('2017-07-31'),12.11100,12.13091,12.14988,-0.001651364026678],
[新日期('2017-07-28'),12.11120,12.1175,12.1160933333,0.11821210392746],
[新日期('2017-07-27'),12.09690,12.10942,12.079293333,0.24113757271416],
[新日期('2017-07-26'),12.06780,12.10184,12.04073333333,0],
[新日期('2017-07-25'),12.06780,12.06525,11.9929866667,0.28753781205331],
[新日期('2017-07-24'),12.03320,12.02595,11.95908,0.18983547592086],
[新日期('2017-07-21'),12.01040,11.95357,11.9320066667,0.41468798073707],
[新日期('2017-07-20'),11.96080,11.9183,11.9194,0.1951832460733],
[新日期('2017-07-19'),11.93750,11.89151,11.91418666667,0.21154604904174],
[新日期('2017-07-18'),11。