Template:Graph:PageViews
呢個模用到Lua語言: |
主版本響mediawiki Template:Graph:PageViews。請去嗰道改,然後周圍貼上新版。
{{ Graph:PageViews }} 呢版30日數據(如果有嘅話) |
{{ Graph:PageViews | 90 | 頭版 | zh-yue.wikipedia.org }} 粵文維基百科頭版90日數據 |
{{ Graph:PageViews | 180 | _ }} 6個月呢個wiki嘅瀏覽數據 | ||||||
---|---|---|---|---|---|---|---|---|
|
|
|
Inserts a graph with the page views statistics for the past N days of a page.
參數 | 描述 | 類 | 狀態 | |
---|---|---|---|---|
统计天数 | 1 | 無描述
| 數字 | 建議 |
页面标题 | 2 | Title of the page, with namespace, including needed spaces
| 版 | 可選 |
域名 | 3 | 無描述
| 字串 | 可選 |
图标颜色 | color | 無描述
| 字串 | 可選 |
图表比例 | scale | Scaling could be one of these: linear, log, pow, sqrt, quantile, quantize, and threshold
| 字串 | 可選 |
Y轴最大值 | max | This optional value might be useful to align multiple graphs side-by-side
| 數字 | 可選 |
您可以喺元維基搵到更多與呢個項目相關嘅訊息:
上面嘅解係穿透包含咗自Template:Graph:PageViews/doc。 (改 | 史) 編者可以響呢個模嘅沙盤 (開 | 鏡)同埋試例 (開)版度試驗佢。 請加個類到個/doc嘅細版度。 呢個模嘅細版。 |
<graph>
{
//
// ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:PageViews
// Please do not modify it anywhere else, as it may get copied and override your changes.
// Suggestions can be made at https://www.mediawiki.org/wiki/Template_talk:Graph:PageViews
// The graph uses PageViews API https://wikitech.wikimedia.org/wiki/Analytics/PageviewAPI
//
"version": 2,
"width": 400,
"height": 200,
// The data for this graph comes from the PageView API. The request is made for N days back up to now.
"data": [
{
"name": "pageviews",
"url": "wikirest://wikimedia.org/api/rest_v1/metrics/pageviews/per-article/zh-yue.wikipedia.org/all-access/user/Template%3AGraph%3APageViews/daily/2024110700/2024120700",
"format": {
"type": "json",
"property": "items"
},
// The response is parsed here, converting date strings of form "20160223" into date 2016-02-23
"transform": [
{ "type": "formula", "field": "year", "expr": "parseInt(substring(datum.timestamp,0,4))" },
{ "type": "formula", "field": "month", "expr": "parseInt(substring(datum.timestamp,4,6))" },
{ "type": "formula", "field": "day", "expr": "parseInt(substring(datum.timestamp,6,8))" },
{ "type": "formula", "field": "date", "expr": "datetime(datum.year,datum.month-1,datum.day)" }
]
}
],
"scales": [
// The dates are scaled to the "x" axis - the width of the graph
{
"name": "x",
"type": "time",
"range": "width",
"domain": {"data": "pageviews","field": "date"}
},
// The pageviews are scaled to the "y" axis - the height of the graph
// Optional scale parameter can change "linear" to other scales like log
// Optional max parameter can fix the upper bound of the graph
{
"name": "y",
"type": "linear",
"range": "height",
"domain": {"data": "pageviews","field": "views"},
"clamp": true,
"nice": true
}
],
// Simple axis with horizontal grid lines
"axes": [
{"type": "x", "scale": "x", "ticks": 5},
{"type": "y", "scale": "y", "ticks": 5, "grid": true}
],
// The graph is drawn with two elements a thick line at the top, and a semi-transparent area below
"marks": [
{
"type": "line",
"from": {"data": "pageviews"},
"properties": {
"enter": {
"x": {"scale": "x","field": "date"},
"y": {"scale": "y","field": "views"},
"stroke": {"value": "#00f"},
"strokeWidth": {"value": 3},
"interpolate": {"value": "monotone"}
}
}
},
{
"type": "area",
"from": {"data": "pageviews"},
"properties": {
"enter": {
"x": {"scale": "x","field": "date"},
"y": {"scale": "y","value": 0},
"y2": {"scale": "y","field": "views"},
"fill": {"value": "#00f"},
"fillOpacity": {"value": 0.35},
"interpolate": {"value": "monotone"}
}
}
}
]
}
</graph>