任何人都知道如何使用谷歌图表 API 使 x 轴标签垂直?
我需要在一个小图表中放置很多标签。
谢谢
添加带有 slantedtextangle:90 度的参数选项以垂直显示标签
var options ={ hAxis: {title: "Years" , direction:-1, slantedText:true, slantedTextAngle:90 }}
这是一个旧线程。但我自己正在寻找这个并遇到了这个......
https://developers.google.com/chart/interactive/docs/gallery/areachart#Configuration_Options
查找:hAxis.slantedTextAngle 和 hAxis.slantedText。将您的角度设置为 90 以进行垂直显示(或任何介于两者之间的倾斜显示)。
现在是可能的
var options = {
title: "Test",
hAxis: {
direction:-1,
slantedText:true,
slantedTextAngle:90 // here you can even use 180
}
};
对角线文本在这里。这是我的做法,希望对他们有所帮助。
https://jsfiddle.net/8tvm9qk5/
编码:
<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(drawStacked);
function drawStacked() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Departamentos');
data.addColumn('number', 'Entregados');
data.addColumn('number', 'En Stock');
data.addRows([
['abdasdasa', 925, 786],
['bbdasdas', 652, 156],
['cbdasdas', 300, 200],
['ddasdasb', 925, 786],
['edasdb', 652, 156],
['fasdasb', 300, 200],
['gdasdasdb', 925, 786],
['abdasdasa', 925, 786],
['bbdasdas', 652, 156],
['cbdasdas', 300, 200],
['ddasdasb', 925, 786],
['edasdb', 652, 156],
['fasdasb', 300, 200],
['gdasdasdb', 925, 786]
]);
var options = {
title: 'Motivation and Energy Level Throughout the Day',
isStacked: true,
height:600,
chartArea: {
height:300,
top:100,
},
hAxis: {
title: 'Departamentos',
titleTextStyle: {
color: '#FF0000',
},
slantedText:true,
slantedTextAngle:45,
},
vAxis: {
title: 'Kits'
}
};
var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
您可以“解决”此问题的另一种可能方法是添加 x 轴:
chxt=x,y
可以改为:
chxt=x,y,x
(确保您对原始 x 轴所做的任何事情都应用了相同的应用)然后在一个轴上每隔一个设置标签,并在另一个 x 轴上每隔一个偏移设置一个(或每隔三分之一,具体取决于标签的长度)。
chx1=0:|Alpha||Gamma||Epsilon||Eta|2:||Beta||Delta||Zeta
注意这两个 || 之间的空标签。这样,在您的图表上,标签会关闭轴,并且您有更多空间:
Alpha Gamma Epsilon Eta
Beta Delta Zeta
我还没有找到旋转轴的方法,但是,我所做的是缩短标签,然后创建一个图例来解释标签实际代表的内容。
单击此处获取示例 Google 图表。
是的!
将 hAxis.slantedText 设置为 true,然后设置 hAxis.slantedTextAngle=90。像这样...
var ac = new google.visualization.ComboChart(document.getElementById('visualization'));
ac.draw(data, {
title : 'Equipment Performance Chart',
isStacked:true,
vAxis: {
viewWindowMode: 'explicit',
viewWindow: {
max: 100
},
title: "Percentage"
},
hAxis: {
title: "Area",
slantedText:true,
slantedTextAngle:90
},
seriesType: "bars",
});
诀窍在于 chartArea.height = 300 和 chartArea.top = 100, height:600
var options = {
title: 'Motivation and Energy Level Throughout the Day',
isStacked: true,
height:600,
chartArea: {
height:300,
top:100,
},
hAxis: {
title: 'Departamentos',
titleTextStyle: {
color: '#FF0000',
},
slantedText:true,
slantedTextAngle:45,
},
vAxis: {
title: 'Kits'
}
};
API 无论如何都没有提供获取垂直 x 轴标签(除非我错过了它,因为我也需要它)我们所做的是数据点标签和常规 x 轴标签的组合 - 不完美但有效
如果您需要更多控制权,可以尝试类似 Dundas 图表