Красивые и полнофункциональные диаграммы AmCharts в 1С на основе HTML и JavaScript, полностью offline, все виды, версия 3.2.0

Публикация № 225601

Управление - Не имеет значения

диаграмма диаграммы отчет красивые XY график графики Excel

114
Полноценная обработка, содержащая оффлайн версию JavaScript графиков AmCharts версии 3.2.0. С обработкой нажатия мыши. Все виды графиков: Column, Bar, Line, Area, Step, Smoothed line, Candlestick, Pie/Donut, Radar/Polar, XY/Scatter/Bubble, Bullet, Funnel/Pyramid.

Полноценная обработка, содержащая оффлайн версию JavaScript графиков AmCharts версии 3.2.0.

Реализованы все объекты из http://www.amcharts.com/javascript-charts/.

Обрабатывается нажатие мыши на точку/ребро графика. Пример обработки нажатия смотрите на графике "глубина/день".

Работают все виды графиков: Column, Bar, Line, Area, Step, Smoothed line, Candlestick, Pie/Donut, Radar/Polar, XY/Scatter/Bubble, Bullet, Funnel/Pyramid. 

Использовать не просто, а очень просто. Мой ответ доминикане и tushich.

Пример использования (из текста обработки):

Функция ЗаполнитьHTML(тз,об,вар)
  // RADAR CHART
   амОснова = AmChartsПолучитьОснову("AmRadarChart",AmChartsВременныйКаталогКартинок());
   амОснова.Параметры["startDuration"] = 2;
   амОснова.Параметры["categoryField"] = "country";
 
   // VALUE AXIS
   амОбъект = AmChartsСоздатьОбъект("valueAxis","ValueAxis","");
   амОбъект.Параметры.position = "bottom";
   амОбъект.Параметры.axisAlpha = 0.15;
   амОбъект.Параметры.dashLength = 3;
   амОбъект.Параметры.axisTitleOffset = 20;
   амОбъект.Параметры.gridCount = 5;
   амОснова.Объекты.Добавить(амОбъект);
 
   // GRAPH
   амОбъект = AmChartsСоздатьОбъект("graph","AmGraph","");
   амОбъект.Параметры.valueField = "litres";
   амОбъект.Параметры.bullet = "round";
   амОбъект.Параметры.balloonText = "[[value]] litres of beer per year";
   амОснова.Объекты.Добавить(амОбъект);
   амОснова.ТелоФункции = AmChartsПолучитьТелоФункции(амОснова);
   амОснова.Данные = AmChartsДанные(тз);
   
  Возврат AmChartsПолучитьHTMLТекст(амОснова,об);
КонецФункции

Вот что получается:

114

Скачать файлы

Наименование Файл Версия Размер
amCharts3.2.0.epf
.epf 125,59Kb
07.08.19
234
.epf 3.2.0+ 125,59Kb 234 Скачать

См. также

Специальные предложения

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо
1. script 205 01.11.13 23:46 Сейчас в теме
Поддерживается ли Диаграмма Ганта ?
4. fuxic 292 05.11.13 16:59 Сейчас в теме
(1) ради функционала-аналога диаграмм Ганта стал разбираться с амЧартом. В принципе механизм вполне заложен в библиотеке, но на примерах сайта построить сходу не получилось.

Буду рад если реализуете аналог Ганта на амчарте. Исправить floating bar на работу с датами и это уже заработает. Надо только будет шкалу и фильтры под конкретную задачу.
11. pfihr 231 06.11.13 23:58 Сейчас в теме
(4) fuxic, попробую реализовать. Сначала надо потренироваться в консоли jsfiddle, затем это легко переносится в мою обработку.
Прикрепленные файлы:
14. pfihr 231 07.11.13 00:00 Сейчас в теме
(1) script, только в варианте floating serial chart. См. скриншоты.
2. Yashazz 2520 05.11.13 12:49 Сейчас в теме
Немного не понял, что потребуется для работы? AmChartsПолучитьОснову - это что за зверь и где объявлен?
Взлетит ли на УФ?
3. Tedman 05.11.13 15:21 Сейчас в теме
(2) Yashazz,
На сколько мне известна данная тематика (а я в данный момент чем-то вроде этого же занимаюсь), то:
Немного не понял, что потребуется для работы?


AmChartsПолучитьОснову - это что за зверь и где объявлен?

Как я понимаю, это структура с необходимыми настройками для вывода диаграмм. Объявлен где-то глубже, а вот где и как автор в статье описывать не стал.
Взлетит ли на УФ?

На них, родимых, судя по скринам, в основном, и летает.
12. pfihr 231 06.11.13 23:59 Сейчас в теме
(2) Yashazz, взлетит. Кроме того, взлетит и на вэб-клиенте, и на мобильных устройствах.
5. fuxic 292 05.11.13 17:00 Сейчас в теме
Не совсем понял то, что убрана ссылка на сайт библиотеки. Это вроде прямое нарушение бесплатной лицензии.
13. pfihr 231 06.11.13 23:59 Сейчас в теме
(5) fuxic, Вы всегда можете вернуть ее в сам чарт, а я оставил ее в заголовке формы.
6. AlexBugs 06.11.13 07:45 Сейчас в теме
А на 7.7. такое взлетит? А то очень хочется....
7. ADirks 181 06.11.13 09:24 Сейчас в теме
8. DAnry 6 06.11.13 14:18 Сейчас в теме
9. randa 87 06.11.13 15:33 Сейчас в теме
10. kiruha 377 06.11.13 16:27 Сейчас в теме
Наконец то нормальные диаграммы
15. sikuda 573 07.11.13 13:40 Сейчас в теме
Наконец-то хоть движения есть в графиках. А то как-то одиноко.
За старания безусловный +,
Чистота лицензий это святое (на сайте http://www.amcharts.com):
Q: Can I use amCharts for free?
A: Yes, the only limitation of the free version is that a small link to this web site will be displayed in the top left corner of your charts.
Что-то у тебя в верхнем левом угле ничего нет.

16. qwed557 30 07.11.13 22:45 Сейчас в теме
(15) sikuda, есть же, или раньше не было а уже добавили, по крайней мере я на всех скринах вижу
17. sikuda 573 08.11.13 09:34 Сейчас в теме
(16) qwed557,
Да вижу, что-то вчера глюкнуло.

Вопрос автору: Разобрались ли Вы в тонком клиенте Windows, что бы нажатие мышки правильно определяло объект. Если объект не прямоугольный? Pie например.
20. pfihr 231 10.11.13 11:12 Сейчас в теме
(17) sikuda, пока не разбирался, не было необходимости. На Pie диаграмме нажатие мышью отодвигает сегмент от остальных сегментов, это встроенный функционал.
19. pfihr 231 10.11.13 11:11 Сейчас в теме
(15) sikuda, я вынес ссылку на форму. В самом html поле эта ссылка часто затирала полезные данные. Это забавно, и даже видно на примере микро-чартов на сайте авторов библиотеки (откройте пример в jsfiddle) :)
18. movel 08.11.13 11:31 Сейчас в теме
Скажите, а как, например, с помощью этой библиотеки организовать вывод если количество переменных изменяется? Т.е. выбираешь сколько графиков будет отображаться - 1 или 2, например? Формировать разные наборы вызова?
21. pfihr 231 10.11.13 11:13 Сейчас в теме
(18) movel, можно отображать любое количество графиков. Сколько объектов типа AmGraph добавите, столько их и будет. Разные наборы вызова я делаю так: создается одна таблица значений со всеми колонками для всех диаграмм. Дальше, заполняются данные, последовательно добавляются строки. Значения устанавливаются только для тех колонок, которые нужны для определенного графика (объекта AmGraph). В нужном объекте AmGraph указываются только эти колонки. Для следующего графика в т.з. добавляются новые строки, и заполняются данные других колонок таблицы значений, и для объекта AmGraph они указываются как источник. Смотрите пример на графике глубина-день, я там использовал 13 различных графиков в одной таблице значений. Библиотека умная, и строки/колонки с незаполненными значениями не учитывает при построении.
22. pfihr 231 11.11.13 07:58 Сейчас в теме
Если Вы встретились с проблемами масштабирования курсором, исправьте в коде макета следующие функции:

