Jak mogę automatycznie tworzyć ładne wykresy?

12

Na przykład. takich jak te na tej stronie http://store.steampowered.com/hwsurvey

Czy istnieje gotowe oprogramowanie, które może to zrobić? Alternatywnie, jakieś zalecenia dla innego oprogramowania, które robi coś podobnego? Wiem, że tak naprawdę nie jest to pytanie statystyczne, ale bardzo mocno czuję, że dane powinny być przedstawiane w zgrabny i atrakcyjny sposób, aby były skuteczne, dlatego uważam, że to pytanie byłoby przydatne dla niektórych osób.

Aktualizacja (29.12.11) :

Dziękuję za wszystkie odpowiedzi na to pytanie, naprawdę doceniam wszystkie twoje sugestie. Przez automatycznie rozumiem, że wprowadzam dane, a wykres jest automatycznie aktualizowany.

Celem mojego projektu jest zbieranie 6–10 zestawów danych dziennie (a może 2x dziennie) przez nieokreślony czas, a ja chcę znaleźć sposób na reprezentację danych na stronie internetowej (podobnie do linku Steam, który ja podany powyżej), podczas gdy zaplecze użytkownika jest wystarczająco proste, aby użytkownik nietechniczny mógł to obsłużyć. Jeśli masz więcej sugestii, dodaj do odpowiedzi! Dzięki jeszcze raz!

The Mysterious
źródło
Jeśli chcesz opublikować swoje działki na stronie internetowej, powinieneś użyć do tego lib javascript. Jak Google Chart Tools, Flot lub Raphael
audijenz
1
Wydaje mi się, istnieją dwa pytania: produkujące schludne i grafiki w sposób automatyczny . Dodałbym, że te grafiki powinny mieć sens i nie powinny prowadzić do subiektywnych lub percepcyjnych uprzedzeń (widzę cztery wykresy kołowe z sześciu grafik, które zawierają dany adres URL). Kiedy otagowałeś to pytanie interactive-visualization, co masz na myśli? Coś jak protovis lub jego następca d3.js ? Łatwy w konfiguracji z danymi CSV lub JSON, ale co z danymi?
chl
Grafika Steam wygląda ładnie, ale pomija ważne rzeczy. Na przykład wykresy szeregów czasowych nie dają żadnych wizualnych wskazówek na temat osi poziomej (zalecałbym przynajmniej znaczniki wyboru).
David J.,
Nie zgadzam się z argumentem: „jeśli chcesz opublikować wykresy na stronie internetowej”, to „powinieneś użyć biblioteki JS”. Jeśli potrzebujesz wykresu, który jest dostępny tylko przez R lub SPSS, co zamierzasz zrobić? Jeśli chcesz dynamicznie generować wykresy dla strony internetowej, to jeśli możesz, używanie Javascript może być przyjemne; ale wciąż nie jest to wystarczający powód.
David J.
Nie mogę zaoferować użytecznych rekomendacji, chyba że zadam pytanie wyjaśniające. Muszę wiedzieć, jakie masz dane, gdzie są przechowywane i co chcesz zrobić. Daj mi znać, a mogę zaproponować lepsze sugestie.
David J.

Odpowiedzi:

5

Zajmujesz się zarówno automatycznym generowaniem wykresów, jak i tworzeniem ładnych wykresów.

Strona, do której prowadzi link, ma raczej podstawowe wykresy z przyzwoitą typografią i przyzwoitą kolorystyką. Każde przyzwoite oprogramowanie do tworzenia wykresów może to zrobić, więc myślę, że potrzebujesz odpowiednich parametrów dla dowolnego oprogramowania, którego używasz.

Schemat kolorów : Generatory schematów kolorów zapewniają przyjemny, potencjalnie stereotypowy schemat kolorów.

Projekt graficzny : Timothy Samara przedstawia listę 20 zasad i sposobów ich złamania. Jeśli zastosujesz je wszystkie, nie niszcząc żadnego z nich, uzyskasz piękny, potencjalnie stereotypowy projekt.

