Extension:Chart/Project/bg
Chart
Сигурен и разширяем инструмент за визуализация на данни
Category:WMF Projects/bg
|
Между 2015 и 2023 г. редакторите можеха да използват разширението Graph, за да визуализират данни в проектите на Уикимедия. Стотици хиляди статии в Уикипедия съдържаха тези графики, които допринасяха за обогатяването на предимно текстовите съдържания в уикитата. През 2023 г. разширението беше деактивирано от съображения за сигурност. Това остави редакторите разочаровани, тъй като читателите вече нямаха достъп до графиките, в които те бяха вложили значително време и усилия.
Фондация Уикимедия обсъди бъдещето на графиките с членове на общността и този проект е резултат от тези дискусии. В момента изграждаме нов, сигурен инструмент, който наричаме Chart, като наследник на разширението Graph. Той ще обслужва по-голямата част от случаите на обикновена визуализация на данни в статиите от Уикипедия. Новият инструмент ще бъде разработен по такъв начин, че в бъдеще да улесни добавянето на поддръжка за повече сценарии за използване, ако Фондацията или програмистите от общността решат да го направят. Ще знаем, че сме постигнали успех, когато редакторите започнат да преобразуват старите графики, използвайки новия инструмент.
В годишния план за 2024 – 2025 г. проектът Charts е записан като ключовия резултат в Wiki Experiences 3.3.
Хронология на внедряването
Разширението ще бъде внедрявано в уикитата поетапно. То вече е налично в избран списък с пилотни уикита. Фокусът за следващата вълна на внедряване ще бъде върху останалите Уикипедии. Разгръщането ще започне с повечето Уикипедии, след което ще продължи към тези, които са използвали Graph интензивно, и ще завърши с някои от най-големите. Тези дати могат да се променят в процеса на проследяване на проблемите и наблюдение на работата на системата по време на разгръщането.
Фаза | Уики | Дати | Състояние |
---|---|---|---|
Pilot |
|
4 Dec 2024 | ![]() |
Phase 1 | All Wikipedias except those listed in Phases 2 & 3 | 6–8 May 2025 | ![]() |
Phase 2 |
|
13–15 May 2025 | ![]() |
Phase 3 |
|
20–22 May 2025 | ![]() |
Phase 4 | All other non-Wikipedia wikis hosted by WMF | 27–29 May 2025 | ![]() |
Стратегия
- Аудитория. Ръководим се от нуждите на читателите на Уикипедия. Ще се съсредоточим върху най-честите случаи на използване на визуализация на данни за подобряване на енциклопедичното съдържание. Това означава, че употреби извън статии, като например за PageViews, не са приоритет в момента. Въпреки че, основният фокус ще бъде върху статиите в Уикипедия, графиките няма да бъдат ограничени до страници в основното именно пространство, а ще бъдат достъпни в други уикита извън Уикипедия.
- Леснота на използване. Искаме да улесним всеки редактор да може интуитивно да създава графики. Преди беше сравнително трудно да се добавят и редактират графики. Редакторите трябваше да се чувстват уверени при работа с Vega — основният софтуер, управляващ графиките. Ето защо повечето графики бяха създавани чрез шаблони, съдържащи предварително дефиниран Vega код. Шаблоните са по-удобни за потребителите, но не могат лесно да се използват в различни уикита. Този път различните типове графики ще бъдат дефинирани от инструмента и ще бъдат достъпни във всички уикита. Редакторите ще могат да добавят графики, използвайки познат уиукитекст формат, без да се изискват техничеси познания за базовия софтуер. Тези промени ще намалят необходимостта от това да се разчита на шаблони. Също така ще позволят обновяване на основната библиотека, без да се засягат съществуващите графики.
- Архитектура. Графиките ще се визуализират (преобразуват от код в графично съдържание) на сървърите на Фондация Уикимедия чрез библиотека с отворен код за визуализация на данни, генерирани от зададени източници. По-конкретно:
- Чрез обработка на графиките на нашите сървъри, страниците ще се зареждат по-бързо. По този начин се избягват и проблемите със сигурността от предишното разширение. Това ще направи графиките достъпни и в мобилните приложения, при експортиране, както и в други случаи на повторна употреба и офлайн в режим.
- За представяне на данни графиките ще се създават чрез библиотека с отворен код. Библиотеката трябва да покрива изисквания като: поддръжка на много езици, елементи на интерактивност, настройка на цветовата гама и други.
- В началния етап ще има единствен източник на данни за графики: страници в пространството за данни на Общомедия. Това ще улесни повторното използване на данни между различни графики, като ще избегне претрупването, свързано с вграждането на данни директно в уикитекста. Системата ще бъде проектирана и с възможност за добавяне на допълнителни източници на данни в бъдеще.
- Поддръжка за редакторите. Този проект ще успее само, ако редакторите преобразуват съществуващия графичен код в диаграми и започнат да създават нови диаграми. Ще намерим начини да подпомогнем редакторите при преобразуването на съществуващи графики чрез автоматизирани и ръчни процеси. Също така ще търсим варианти за запазване на графики, които е малко вероятно да бъдат преобразувани в диаграми. Това може да означава замяната им със статични изображения или прехвърляне на употребата им към други инструменти.
Актуализации
юни 2025: Deployment to all wikis complete and Lua transforms now available
The Chart extension is now available on all Wikimedia wikis! Thanks to everyone who has been actively testing it out and suggesting further improvements. We encourage you to continue reporting any ideas you have or issues you encounter on the talk page or at phab:tag/charts.
Data filtering/transformations
It is now possible to use Lua modules to filter and transform tabular data for use in charts on testwiki and testcommons. This can be used for things like selecting a subset of rows or columns from the source data, converting between units, statistical processing, and many other useful transformations. More information on how to use transforms is available at Extension:Chart/Transforms , with an announcement to follow once it's available for use on Commons and other wikis.
What's next
As we enter the final month of the project, our top priority will be addressing any high priority bugs discovered now that charts are widely available. Since the task force working on the project is temporary, we’ll also be transitioning our focus to ensuring a smooth ownership handoff of the extension to the team who will be responsible for maintaining it going forward. In the next update, we’ll provide more details on what to expect for future development and how you can contribute.
Екип
- Chris Ciufo
Product Manager - Seddon
Engineering Manager - Roan Kattouw
Tech Lead - Jon Robson
Tech Lead - Brooke Vibber
Engineer - Katie Filbert
Engineer - Chris Danis
Site Reliability Engineer - Derek Torsani
Designer - Luca Martinelli
Movement Communications
ЧЗВ
What is the timeline of the project?
The Chart extension is now available on all Wikimedia wikis. This project is part of the FY24-25 annual plan and will conclude at the end of June 2025.
Which library will be used to render charts?
The Chart extension currently uses the Apache eCharts library. However, if there are unresolvable issues with eCharts, there is the possibility of switching to Vega (the library previously used for the Graphs extension). There is also the possibility of using eCharts for most chart types, but using a different library for certain specific chart types if it turns out to be much better than eCharts.
For details on why eCharts was chosen, and why Vega is considered the only reasonable alternative, see T368336#9971574.
What types of charts will be supported?
There will initially be a limited set of supported chart types: line, area, bar, and pie charts. The latest documentation is available on Extension:Chart page.
Where will chart definitions be stored? Where do I go if I want to edit a particular chart?
Chart definitions will live on their own .chart
pages on Commons, under the Data:
namespace.
Charts will be treated as a standalone content type, rather than just as part of an article.
It will be easy to reuse the same chart across wikis, and beyond Wikimedia platforms by making them available as links.
Editors who want to embed charts in an article will be able to do so with a short piece of wikitext, similar to including an image from Commons, without needing to interact with complex templates.
One weakness of requiring that the data come from Commons tabular data is that data sourcing flows such as from MediaWiki APIs or Wikidata Query Service are not handled. While those sources are not the focus for this project, this project aims to design the extension in a way that they can be supported in the future.
How can volunteers add more chart types?
Once the initial infrastructure exists to create charts, technical volunteers will be welcome to contribute more chart types. In the meantime, you are encouraged to tell the developers what you think – which types of charts are most important to add next.
What will happen with the existing graphs?
For now, the existing graphs will remain in their current state. Some wikis have chosen to hide graphs entirely while others render a message explaining that graphs are disabled. Once it's possible to create charts that can replace graph uses, Chart extension developers will work with volunteers to start converting them so that readers can start to see them again.
It is unlikely that all graphs will be able to be converted to charts. For graphs that cannot be converted, it may be more beneficial to either: find an alternative tool to recreate the graph, convert the graph to a static image, or remove the graph altogether.
How to produce the charts efficiently?
There are several conceivable methods to semi-automatically produce and edit the charts and their tabular data:
- The script graphDataImport can be used in the web browser to extract data from existing graph wikicode, and convert it to a .tab page, and a .chart definition page.
- Generative AI can be prompted to extract data from existing graph wikicode and tables, and convert it to .tab and .chart pages and generate new wikicode, according to given specifications. It can also provide translation of titles, and be utilized to extend and update the .tab page with new data.
- The gadget TabularImportExport can convert Excel and .csv files to and from the .tab pages. You can activate it via your Commons preferences.
- The JSON "edit as table" user interface (part of the Jsonconfig extension) is available from the .tab edit page.
- Some bots potentially can periodically import statistics from the web, or from existing Wikipedia graphs, to .tab or .chart pages, upon request. Such bots include GraphBot (which can import existing {{Graph:chart }} wikicode in English Wikipedia), DPLA bot and SLiuBot.
What templates and modules are available?
It should be possible to use extension:chart without a multitude of local templates and modules. However, here are some templates and modules that are related to this extension: