diff --git a/05.ipynb b/05.ipynb
index 5fe09eb..b3f4f6d 100644
--- a/05.ipynb
+++ b/05.ipynb
@@ -9,7 +9,7 @@
},
{
"cell_type": "code",
- "execution_count": 1,
+ "execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
@@ -116,9 +116,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 4,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" textInput('name', 'What is your name?'), # Input \n",
@@ -136,7 +146,7 @@
},
{
"cell_type": "code",
- "execution_count": 3,
+ "execution_count": 6,
"metadata": {},
"outputs": [
{
@@ -206,9 +216,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 6,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" titlePanel('Baby Name Explorer'),\n",
@@ -230,9 +250,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 7,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" titlePanel(\"What's in a Name?\"),\n",
@@ -263,9 +293,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 8,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" titlePanel(\"What's in a Name?\"),\n",
@@ -306,9 +346,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 9,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"# Layout\n",
"\n",
@@ -358,9 +408,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 10,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"# Themes\n",
"\n",
@@ -407,9 +467,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 11,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" titlePanel('BMI Calculator'),\n",
@@ -458,9 +528,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 12,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" textInput('name', 'Enter your name')\n",
@@ -507,9 +587,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 13,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"# Isolate\n",
"ui <- fluidPage(\n",
@@ -542,9 +632,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 14,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"# eventReactive\n",
"ui <- fluidPage(\n",
@@ -579,9 +679,19 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 15,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n"
+ ]
+ }
+ ],
"source": [
"# observeEvent\n",
"bmiHelpText <- \"Body Mass Index is a simple calculation using a person's height and weight. The formula is BMI = kg/m2 where kg is a person's weight in kilograms and m2 is their height in metres squared. A BMI of 25.0 or more is overweight, while the healthy range is 18.5 to 24.9.\"\n",
@@ -646,7 +756,19 @@
"cell_type": "code",
"execution_count": null,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Listening on http://127.0.0.1:3182\n",
+ "\n",
+ "Warning message:\n",
+ "“Error in renderText: nie znaleziono obiektu 'x'”\n"
+ ]
+ }
+ ],
"source": [
"ui <- fluidPage(\n",
" sliderInput(\"x\", label = \"If x is\", min = 1, max = 50, value = 30),\n",
@@ -736,6 +858,7 @@
"outputs": [],
"source": [
"datasets <- c(\"economics\", \"faithfuld\", \"seals\")\n",
+ "\n",
"ui <- fluidPage(\n",
" selectInput(\"dataset\", \"Dataset\", choices = datasets),\n",
" verbatimTextOutput(\"summary\"),\n",
@@ -779,9 +902,13 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "7. Narodowe Centrum Raportowania UFO (NUFORC) zbierało dane o zdarzeniach UFO w ciągu ostatniego stulecia (zbiór danych: usaUFOsightings.csv). Zbuduj aplikację, która pozwoli użytkownikom wybrać stan USA i okres, w którym miały miejsce zdarzenia. Wykres powinien pokazywać liczbę zdarzeń dla wybranego stanu i okresu. Tabela powinna pokazywać, dla wybranego stanu i okresu czasu, liczbę zaobserwowanych obserwacji oraz średnią, medianę, minimalny i maksymalny czas trwania (w sekundach) wydarzenia. Twoja ostateczna aplikacja powinna wizualnie przypominać zrzut ekranu poniżej.\n",
+ "7. Narodowe Centrum Raportowania UFO (NUFORC) zbierało dane o zdarzeniach UFO w ciągu ostatniego stulecia (zbiór danych: usaUFOsightings.csv). Zbuduj aplikację, która pozwoli użytkownikom wybrać stan USA i okres, w którym miały miejsce zdarzenia. Wykres powinien pokazywać liczbę zdarzeń dla wybranego stanu i okresu. Tabela powinna pokazywać, dla wybranego stanu i okresu czasu, liczbę zaobserwowanych obserwacji oraz średnią, medianę, minimalny i maksymalny czas trwania (w sekundach) wydarzenia. Twoja ostateczna aplikacja powinna wizualnie przypominać zrzutu ekranu poniżej.\n",
"\n",
- ""
+ "\n",
+ "\n",
+ "8. Zbuduj aplikację do wizualizacji Centralnego Twierdzenia Granicznego. Próbki powinny być losowane z rozkładu jednostajnego na odcinku $[0, 1]$. Użytkownik powinien móc zmienić liczbę próbek (od 1 do 100, domyślnie 2) oraz liczbę słupków w histogramie (od 5 do 50, domślnie 20). Liczba doświadczeń (liczenia średnich) powinna być ustalona na stałe (10 000). Ustaw szablon na *darkly*. Zebezpiecz aplikację przed wpisaniem ujemnych wartości dla liczby próbek i liczby słupków (biblioteka *shinyFeedback*). Dopasuj wylgąd aplikacji do zrzutu ekranu poniżej.\n",
+ "\n",
+ ""
]
}
],
diff --git a/figs/ex5_8.png b/figs/ex5_8.png
new file mode 100644
index 0000000..c842c5f
Binary files /dev/null and b/figs/ex5_8.png differ