Skip to content

Instantly share code, notes, and snippets.

@bdwilson
Created November 13, 2019 00:53
Show Gist options
  • Save bdwilson/a738008b3764f779cffc90adb634fffe to your computer and use it in GitHub Desktop.
Save bdwilson/a738008b3764f779cffc90adb634fffe to your computer and use it in GitHub Desktop.
belchertown 1.01 graphs config for weewx
# This is the Belchertown skin charting system which utilizes Highcharts to display the chart data.
#
# PLEASE READ THE CHARTS WIKI! A lot of information is there and it will help you!
# It is located here: https://github.com/poblabs/weewx-belchertown/wiki/Belchertown-Charts-Documentation
#
# Caution!
# The more charts you have, the slower things can become. This is especially true at the YEAR level. These are interactive charts which have to build plot points from the database on every archive interval. This could result in large file sizes to generate, and for your website visitors to download. You're welcome to customize as many charts as you want, but be warned things could slow down if you do too much!
# The defaults in this skin have proven to be a good baseline for the number of charts and options without overwhelming your system.
#
# Overview of options:
# A timespan refers to "day", "week", "month" or "year".
# The first configuration item is the graph group, such as [day], [week], [month], [year] sections.
# The charts are defined under the graph group and can be renamed and reorganized. They will display on your website in the order they appear here.
# Under the chart are the observation names from the WeeWX database. Any item within your database "archive type" can be charted. For a list of "archive types" refer to this chart. http://weewx.com/docs/customizing.htm#archive_types
# Each observation can be customized with built-in Highcharts "series" options. Popular ones are color, name and zIndex. For a list of Highcharts Series options refer to https://api.highcharts.com/highcharts/series
#
# If a custom option broke your charts:
# Undo your change and run wee_reports. You do not need to restart weewx if you make a graphs.conf change.
# If that doesn't work, undo ALL changes and go back to the default graphs.conf.example configuration.
# There is no guarantee that every customization option will work.
#
# Detailed settings overview can be found in the wiki under Detailed Configuration Settings Overview
#
###############################################################################
# Global Chart Defaults
# These are fallback options that charts will use if an option is not defined.
aggregate_type = None
time_length = 90000 # Last 25 hours
type = line
colors = "#7cb5ec, #b2df8a, #f7a35c, #8c6bb1, #dd3497, #e4d354, #268bd2, #f45b5b, #6a3d9a, #33a02c"
tooltip_date_format = "LLL"
[homepage]
# Chart Timespan Defaults
title = "Homepage"
show_button = true
button_text = "Homepage"
time_length = today
tooltip_date_format = "LLL"
gapsize = 300000 # This should be your archive_interval from weewx.conf multiplied by 1000 to get milliseconds. Standard is 5 minutes
connectNulls = true
[[chart1]]
title = Outdoor
[[[outTemp]]]
zIndex = 1
name = "Temperature"
[[[windchill]]]
[[[heatindex]]]
color = "#f7a35c"
[[[dewpoint]]]
color = purple
[[[outHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[[chart5]]
title = Pool
[[[extraTemp1]]]
[[[extraTemp2]]]
name = "Pool Deck"
color = "#f7a35c"
[[chart2]]
# The combined Wind Chart works best in this configuration
title = Wind Speed and Direction
yaxis_min = 0
[[[windDir]]]
zIndex = 1
yAxis = 1
yaxis_max = 360
lineWidth = 0
[[[[marker]]]]
enabled = true
[[[[states]]]]
[[[[[hover]]]]]
lineWidthPlus = 0
[[[windGust]]]
[[[windSpeed]]]
zIndex = 2
[[chart3]]
title = Rain
[[[rainRate]]]
yAxis = 1
[[[rainTotal]]]
name = Rain Total
[[chart4]]
title = Barometer
type = spline
[[[barometer]]]
color = "#BECC00"
yAxis_tickInterval = 0.01
[[chart6]]
title = Indoor
[[[inTemp]]]
zIndex = 1
name = "Indoor Temperature"
[[[inHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[[avgclimatethisyear]]
title = "Average Climatological Values for This Year"
type = spline
time_length = year
aggregate_type = max
aggregate_interval = 86400 # 1 day
gapsize = 86400000
xaxis_groupby = month
xaxis_categories = 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
[[[outTemp]]]
zIndex = 2
name = Max Temperature
color = red
[[[outTemp_min]]]
name = Min Temperature
observation_type = outTemp
aggregate_type = min
zIndex = 2
[[[rainTotal]]]
name = Rain Total
type = column
yAxis = 1
zIndex = 0
color = "#268bd2"
[day]
# Chart Timespan Defaults
title = "Today"
show_button = true
button_text = "Day"
time_length = today
tooltip_date_format = "LLL"
gapsize = 300000 # This should be your archive_interval from weewx.conf multiplied by 1000 to get milliseconds. Standard is 5 minutes
connectNulls = true
[[chart1]]
title = Outdoor
[[[outTemp]]]
zIndex = 1
name = "Temperature"
[[[windchill]]]
[[[heatindex]]]
color = "#f7a35c"
[[[dewpoint]]]
color = purple
[[[outHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[[chart5]]
title = Pool
[[[extraTemp1]]]
[[[extraTemp2]]]
name = "Pool Deck"
color = "#f7a35c"
[[chart2]]
# The combined Wind Chart works best in this configuration
title = Wind Speed and Direction
yaxis_min = 0
[[[windDir]]]
zIndex = 1
yAxis = 1
yaxis_max = 360
lineWidth = 0
[[[[marker]]]]
enabled = true
[[[[states]]]]
[[[[[hover]]]]]
lineWidthPlus = 0
[[[windGust]]]
[[[windSpeed]]]
zIndex = 2
[[chart3]]
title = Rain
[[[rainRate]]]
yAxis = 1
[[[rainTotal]]]
name = Rain Total
[[chart4]]
title = Barometer
type = spline
[[[barometer]]]
color = "#BECC00"
[[chart6]]
title = Indoor
[[[inTemp]]]
zIndex = 1
name = "Indoor Temperature"
[[[inHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[yesterday]
# Chart Timespan Defaults
title = Yesterday
show_button = true
button_text = Yesterday
time_length = days_ago
time_ago = 1
gapsize = 300000
connectNulls = true
[[chart1]]
title = Outdoor
[[[outTemp]]]
zIndex = 1
name = "Temperature"
[[[windchill]]]
[[[heatindex]]]
color = "#f7a35c"
[[[dewpoint]]]
color = purple
[[[outHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[[chart5]]
title = Pool
[[[extraTemp1]]]
[[[extraTemp2]]]
name = "Pool Deck"
color = "#f7a35c"
[[chart2]]
# The combined Wind Chart works best in this configuration
title = Wind Speed and Direction
yaxis_min = 0
[[[windDir]]]
zIndex = 1
yAxis = 1
yaxis_max = 360
lineWidth = 0
[[[[marker]]]]
enabled = true
[[[[states]]]]
[[[[[hover]]]]]
lineWidthPlus = 0
[[[windGust]]]
[[[windSpeed]]]
zIndex = 2
[[chart3]]
title = Rain
[[[rainRate]]]
yAxis = 1
[[[rainTotal]]]
name = Rain Total
[[chart4]]
title = Barometer
type = spline
[[[barometer]]]
color = "#BECC00"
[[chart6]]
title = Indoor
[[[inTemp]]]
zIndex = 1
name = "Indoor Temperature"
[[[inHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[week]
# Chart Timespan Defaults
title = "This Week"
show_button = true
button_text = "Week"
time_length = 604800 # Last 7 days
tooltip_date_format = "LLLL"
aggregate_type = max
aggregate_interval = 3600 # 1 hour
gapsize = 3600000 # 1 hour in milliseconds
connectNulls = true
[[chart1]]
title = Outdoor
[[[outTemp]]]
zIndex = 1
name = "Temperature"
[[[windchill]]]
[[[heatindex]]]
color = "#f7a35c"
[[[dewpoint]]]
color = purple
[[[outHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[[chart5]]
title = Pool
[[[extraTemp1]]]
[[[extraTemp2]]]
name = "Pool Deck"
color = "#f7a35c"
[[chart2]]
# The combined Wind Chart works best in this configuration
title = Wind Speed and Direction
yaxis_min = 0
[[[windDir]]]
zIndex = 1
yAxis = 1
yaxis_max = 360
lineWidth = 0
# Here we can override the timespan default aggregate type with our own specific to this chart
aggregate_type = avg
[[[[marker]]]]
enabled = true
[[[[states]]]]
[[[[[hover]]]]]
lineWidthPlus = 0
[[[windGust]]]
[[[windSpeed]]]
zIndex = 2
[[chart3]]
title = Rain
[[[rainRate]]]
yAxis = 1
[[[rainTotal]]]
name = Rain Total
[[chart4]]
title = Barometer
aggregate_type = avg
[[[barometer]]]
color = "#BECC00"
[[chart6]]
title = Indoor
[[[inTemp]]]
zIndex = 1
name = "Indoor Temperature"
[[[inHumidity]]]
yAxis = 1
yaxis_min = 1
yaxis_max = 99
color = "#91e8e1"
[month]
# Chart Timespan Defaults
title = "This Month"
show_button = true
button_text = "Month"
type = spline
time_length = 2592000 # Last 30 days
tooltip_date_format = "dddd LL"
aggregate_type = max
aggregate_interval = 86400 # 1 day
gapsize = 86400000 # 1 day in milliseconds
connectNulls = true
[[chart1]]
title = Temperature
[[[outTemp]]]
zIndex = 1
name = Max Temperature
color = red
[[[outTemp_min]]]
name = Min Temperature
observation_type = outTemp
aggregate_type = min
color = "#7cb5ec"
[[chart5]]
title = Pool
[[[extraTemp1]]]
color = "red"
zIndex = 1
name = Max Pool Temp
[[[extraTemp1_min]]]
name = Min Pool Temp
observation_type = extraTemp1
aggregate_type = min
color = "#7cb5ec"
[[chart2]]
# The combined Wind Chart works best in this configuration
title = Wind Speed and Direction
yaxis_min = 0
[[[windDir]]]
zIndex = 1
yAxis = 1
yaxis_max = 360
lineWidth = 0
# Here we can override the timespan default aggregate type with our own specific to this chart
aggregate_type = avg
[[[[marker]]]]
enabled = true
[[[[states]]]]
[[[[[hover]]]]]
lineWidthPlus = 0
[[[windGust]]]
[[[windSpeed]]]
zIndex = 2
[[chart3]]
title = Rain
type = line
[[[rainRate]]]
yAxis = 1
[[[rainTotal]]]
name = Rain Total
[[chart4]]
title = Barometer
aggregate_type = avg
[[[barometer]]]
color = "#BECC00"
[year]
# Chart Timespan Defaults
title = "This Year"
show_button = true
button_text = "Year"
type = spline
time_length = year
tooltip_date_format = "dddd LL"
aggregate_type = max
aggregate_interval = 86400 # 1 day
gapsize = 86400000 # 1 day in milliseconds
connectNulls = true
[[chart1]]
title = Temperature
[[[outTemp]]]
zIndex = 1
name = Max Temperature
color = red
[[[outTemp_min]]]
name = Min Temperature
observation_type = outTemp
aggregate_type = min
color = "#7cb5ec"
[[chart5]]
title = Pool
[[[extraTemp1]]]
color = "red"
zIndex = 1
name = Max Pool Temp
[[[extraTemp1_min]]]
name = Min Pool Temp
observation_type = extraTemp1
aggregate_type = min
[[chart2]]
# The combined Wind Chart works best in this configuration
title = Wind Speed and Direction
yaxis_min = 0
[[[windDir]]]
zIndex = 1
yAxis = 1
yaxis_max = 360
lineWidth = 0
# Here we can override the timespan default aggregate type with our own specific to this chart
aggregate_type = avg
[[[[marker]]]]
enabled = true
[[[[states]]]]
[[[[[hover]]]]]
lineWidthPlus = 0
[[[windGust]]]
[[[windSpeed]]]
zIndex = 2
[[chart3]]
title = Rain
type = line
[[[rainRate]]]
yAxis = 1
[[[rainTotal]]]
name = Rain Total
[[chart4]]
title = Barometer
aggregate_type = avg
[[[barometer]]]
color = "#BECC00"
[[avgclimatethisyear]]
title = "Average Climatological Values for This Year"
type = spline
time_length = year
aggregate_type = max
aggregate_interval = 86400 # 1 day
gapsize = 86400000
xaxis_groupby = month
xaxis_categories = 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
[[[outTemp]]]
zIndex = 2
name = Max Temperature
color = red
[[[outTemp_min]]]
name = Min Temperature
observation_type = outTemp
aggregate_type = min
zIndex = 2
[[[rainTotal]]]
name = Rain Total
type = column
yAxis = 1
zIndex = 0
color = "#268bd2"
[2018climate]
title = "Average Climatological Values for 2018"
show_button = true
button_text = 2018 Climate
type = spline
time_length = year_specific
year_specific = 2018
aggregate_type = max
aggregate_interval = 86400 # 1 day
gapsize = 86400000
xaxis_groupby = month
xaxis_categories = 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
[[chart1]]
title = "Average Climatological Values for 2018"
[[[outTemp]]]
zIndex = 2
name = Max Temperature
color = "#fc0404"
[[[[marker]]]]
enabled = true
radius = 4
[[[outTemp_min]]]
name = Min Temperature
observation_type = outTemp
aggregate_type = min
zIndex = 2
color = "#173c6a"
[[[[marker]]]]
enabled = true
radius = 4
[[[rainTotal]]]
name = Rain Total
type = column
yAxis = 1
zIndex = 0
color = "#438bd6"
[raintotals]
title = Rain Totals by Month
show_button = true
button_text = Rain Totals
type = column
time_length = all
aggregate_type = max
aggregate_interval = 86400 # 1 day
[[rainmonthtotals]]
title = Historical Rain Totals By Month
subtitle = Rain Totals for All Months for All Time
xaxis_groupby = month
xaxis_categories = 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
[[[rainTotal]]]
name = Rain Total
[[rainyeartotals]]
title = Historical Rain Totals By Year
xaxis_groupby = year
[[[rainTotal]]]
name = Rain Total
[[rain2018totals]]
title = Rain Totals for 2018
xaxis_groupby = month
xaxis_categories = 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
time_length = year_specific
year_specific = 2018
[[[rainTotal]]]
name = Rain Total
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment