Шаблон:График просмотра страниц
Основная версия графика находится на странице Template:Graph:PageViews на MediaWiki. Пожалуйста, вносите все правки там и копируйте их всюду (пока копирование не автоматизируют)
{{ График просмотра страниц }} 30 дней текущей страницы (если существуют данные) |
{{ График просмотра страниц | 90 | Заглавная страница | ru.wikibooks.org }} 90 дней Заглавной страницы в Русском Викиучебнике |
---|---|
{{ График просмотра страниц | 180 | _ }} Ежемесячные посещения текущей вики (последние 6 месяцев) |
{{ График просмотра страниц | 180 | _ | all-projects | granularity = daily }} Ежемесячные посещения всех вики во всем мире (последние 6 месяцев) |
{{ График просмотра страниц | | Заглавная страница | ru.wikibooks.org }} 30 дней Заглавной страницы в Русском Викиучебнике |
{{ График просмотра страниц | | Заглавная страница | ru.wikibooks.org | platform = desktop}} 30 дней Заглавной страницы в Русском Викиучебнике - браузеры ПК |
{{ График просмотра страниц | | Заглавная страница | ru.wikibooks.org | platform = mobile-web}} 30 дней Заглавной страницы в Русском Викиучебнике - мобильные браузеры |
{{ График просмотра страниц | | Заглавная страница | ru.wikibooks.org | platform = mobile-app}} 30 дней Заглавной страницы в Русском Викиучебнике - мобильные приложения |
TemplateData
Inserts a graph with the page views statistics for the past N days of a page.
Параметр | Описание | Тип | Статус | |
---|---|---|---|---|
Number of days back | 1 | Number of days back to show in the chart
| Число | необязательный |
Page Title | 2 | Title of the page, with namespace, including needed spaces. If '_' is given, shows the total for the whole site
| Имя страницы | необязательный |
Domain | 3 | Domain from which to find page views for the given title, if not this wiki. If '_' is given as parameter 2, 'all-projects' can be used here for all wiki sites summary data
| Строковый (без форматирования) | необязательный |
Graph color | color | Shade with which to highlight the data in the chart
| Строковый (без форматирования) | необязательный |
Graph scale | scale | Scaling could be one of these: linear, log, pow, sqrt, quantile, quantize, and threshold
| Строковый (без форматирования) | необязательный |
Maximum Y value axis | max | This optional value might be useful to align multiple graphs side-by-side
| Число | необязательный |
Width | width | Width for the chart in pixels, if different from the default.
| Число | необязательный |
Height | height | Height for the chart in pixels, if different from the default.
| Число | необязательный |
Platform | platform | Computer platform could be one of these: all-access (all platforms together), desktop (regular browsers), mobile-web (mobile browsers), mobile-app (mobile wiki applications)
| Строковый (без форматирования) | необязательный |
Granularity | granularity | If the 2nd parameter is '_' (shows site stats), set data granularity monthly, daily, or hourly
| Строковый (без форматирования) | необязательный |
interpolate | interpolate | Type of line interpolation. See https://github.com/vega/vega/wiki/Marks#line
| Строковый (без форматирования) | необязательный |
<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/ru.wikibooks.org/all-access/user/%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%3A%D0%93%D1%80%D0%B0%D1%84%D0%B8%D0%BA%20%D0%BF%D1%80%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B0%20%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86/daily/2024091000/2024101000",
"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,
"properties": {
"ticks": {"stroke": {"value": "#54595d"} },
"labels": {"fill": {"value": "#54595d"} },
"axis": {"stroke": {"value": "#54595d"}, "strokeWidth": {"value": 2} }
}
},
{
"type": "y",
"scale": "y",
"ticks": 5,
"grid": true,
"properties": {
"ticks": {"stroke": {"value": "#54595d"} },
"labels": {"fill": {"value": "#54595d"} },
"grid": {"stroke": {"value": "#54595d"}, "strokeWidth": {"value": 2} },
"axis": {"stroke": {"value": "#54595d"}, "strokeWidth": {"value": 2} }
}
}
],
// 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": "#36c"},
"strokeWidth": {"value": 3},
"interpolate": {"value": "step-after"}
}
}
},
{
"type": "area",
"from": {"data": "pageviews"},
"properties": {
"enter": {
"x": {"scale": "x","field": "date"},
"y": {"scale": "y","value": 0},
"y2": {"scale": "y","field": "views"},
"fill": {"value": "#36c"},
"fillOpacity": {"value": 0.35},
"interpolate": {"value": "step-after"}
}
}
}
]
}
</graph>