aboutsummaryrefslogtreecommitdiff
path: root/doc/plugins/postsparkline.mdwn
blob: d799f0a0c8c5488def524779734230583a01e305 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
[[template id=plugin name=postsparkline author="[[Joey]]"]]
[[tag type/chrome]]

This plugin uses the [[sparkline]] plugin to create a sparkline of
statistics about a set of pages, such as posts to a blog.

# examples

	Post interval: 
	\[[postsparkline pages="blog/* and !*/Discussion" max=100
	formula=interval style=bar barwidth=2 barspacing=1 height=13]]
	
	Posts per month this year: 
	\[[postsparkline pages="blog/* and !*/Discussion" max=12
	formula=permonth style=bar barwidth=2 barspacing=1 height=13]]

# usage

All options aside fron the `pages`, `max`, `formula`, `time`, and `color`
options are passed on to the sparkline plugin.

You don't need to specify any data points (though you can if you want to).
Instead, data points are automatically generated based on the creation
times of pages matched by the specified `pages` [[PageSpec]]. A maximum of
`max` data points will be generated.

The `formula` parameter controls the formula used to generate data points.
Available forumlae:

* `interval` - The height of each point represents how long it has been
  since the previous post.
* `perday` - Each point represents a day; the height represents how
  many posts were made that day.
* `permonth` - Each point represents a month; the height represents how
  many posts were made that month.
* `peryear` - Each point represents a day; the height represents how
  many posts were made that year.

The `time` parameter has a default value of "ctime", since forumae use
the creation times of pages by default. If you instead want
them to use the modification times of pages, set it to "mtime".

To change the color used to draw the sparkline, use the `color` parameter.
For example, "color=red".

# adding formulae

Additional formulae can be added without modifying this plugin by writing
plugins that register functions in the
`IkiWiki::Plugin::postsparkline::formula` namespace. These functions will
receive on input a reference to a hash of parameters, and a sorted list of
pages, and should return a list of data points for the sparkline plugin.