Un șablon pentru crearea de jocuri de sortare a cărților în R

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

(Acest articol a fost publicat pentru prima dată pe R pe Lucruri care pot fi publicateși cu amabilitate a contribuit la R-bloggeri). (Puteți raporta problema legată de conținutul acestei pagini aici)


Doriți să vă distribuiți conținutul pe R-bloggeri? dați clic aici dacă aveți un blog, sau aici dacă nu aveți.

Săptămâna trecută am creat jocul mic de sortare a cărților numit The Climate Impact Sorting Challenge, unde provocarea este să sortăm cărți cu diferite alimente în ordinea impactului lor asupra climei. Dar apoi m-a lovit gândul: de fiecare dată când te afli cu un set de date cu etichete (să zicem, tipuri de alimente) mapate la numere (să zicem, impactul asupra climei în CO2e), ai putea transforma asta într-un joc de sortare a cărților! Așadar, am creat un șablon pentru a facilita acest lucru și, în această postare, vă voi arăta cum să faceți jocuri de sortare a cărților ca acestea folosind R (sau într-adevăr orice limbaj de date):

Dar mai întâi, iată jocurile pe care le-am făcut până acum:

Cum să faci un joc de sortare a cărților folosind șablonul?

library(jsonlite)
library(tidyverse)
library(glue)

# Define the placeholder variables to be inserted into the template
# You can see a variable is a placeholder, as it uses a weird UpperCamelCase name.
GameTitle <- "Calorie Content Sorting Challenge"
GameDescription <- "Place the foods in order of increasing calorie content per 100g."
AuthorName <- "Rasmus Bååth"
Instructions <- "
  Drag and drop the food items to arrange them in order of increasing
  calorie content per 100g. See how many you can get right before making a mistake!
"
LeftGuidanceText <- "← Less calories"
RightGuidanceText <- "More calories →"
InfoText <- "

About this game
This game helps you learn about the calorie content of different foods.

"

Aici creăm un mic exemplu de joc care se referă la sortarea alimentelor în funcție de conținutul lor caloric. A mai rămas o variabilă de substituent și acestea sunt datele pentru carduri. Aici îl vom completa cu câteva exemple inventate de valori ale caloriilor:

# Create the candidates cards, here with made up with food items, 
# but generally here's where you would read in some data and munge it into 
# the target formar with the following columns:
# description: The name of the card
# value: The numeric value of the card
# display: The string that will be revealed on the card
candidate_cards <- tribble(
  ~description,       ~value, ~display,
  "Apple",            52,     "52 kcal per 100g",
  "Banana",           96,     "96 kcal per 100g",
  "Broccoli",         34,     "34 kcal per 100g",
  "Cheddar Cheese",   403,    "403 kcal per 100g",
  "Chicken Breast",   165,    "165 kcal per 100g",
  "White Rice",       130,    "130 kcal per 100g",
  "Avocado",          160,    "160 kcal per 100g",
  "Salmon",           208,    "208 kcal per 100g",
  "Almonds",          579,    "579 kcal per 100g",
  "Dark Chocolate",   546,    "546 kcal per 100g"
)
# Convert the candidate_cards dataframe to JSON format for the template
CandidateCardsArray <- toJSON(candidate_cards, auto_unbox = TRUE)

În cele din urmă înlocuim substituenții din șablon, îl scriem într-un fișier…

sorting_challenge_template <- read_file("template-sorting-challenge.html" ) 
example_sorting_game <- glue(sorting_challenge_template, .open = "{{", .close = "}}")
write_file(example_sorting_game, "example-sorting-game.html")

si presto, un joc!

Iată scriptul R complet pentru crearea acestui exemplu de joc. Anunță-mă dacă faci ceva distractiv cu el!

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.