Strona główna » Poradniki » Maxima » Wykresy Słupkowe

Wykresy Słupkowe

· Wykres Liniowy · Wykres Słupkowy ·

Wstęp

Wykresy Słupkowe są wykorzystywane przy sporządzaniu wyników ankiet i w każdym przypadku, gdy istnieje potrzeba przedstawienia zgrupowanych wyników. Tego typu wykres może również służyć przedstawieniu ile jest konkretnych obiektów na liście. Grupowane dane nie muszą zawsze być liczbami, ponieważ na wykresie zostanie przedstawiona ich ilość, a nie wartość.

Rysowanie wykresu

W celu narysowania wykresu słupkowego należy skorzystać z funkcji barsplot(). Funkcja ta przyjmuje na początek dowolną ilość serii, a następnie ustawienia przetwarzania danych. Dane serii należy podawać jako wektor wypełniony określony danymi.

Przypuśćmy, że potrzebny jest wykres ile jest każdej liczby w 50 elementowej tablicy. Dla uproszczenia wiadomo, że znajdujące się na liście liczby są z przedziału [1, 4] i są liczbami całkowitymi.

(%i1)barsplot(makelist(random(4)+1,k,1,50), fill_density = 0.5);

Tablica elementów jest generowana losowa. Podczas rysowania wykresu został dodany argument fill_density na wartość 0.5. Dzięki temu słupki nie posiadają tylko obramowania, ale też wypełnienie. Efekt wywołania procedury jest następujący:

Prosty wykres

Jak można zauważyć na wykresie zostało przedstawione ile jest każdego elementu na liście. Można z niego odczytać, że na liście były tylko elementy z podane przedziału i elementów 1 było 11, elementu 2 było 12 itd.

Opisywanie wykresu

Wygenerowany wykres przedstawia to co zostało podane w zadaniu, ale dla innej osoby może okazać się całkowicie bezużyteczny, ponieważ nie został on w żaden sposób opisany. W celu opisania wykresu można ustawić wartość titletitle, xlabel oraz ylabel. Kolejno oznaczają one tytuł wykresu, opis osi X oraz osi Y. Kod uwzględniający dodatkowe dane wygląda następująco:

(%i2)barsplot(makelist(random(4)+1,k,1,50), fill_density = 0.5,
     title = "Ilości elementów na liście", xlabel = "element", ylabel="ilość");
Prosty wykres z opisem

Kilka serii

Serie skupione

Istnieje możliwość tworzenia wykresu składającego się z kilku serii. Wtedy wykres jest podzielona na tyle grup ile jest unikalnych elementów na przestrzeni wszystkich grup. W każdej grupie znajduje się ilość wystąpień w każdej serii. Przy pomocy takiego wykresu można śledzić ile danego towaru sprzedał każdy z hipermarketów. Przypuśćmy, że analizujemy sprzedaż jabłek, gruszek oraz pomarańczy w trzech sklepach. W tym celu należy wygenerować listę produktów sprzedanych w każdym sklepie, a potem to zobrazować:

(%i3)barsplot(
     makelist([Jabłko, Gruszka, Pomarańcza][random(3)+1],k,1,100),
     makelist([Jabłko, Gruszka, Pomarańcza][random(3)+1],k,1,100),
     makelist([Jabłko, Gruszka, Pomarańcza][random(3)+1],k,1,100),
     title = "Sprzedaż owoców w 3 sklepach",
     ylabel = "Sprzedanych sztuk",
     xlabel = "Produkt",
     sample_keys = ["Sklep 1", "Sklep 2", "Sklep 3"],
     fill_density = 0.5);
Porównanie sprzedaży produktów w sklepach

Z przedstawionego wykresu bardzo szybko można odczytać, że pierwszy sklep sprzedaje najwięcej gruszek i pomarańczy, ale najmniej jabłek. W tym przypadku najwięcej sztuk sprzedaje trzeci sklep. W kodzie pojawiło się nowe ustawienie sample_keys. Pozwala ono na utworzenie legendy, która w tym przypadku jest bardzo potrzebne, aby było wiadomo, które wyniki należą do którego sklepu.

Ułożone

W przypadku, gdy nie zależy nam na sprawdzeniu, który sklep sprzedał najwięcej danego produktu, a chcemy jednie sprawdzić sumaryczną, który produkt sprzedał się w największej ilości to można słupki w każdej grupie ułożyć jeden na drugim. W ten sposób zostanie przedstawiona łączna sprzedaż danego produktu przez wszystkie sklepu z wyszczególnieniem jaką część sumy sprzedał, który sklep. W tym celu należy zmienić wartość ustawień grupowania grouping na wartość stacked.

(%i4)barsplot(
     makelist([Jabłko, Gruszka, Pomarańcza][random(3)+1],k,1,100),
     makelist([Jabłko, Gruszka, Pomarańcza][random(3)+1],k,1,100),
     makelist([Jabłko, Gruszka, Pomarańcza][random(3)+1],k,1,100),
     title = "Sprzedaż owoców w 3 sklepach",
     ylabel = "Sprzedanych sztuk",
     xlabel = "Produkt",
     sample_keys = ["Sklep 1", "Sklep 2", "Sklep 3"],
     grouping = stacked,
     fill_density = 0.5);
Porównanie sprzedaży produktów w sklepach sumarycznie

Z wykresu można odczytać, że najlepiej sprzedawał się jabłka, a najgorzej gruszki.

Zadania

Przygotuj wykresy, które najlepiej zobrazują wyniki przedstawionych badań. Dane można wpisać na stałe, albo wygenerować przy pomocy makelist.

Zadanie 1

Przeprowadzono ankietę wśród 1000 osób dotyczącą świadomości zakupów. Ankieta składała się z trzech pytań:

  1. Czy patrzy Pan/Pani na kraj pochodzenia produktu?
  2. Czy kupuje Pan/Pani produkty polecane przez innych?
  3. Czy wie Pan/Pani jakie prawa przysługują podczas zgłaszania reklamacji?

Na każde pytanie można było odpowiedzieć Tak, Nie, albo wstrzymać się od odpowiedzi. Wśród badanych 200 osób było w wieku od 15 - 30, 600 osób w wieku od 31 - 45 oraz 200 w wieku 46+. Poniżej został przedstawiony przykładowy wykres:

Wyniki Ankiety