21

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

FakiNyan написав:

Наступне моє творіння буде дякувати певному юзеру за кожне повідомлення, котре ще не отримало подяку (всього за $4.99)  *OK* ех, погано, що не можна подякувати самому собі, були б free money

а от це уже буде некрасиво)))

22

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

221VOLT написав:
FakiNyan написав:

Фуууух, дописав ото все для отримання статистики про те, хто скільки і кому подяк поставив, озьдо кід

з однієї сторони - приємно бачити як хтось успішно навчається,
підкорює нові вершини))

з іншої сторони - так і хочеться покритикувати - у вас там зайвих 200+ строк ))

оптимальніше буде так --
1) беремо тих 50 строк, котрими рахували в одного юзера
2) йдемо на сторінку користувачів http://replace.org.ua/users/ , зберігаємо айдішки користувачів ( це ще 20-35 строк )
3) їздимо по айдішках http://replace.org.ua/thanks/view/5402/ , рахуємо
4) зробити красивий вивід результатів - для прикладу - посортувати і створити-видати html-сторінку на завантаження
( тут ще 5-10 строк )

загалом виходить приблизно 75-95 строчок коду, кожна з яких вміщається на екрані
мова про user.js , в ерлангу на обробку буде менше строк, більше - на парсинг html (хоча, тут знову ж таки - є варіанти)

пффф, а я ото хтів ті колбеки і все подібне створювати? В цьому phantomjs якась древня версія js, де й промісів немає, і я принципіяльно не збираюсь вилизувати той код.

А так алгоритм був такий самий. Спочатку здирає айдішники користувачів, в котрих є хоча б одна подяка, а потім проходиться по списку подяк цих користувачів.

Подякували: 0xDADA11C7, 221VOLT2

23

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Пане Трусіку, а тепер робіть гарні візуалізації, не забуваючи про теорією грахвів.

Подякували: leofun01, Q-bart, 221VOLT3

24

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

вам треба, ви й робіть
а я ту теорію ніколи й не знав

25

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

0xDADA11C7 написав:

Пане Трусіку, а тепер робіть гарні візуалізації, не забуваючи про теорією грахвів.

Прихований текст

0xdada, а розкажіть до чого тут графи. БО ми в універі графи вивчили, я майже всі лабки сам написав і здав, а де їх застосувати я і близько не шарю. Хоча на першій лекції нам лектор ой як класно розповідала, що ми будемо вміти... добре що я потім на лекції не ходив

Подякували: FakiNyan1

26

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Прихований текст

Графи використовуються для представлення зв'язків між об'єктами, найвідоміше застосування теорії графів - пошук оптимального шляху, з'вязки між друзями в соцмережах також є графами, так само як і зв'язки між пакунками в репозиторії.

Подякували: FakiNyan, 221VOLT, leofun013

27

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Q-bart написав:
0xDADA11C7 написав:

Пане Трусіку, а тепер робіть гарні візуалізації, не забуваючи про теорією грахвів.

Прихований текст

0xdada, а розкажіть до чого тут графи. БО ми в універі графи вивчили, я майже всі лабки сам написав і здав, а де їх застосувати я і близько не шарю. Хоча на першій лекції нам лектор ой як класно розповідала, що ми будемо вміти... добре що я потім на лекції не ходив

Прихований текст

ну, от ви - поштар, вам треба привезти пакунки в декілька міст і повернутись на базу, відстань між мастами різна, і вам треба побудувати такий шлях, аби вся відстань, котру ви проїхали, була найменшою, і щоб при цьому ви заїхали в одне місто лише 1 раз, от тут графи допоможуть

28

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

FakiNyan написав:
Q-bart написав:
0xDADA11C7 написав:

Пане Трусіку, а тепер робіть гарні візуалізації, не забуваючи про теорією грахвів.

Прихований текст

0xdada, а розкажіть до чого тут графи. БО ми в універі графи вивчили, я майже всі лабки сам написав і здав, а де їх застосувати я і близько не шарю. Хоча на першій лекції нам лектор ой як класно розповідала, що ми будемо вміти... добре що я потім на лекції не ходив

Прихований текст

ну, от ви - поштар, вам треба привезти пакунки в декілька міст і повернутись на базу, відстань між мастами різна, і вам треба побудувати такий шлях, аби вся відстань, котру ви проїхали, була найменшою, і щоб при цьому ви заїхали в одне місто лише 1 раз, от тут графи допоможуть

Прихований текст

ну та це я шарю. я не шарив навіщо вони в візуалізації

Подякували: FakiNyan1

29

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Ось тут приклад пошуку оптимального шляху між містами, на графах.
https://github.com/VTrim/OptimizeRoute/

Подякували: 221VOLT, 0xDADA11C72

30

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Q-bart написав:
FakiNyan написав:
Q-bart написав:
Прихований текст

0xdada, а розкажіть до чого тут графи. БО ми в універі графи вивчили, я майже всі лабки сам написав і здав, а де їх застосувати я і близько не шарю. Хоча на першій лекції нам лектор ой як класно розповідала, що ми будемо вміти... добре що я потім на лекції не ходив

Прихований текст

ну, от ви - поштар, вам треба привезти пакунки в декілька міст і повернутись на базу, відстань між мастами різна, і вам треба побудувати такий шлях, аби вся відстань, котру ви проїхали, була найменшою, і щоб при цьому ви заїхали в одне місто лише 1 раз, от тут графи допоможуть

Прихований текст

ну та це я шарю. я не шарив навіщо вони в візуалізації

ну, типу, для зображення залежностей, але я теж не зрозумів, як оті всі залежності можна оформити в вигляді графік, хіба що окремий граф для кожного юзера, для фанів та вподобаних.
Типу, всередині у нас юзер, а навколо нього ті, хто йому поставив дякую, і типу вони з'єднані лініями, і так само длятих, кому юзер поставив дякую. А  як ото все в купі оформити, для кожного юзера, і при цьому, щоб кожен юзер відображувався лише 1 раз, ото я хз, хоча дуже сильно ще не думав, може якось й можна.

31 Востаннє редагувалося ReAl (03.01.2018 20:06:18)

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Та ні, не окремий граф на кожного користувача.
Можна скласти граф для теми, граф для розділу, граф для всього форуму. Але всі користувачі-вершини будуть завжди.

Якщо просто скласти двовимірну таблицю N«кому подякував»,«хто подякував» (для всього форуму чи для окремої теми), то ми автоматично отримаємо матрицю суміжності якогось орієнтованого зваженого графа (не треба нам «кількості ребер із вершини у вершину», то буде вага одного ребра).

Яку можна перегнати в dot і дивитися, яка фігня що виходить (заразом і у вікі-статтю завантажити якусь цікавішу  картинку, ніж суміжність штатів штатів).

Сума ваг двох ребер між двома вершинами («ти мені» + «я тобі») як «сила» при візуалізації дасть відразу скупчення вершин, якщо є групи, всередині яких дуже полюбляють одне одному дякувати :)

Подякували: FakiNyan, sensei, Q-bart, 0xDADA11C74

32 Востаннє редагувалося Q-bart (09.01.2018 00:46:17)

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

О! Цікаво, ви розповіли!!! Не хочете замість нашого викладача прийти розказати ще й всім  :) ?

Подякували: 0xDADA11C71

33 Востаннє редагувалося ReAl (09.01.2018 02:58:44)

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Та нє™, то хлопці там-во курили, а я проходив і провонявся.
Я ж тіки dot використовую для такого

Прихований текст

(«терпіти ненавиджу» картинки під контроль версій запихувати, тому таке пишу текстом)

digraph loop_controller {

//----------------------------------------------------------------------
//    Protocol "*****"
//    loop_contr_state.dot -- controller protocol driver state machine diagram
//----------------------------------------------------------------------
//
//    $Revision: 29 $
//    $Date:: 2016-03-28 #$
//

    label = "***** loop controller state diagram";
    labeljust = "r";
    //labelloc = "t";

    node [fontname=courier, shape=oval];
    edge [fontname=courier];

    {rank=same; TX_ADDRESS RX_IRQ_ACK START}
    {rank=same; TX_TP_ASSIGN  TX_OEM}
    {rank=same; IDLE TX_TP_IRQ}

    IDLE [shape = doublecircle];
        TX_ADDRESS, TX_TP_IRQ, TX_TP_ASSIGN, TX_IACK, TX_OEM, TX_CMD,
        TX_CFG_REG, TX_CFG_DATA [style=filled, color="#D8D8D8"];

    IDLE        -> START    [label = "REQUEST"];
    START        -> TX_ADDRESS;
    TX_ADDRESS     -> RX_IRQ_ACK    [label = "WRK_MODE"];

(«терпіти ненавиджу» перемальовувати таке вручну при зміні концепції, тому хай мені комп малює)
https://real.kyiv.ua/files/4replace/dot-state-diagram.png

а про все інше просто чув.

Подякували: 221VOLT, 0xDADA11C7, Q-bart3

34

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

щось я не зовсім зрозумів, як в dot намалювати саме такий граф, аби вага ребер залежала від значення в матриці суміжностей.
Глянув приклади різних типів графів, і щось не видно гарнюнього

Подякували: 221VOLT1

35

Re: Кількість отриманих подяк на replace.org.ua за допомогою PhantomJs 0.2

Ой, зважені графи то та ж сама мова DOT, але з іншими/додатковими атрибутами і оброблювати не dot-ом, яким зручно діаграми стані малювати, а «пружинним» обробником neato. Може десь в галереї знайдеться (там клік на картинці дає велику картинку, а наступний клік — код).
І в особливо тяжких випадках бува для краси треба переганяти у вектор і в inkscape трохи рихтувати, мені для автоматів то не треба.

Подякували: 221VOLT, leofun01, FakiNyan3