Maybe this is a very bad answer, or simply wrong : But I really dont think that is possible. You want to filter dates based on their month name, but still view the date? However, you can achieve the goal with ControlWrapper holding months - and sort by months based on the date - by adding an extra field :
data.addColumn('string', 'Month');
and format the data like this :
var rows = [];
var months = ["January", "February", "March", "April", "May", "June","July", "August", "September","October", "November", "December" ];
for (var i = 0; i < response.rows.length; i++) {
var month=months[new Date(response.rows[i][3]).getMonth()];
rows.push([parseInt(response.rows[i][0]),
response.rows[i][1],
response.rows[i][3],
month
]);
}
data.addRows(rows);
Cant take a screenshot, the popup hides everytime.
Here is a forked fiddle (think it was your #2 I looked into) -> http://jsfiddle.net/TkV7v/
As you can see, I have tried to hide the extra column by using a DataView
var view = new google.visualization.DataView(data);
view.setColumns([0,1,2,3]);
view.hideColumns([3])
But that doesnt work :( Apparently visualization needs the data to filter on to be visible. Could not find a setColumnWidth
function or anything like that. Perhaps The month-column can be transformed to a { role: "tooltip" }
, havent tried that.
As said above, I do not know how much this answer is worth. Delete it if its useless or anyone else crack the code.