Typografia : Projektowanie za pomocą Type to moje ulubione wprowadzenie do typografii.

Thomas Levine
źródło
+1 za konstruktywną odpowiedź. Automatycznie generowane i atrakcyjne wzornictwo nie jest sprzeczne; jest o wiele trudniejsze.
Darren Cook
Automatyczne generowanie ułatwia tworzenie atrakcyjnych wykresów. Nie wiem o czym mówi Wayne.
Thomas Levine,
5

Nie można automatycznie tworzyć ładnych wykresów, podobnie jak nie można automatycznie tworzyć ładnych tekstów, ładnych rysunków, dobrych potraw lub czegokolwiek innego.

Tworzenie ładnych wykresów (lub ładnych czegokolwiek) wymaga talentu, wysiłku i zrozumienia.

Istnieją programy (zobacz inne odpowiedzi), które mogą pomóc ci tworzyć ładne wykresy, podobnie jak (powiedzmy), łatwiej jest gotować, gdy masz dobre noże i fajny piec, lub pisać powieść z dobrym pakietem do edycji tekstu. Ale dobre narzędzia to za mało.

Peter Flom - Przywróć Monikę
źródło
4

Dziesiątki programów mogą tworzyć atrakcyjne, przejrzyste wykresy: R, Igor Pro, gnuplot, SAS, a nawet Excel. Kluczowym składnikiem jest użytkownik, który rozumie dane, rozumie, co należy przekazać konkretnej grupie odbiorców, i bada pewne kwestie estetyczne / percepcyjne.

Niektóre programy mają większą elastyczność niż inne (R i Igor Pro są bardzo elastyczne), a niektóre programy / pakiety mają bardziej atrakcyjne ustawienia domyślne (np. Pakiet ggplot w R), ale najważniejsze jest to, że „automatyczne” i „ładne wykresy” są sprzeczny. W mojej opinii.

EDYCJA: Jak wskazano w komentarzach, „automatyczne” może odnosić się do aktualizacji wykresu, gdy pojawiają się nowe dane, a nie do automatycznego tworzenia znaczących, atrakcyjnych wykresów. W takim przypadku większość rozwiązań umożliwiających tworzenie atrakcyjnych wykresów można zautomatyzować w celu zaktualizowania wykresu o nowe dane. Oczywiście, jeśli dane zmieniają się gwałtownie w czasie, oryginalny projekt może nie działać dobrze, a wykres może być mniej zrozumiały lub atrakcyjny.

Wayne
źródło
Nigdy nie słyszałem o Igor Pro. Domyślne ustawienia w SAS 9.2 wcale nie są złe; skok kwantowy dla SAS.
Peter Flom - Przywróć Monikę
2
Myślę, że kluczowym aspektem jego pytania jest nie tylko generowanie wykresów; chodzi o generowanie ich automatycznie (programowo) wraz ze zmianami danych bazowych. Niektóre narzędzia są łatwiejsze niż inne, jeśli chodzi o programowe połączenie.
David J.,
Jestem zaskoczony, że Igor Pro wymieniony jest jako porównywalny z R i innymi, o których wspominałeś. (To pierwszy raz o tym słyszałem.)
David J.
Automatyczne i ładne wykresy niekoniecznie są ze sobą sprzeczne. Oto przykład: kiedy masz pojęcie o napływających danych, możesz chcieć skonfigurować automatycznie aktualizowaną wizualizację. To może i często jest zautomatyzowane. I zrobione dobrze. Poza tym, jaka jest alternatywa? Czy człowiek aktualizuje wykres przy każdej zmianie danych?
David J.
@David, Peter: Używałem Igor Pro firmy Wavemetrics i jest to bardzo dobry program do analizy naukowej. Ich pracownicy są wybitni, a wykresy są bardzo konfigurowalne. Może być w całości sterowany przez GUI, ale wszystko jest przetłumaczone na jego podstawowy język, do którego można uzyskać dostęp, zapisywać, modyfikować itp. R jest jednak darmowy i ma tysiące pakietów zamiast dziesiątek, więc trzymam Igor Pro, ale użyj R. Nadal bardzo go polecam, a więcej informacji znajdziesz na wavemetrics.com.
Wayne,
1

Po prostu przejrzałem ten temat i natknąłem się na artykuł techniczny dotyczący visual.ly, firmy, która automatyzuje generowanie infografiki dla takich marek jak Nat Geo, The Atlantic, GOOD Magazine CNNMoney.com i Ebay.

Ich strona internetowa wskazuje, że w końcu pozwolą każdemu stworzyć te infografiki.

Mam nadzieję że to pomoże.

Paul Salvaggio
źródło
Bardzo fajny zasób, dziękuję! Mają tylko dwa posty na blogu na dzień 13.12.2011, ale oba są bardzo dobre i dobrze poinformowane przez IMO.
Andy W
1

Możesz użyć php GD, aby twój serwer WWW tworzył bezpośrednio obrazy z plików danych.

Elvis
źródło
0

Ładnym (i bezpłatnym) narzędziem do publikowania wykresów w sieci są Wykresy Google. Możesz połączyć się z danymi w czasie rzeczywistym. Sprawdź to: http://code.google.com/apis/chart/

Orsino
źródło
0

Spójrz na Highcharts .

Highcharts to biblioteka wykresów napisana w czystym JavaScript, oferująca intuicyjne, interaktywne wykresy do twojej strony internetowej lub aplikacji internetowej. Highcharts obsługuje obecnie typy linii, splajnu, obszaru, linii obszarów, kolumny, słupka, wykresu kołowego i punktowego.

Jest ładna strona demonstracyjna .

Benjamin Crouzier
źródło
0

Miałem szczęście na to za pomocą narzędzi, takich jak badania , które umożliwiają zaprogramowanie wokół jak wykresy wyglądają i-for-the stron internetowych Narzędzia wykresów Google (lub innych narzędzi wykres javascript oparte, na przykład, d3 , jscharts , i myślę, że strona właśnie patrzysz używa Fusion Charts ) do tego rodzaju problemu.

Za pomocą R ustawiasz podstawowy sposób, w jaki ma wyglądać wykres. R jest wysoce konfigurowalny (z nieco ohydnymi ustawieniami domyślnymi, choć nie tak złymi, jak powiedzmy MS Excel), więc piszesz skrypt, który odczytuje dane z określonej lokalizacji lub źródła i poprawia wartości. Może zmieniać się wokół miejsca, w którym znajduje się oś, znaczniki wyboru, miejsce umieszczenia mediany i dowolne tagi z nią związane. Nie jest to idealne, ale można użyć logiki programowania i przy pewnych ostrożnych wyborach sprawić, że wszystko będzie wyglądać całkiem dobrze.

Dzięki odmianom javascript (w których można uzyskać wykresy wyglądające podobnie do wymienionych na liście) po prostu konfigurujesz kod, który będzie wyświetlał wykres i skąd pobiera dane. Możesz więc stworzyć usługę (np. Pewien serwis internetowy), która pobiera / przetwarza dane, a następnie podaje je do interfejsu API wykresu. Minusem jest to, że uzyskuje się w ten sposób mniej dostosowywania, a czasami dostosowanie go do formatu oczekiwanego przez interfejs API jest bolesne, ale wartości domyślne wyglądają całkiem nieźle, można łatwo umieścić wynik na stronie internetowej, a niektóre interfejsy API dają ci dodatkowe wizualne cukierki (np. te w witrynie, do której linkujesz).

dclements
źródło
0

Witryna Steam używa wtyczki Flash do rysowania wykresów. Jeśli chcesz rysować przy użyciu danych statystycznych, użyj oprogramowania R. Jeśli jesteś ekspertem w Javascript, lepiej użyj extjs do narysowania wykresu.

Randolph Chou
źródło