I've been looking for several days. Trying many different solutions.
I need to be able to specify the xAxis as an array of dates that are not always consecutive (thus no pointInterval and no pointStart). Otherwise my data gets way out of hand because I have more than 10 possible series across 100k+ points, with only 2 or 3 series shown at a time. If I have to include dates for each of the points across each of the series that is too much wasted memory. One simple case had over 3.2 million data points with three gaps of time (4 different sections of time based data).
The closest I have found is the Date as a category solution. Where the xAxis has to have her own formatter in order to portray the millisecond timestamps as dates.
This doesn't really solve the problem because I don't want to reinvent the functions that highcharts has for formatting the datetime of the labels based on the zoom level of the graph. And I don't want a single time format for all zoom levels.
So what I need to know is there a way to specify the datetime as an array for the xAxis without the need to add the datetime to every point and not use categories as this doesn't format the date correctly that works with boost.
I played with this fiddle (non-boost):
http://jsfiddle.net/psd3ngsh/13/
xAxis: {
type: "datetime",
categories: xArray,
labels: {
formatter: function () {
return Highcharts.time.dateFormat('%Y-%m-%d %H:%M:%S.%L', new Date(this.value));
}
}
I have a series of events ranging from 1 to 8 hours that are tagged with a name over the last 2 years. Using the templating function I can move display the different events. My problem is that the time range doesn't rescale when i want to display an event that is outside the currently displayed time range. Ideally I would like to dynamically set the URL with the timestamp encoded from the max and min time of the database (influxdb) query. Any ideas on what I can do?
Here is a screenshot of my problem
I'm writing an app to track glucose level for diabetics. They will be checking their glucose level several time per day. Is it possible to format the graph so it shows the date once and then the individual times above the date on the x axis?
Sort of like this:
|8:45|12:15|5:20|
|## 11-1-17 ## |
I can't display it here but the date should appeared centered under the three times
Thanks.
You can label the major tick locations with the date and minor tick locations with the time.
Every example of a time-series graph I've seen for Google Data Studio has a metric plotted per day. Is there any way to configure the granularity of the time axis (hour, month, etc)?
I want to show the count of events per hour throughout one day.
My columns are in bigquery as types datetime:TIMESTAMP and count:INTEGER
This is old, but its high in search results, and I found the correct answer here: https://www.en.advertisercommunity.com/t5/Data-Studio/Is-it-possible-to-aggregate-by-hour/td-p/1104815
Click the pencil next to the datasource, on your timestamp, click on the type column, and change "Date(YYYYMMDD" to another format, such as DATE HOUR("YYYYMMDDHH") to get hourly aggregation on the graphs.
Now, there seems to be a straightforward way:
Assuming that you have a Time Series plot, use Timestamp for your dimension and want to show hourly aggregated values.
Select the dimension's preferences:
Change Type to Date Hour
Edit: Based on new updates to Data Studio, #Brian's answer above is the correct one.
You can create a calculated field with the TODATE funciton. Example formula can be TODATE(source_field, 'SECONDS', '%Y%m%d%H'). Then this field should be marked as Date(YYYYMMDDHH) in the field editing screen.
There is a way to do this. If the data is broken up hour by hour, make the hour column(s) the Time Dimension. If all of the hour data isn't in a single column, you may want to reformat your data (manually or using a data prep source, your choice). Or you can go into the time setting of the field and change it into hours.
I have a set of N values for each day logged from a webserver (N is not always the same each day, but this is not relevant).
I need to show a comparison chart with values from multiple days, eg:
today (16/01/2017)
yeasterday (15/01/2017)
a month ago (15/12/2016)
To do that, I though about something similar to:
the 3) as 'area chart'
the 2) as 'dotted line chart'
the 1) as 'continue line chart'
This is easy, but now I have a problem: if I declare X axis as 'datetime' obviously the 3 chart series are not 'overlapped' because each one represent a different day along datetime axis.
Instead I need them to overlalp, so user can quickly compare values.
Ho can I do that?
Categorized X axis? Multiple X axes
I prefer to handle this with a single datetime axis, using a common pointStart and poiintInterval for all series (set in the plotOptions).
This plots each series on the same date from a technical standpoint, but with some basic formatting accomplishes the goal of viewing each date along the same time axis.
The benefits to this approach over categories and using multiple axes, IMO, are
Makes full use of the datetime axis type features
Does not require any additional overhead for adding more series - this works just as well with 2 or 20 series
Example fiddles:
http://jsfiddle.net/jlbriggs/b3t7ueam/ (two dates)
http://jsfiddle.net/jlbriggs/hbfap864/ (many dates)
Example Output: