![](/img/trans.png)
[英]Google Visualization API: How to format numeric axis labels to time duration?
[英]How do I format the horizontal axis labels on a line chart in the Google Visualization API?
我正在嘗試使用DataTable類中的setFormattedValue()函數來修改折線圖上水平軸上標簽的外觀,但是這些值未格式化。 標簽保留在由setValue()創建的默認值中。
例如,以下代碼不會在軸上產生00:36:45,而只會產生2205。
var table = new google.visualization.DataTable();
table.addRows(1);
table.addColumn('number', 'time');
table.addColumn('number', 'altitude');
table.setValue(0, 0, 2205);
table.setFormattedValue(0, 0, '00:36:45');
table.setValue(0, 1, 35);
var chart = new google.visualization.LineChart($('chartdiv'));
chart.draw(table);
我不明白我在做什么錯。 setFormattedValue()是否不應該將標簽顯示為00:36:45而不是2205?
如果這不是更改軸標簽外觀的正確方法,那么應該怎么做? 我不能將列類型更改為字符串,因為繪制的線基於數字x / y坐標。
部分解決方案:
替換chart.draw(table);
與:
chart.draw(table, {
hAxis: {
ticks: [
{v:2205, f:'00:36:45'},
{v:35, f:35}
]
}
});
ticks
允許您在軸上映射任何值及其表示形式,但我認為您必須列出所需的所有標簽的值。 (但這可以通過自定義腳本自動執行)
您說不能將列類型更改為字符串,但是可以將其更改為日期嗎? 該軸顯示一個數字,因為您已將兩列都聲明為數字類型。
我看不到00:36:45和2205之間的關系。2205是您當時獲得的值嗎? 如果您在折線圖中繪制了更多點,則可以檢查其標簽是否為您設置的格式化值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.