b.prototype.listenTo = function(a, b, c) {
var d = a.events[b], e = !1, g = 0;
for (h = d.length;g < h;g++) {
d[g].handler == c && d[g].scope == this && (e = !0);
}
return e ? d.length : d.push({handler:c, scope:this});
}, b.prototype.addListener = function(a, b, c) {
var d = this.events[a], e = !1, g = 0;
for (h = d.length;g < h;g++) {
d[g].handler == b && d[g].scope == c && (e = !0);
}
return e ? d.length : d.push({handler:b, scope:c});
}
sergcool83; +1 Ответить
23. pfihr 231 11.11.13 09:31 Сейчас в теме
В новой версии 3.2.0 ошибка зума исправлена (мной). Разработчики пока не исправили.
Так же много новых изменений, упрощена процедура программирования.
24. mars207 27 28.01.14 18:37 Сейчас в теме
Очень полезная обработка. Плюс обязательно добавлю. Но есть вопрос. А можно ли сформировать диаграмму такого типа как указано во вложении к комментарию? Тип диаграммы очень похож на "3D stacked column chart", но я бы хотел расширить его возможности. Чтобы это было похоже на более изощренную сводную диаграмму. Excell такое умеет...
Прикрепленные файлы:
25. mars207 27 28.01.14 18:39 Сейчас в теме
26. pfihr 231 31.01.14 21:35 Сейчас в теме
27. KlesAlex 4 24.03.15 17:38 Сейчас в теме
Сколько мануал не курил а так и не понял как нижнюю ось сделать не числовую а в виде дат
чтобы рисовать диаграмму ганта.
Все тлен(
28. 5150 07.04.15 13:54 Сейчас в теме
Доброго! а возможность экспорта в *.jpg или вывода на печать есть? даже из их онлайн конструктора интереса ради копировал html код, в котором кнопка (экспорта) есть, а в самой 1с-ке ее нет.
29. avz_1C 10 29.04.15 18:55 Сейчас в теме
Спасибо, Автор!
Чрезвычайно полезная вещь!
Плюс поставил.
Жалею, нельзя два-три за раз поставить.
30. advanter 42 19.02.16 22:36 Сейчас в теме
Отличные графики.
Чрезвычайно просто в применении и достойно в использовании. Плюсик, однозначно.
31. pfihr 231 05.03.16 14:19 Сейчас в теме
Спасибо коллеги!
Заказывайте что нибудь этакое, сделаю.
Рекомендую посмотреть ролик на тему отображения заказа покупателя на Яндекс.Картах.
Ролик на Youtube
Роман Цованян
32. ALagutin 57 31.01.17 16:14 Сейчас в теме
Интересно а можно ли сделать вот такую диаграмму с картой:
На которой будет виден регион России и некий бабл с данными
Прикрепленные файлы:
36. acanta 64 07.03.19 17:39 Сейчас в теме
(32)конечно можно. Меню файл новый создать.
33. Pilokarpios 31 03.03.17 11:11 Сейчас в теме
Толстый клиент, управляемые формы, 1С 8.3, что я не так делаю, или настройки IE нужно править? Или компоненты или части с сайта разработчика берутся, т.е. нужен online?
Прикрепленные файлы:
41. Plotks2017 180 06.09.19 09:44 Сейчас в теме
(33) скорее всего нужна платформа 8.3.14 и выше
34. sir 2 12.11.18 15:58 Сейчас в теме
Было бы круто еще добавить классы "AmStockChart" "StockGraph"
но единственно я не разобрался amcharts умеет только отрисовывать индикаторы или и рассчитывать тоже ?
35. c300pm 07.03.19 17:36 Сейчас в теме
обясните мне, тупому человеку, как это работает????
38. NittenRenegade 79 27.08.19 07:47 Сейчас в теме
(35) элементарно: библиотеки JavaScript, которые берут на себя всю отрисовку диаграмм в браузере. Далее мы создаем html страницу (по сути текстовик) с вызовом этих библиотек и заполненными в текстовом виде исходными данными для отрисовки и подсовываем встроенному в 1С браузеру.

Вот встроенный браузер зачем то блокирует содержимое ActiveX страницы и в 1С у меня скачанный пример не работает, только при экспорте HTML в браузер и последующем разрешении. Как победить? 1С:Предприятие 8.2 (8.2.18.82)
37. NittenRenegade 79 27.08.19 07:29 Сейчас в теме
В аду есть отдельное место для программистов, назначающих имена переменных в виде только им понятных сокращений слов
behemoth96; +1 Ответить
39. NittenRenegade 79 29.08.19 10:40 Сейчас в теме
Есть ещё вопрос: откуда взяты библиотеки amcharts.js ?
Я смотрю в тестовый пример автоматической линии тренда:
https://www.amcharts.com/docs/v3/tutorials/use-trend-line-display-auto-calculated-best-fit-line/

добавляю оттуда библиотеку
https://www.amcharts.com/lib/3/plugins/tools/bestFitLine/bestFitLine.min.js

получаю ошибку отсутствия методов у amCharts: addInitHandler.

Смотрю в библиотеки обработки, и там совсем другое содержимое нежели в тестовом примере по ссылке
https://www.amcharts.com/lib/3/amcharts.js

И если взять и скопировать содержимое этой библиотеки, то диаграммы формироваться не будут. Как быть?
40. NittenRenegade 79 29.08.19 11:55 Сейчас в теме
(39) Ответ: нужно заменить на новые все библиотеки. Хотя ошибка в графе XY всё-таки возникает, но уже в другом месте. Он мне пока и не нужен.
Вообще, к данному методу стоит прибегать в случае крайней нужды, либо если вы понимаете JavaScript
Оставьте свое сообщение