Introduction

Knitting Basics

Knitting can seem overwhelming at the start. There’s different types of yarn, different patterns, and then there’s the stiches. There’s a lot of new terminology to get used to. For this pattern we will be designing our own pair of mittens using code! We’ll be constructing our mittens using the following stitches:

Abbreviation Description
K Knit Stitch
P Purl Stitch
K2P2 Also called ribbing, this is when you knit two stiches and then purl two stitches and repeat. It makes the finished project stretchy and is useful for cuffs or the bottom of hats.
K2TOG Knit two together
SSK Slip slip knit

Need a review? Check out the excellent videos by HappyBerry below:

Knitting Review

Casting on

The Knit Stitch

The Purl Stitch

Decreasing: K2TOG and SSK

Selbu Mittens Pattern Template

Currently we have a blank pattern that we will use to design our mittens. Our goal is to generate new and interesting patterns that transform the “Blank” cells in our matrix into interesting colors.

Selbu Mittens Part I

The Template

The Template Dataset

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
None None None None None None None None K2TOG K2TOG Blank SSK SSK None None None None None None None None MC C2 MC
None None None None None None None K2TOG K2TOG Blank Blank Blank SSK SSK None None None None None None None C2 C2 C2
None None None None None None K2TOG K2TOG Blank Blank Blank Blank Blank SSK SSK None None None None None None MC C2 MC
None None None None None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank SSK SSK None None None None None MC C2 MC
None None None None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK None None None None C2 C2 C2
None None None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK None None None MC C2 MC
None None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK None None MC C2 MC
None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK None C2 C2 C2
K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC

Cellular Automaton Rule 40

Rule 40 Dataset

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
None None None None None None None None K2TOG K2TOG C1 SSK SSK None None None None None None None None MC C2 MC
None None None None None None None K2TOG K2TOG C1 C1 C1 SSK SSK None None None None None None None C2 C2 C2
None None None None None None K2TOG K2TOG C1 C1 MC MC C1 SSK SSK None None None None None None MC C2 MC
None None None None None K2TOG K2TOG C1 C1 MC C1 C1 C1 C1 SSK SSK None None None None None MC C2 MC
None None None None K2TOG K2TOG C1 C1 MC MC C1 MC MC MC C1 SSK SSK None None None None C2 C2 C2
None None None K2TOG K2TOG C1 C1 MC C1 C1 C1 C1 MC C1 C1 C1 SSK SSK None None None MC C2 MC
None None K2TOG K2TOG C1 C1 MC MC C1 MC MC MC MC C1 MC MC C1 SSK SSK None None MC C2 MC
None K2TOG K2TOG C1 C1 MC C1 C1 C1 C1 MC MC C1 C1 C1 C1 C1 C1 SSK SSK None C2 C2 C2
K2TOG K2TOG C1 C1 MC MC C1 MC MC MC C1 C1 C1 MC MC MC MC MC C1 SSK SSK MC C2 MC
MC C1 C1 MC C1 C1 C1 C1 MC C1 C1 MC MC C1 MC MC MC C1 C1 C1 MC MC C2 MC
C1 C1 MC MC C1 MC MC MC MC C1 MC C1 C1 C1 C1 MC C1 C1 MC MC C1 C2 C2 C2
MC MC C1 C1 C1 C1 MC MC C1 C1 MC C1 MC MC MC MC C1 MC C1 C1 C1 MC C2 MC
C1 C1 C1 MC MC MC C1 C1 C1 MC MC C1 C1 MC MC C1 C1 MC C1 MC MC MC C2 MC
C1 MC MC C1 MC C1 C1 MC MC C1 C1 C1 MC C1 C1 C1 MC MC C1 C1 C1 C2 C2 C2
MC C1 C1 C1 MC C1 MC C1 C1 C1 MC MC MC C1 MC MC C1 C1 C1 MC MC MC C2 MC
C1 C1 MC MC MC C1 MC C1 MC MC C1 MC C1 C1 C1 C1 C1 MC MC C1 MC MC C2 MC
C1 MC C1 MC C1 C1 MC C1 C1 C1 C1 MC C1 MC MC MC MC C1 C1 C1 MC C2 C2 C2
C1 MC C1 MC C1 MC MC C1 MC MC MC MC C1 C1 MC MC C1 C1 MC MC MC MC C2 MC
C1 MC C1 MC C1 C1 C1 C1 C1 MC MC C1 C1 MC C1 C1 C1 MC C1 MC C1 MC C2 MC
MC MC C1 MC C1 MC MC MC MC C1 C1 C1 MC MC C1 MC MC MC C1 MC C1 C2 C2 C2
C1 C1 C1 MC C1 C1 MC MC C1 C1 MC MC C1 C1 C1 C1 MC C1 C1 MC C1 MC C2 MC
MC MC MC MC C1 MC C1 C1 C1 MC C1 C1 C1 MC MC MC MC C1 MC MC C1 MC C2 MC
C1 MC MC C1 C1 MC C1 MC MC MC C1 MC MC C1 MC MC C1 C1 C1 C1 C1 C2 C2 C2
MC C1 C1 C1 MC MC C1 C1 MC C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC MC MC C2 MC
C1 C1 MC MC C1 C1 C1 MC MC C1 MC MC MC MC MC MC MC C1 MC MC MC MC C2 MC
C1 MC C1 C1 C1 MC MC C1 C1 C1 C1 MC MC MC MC MC C1 C1 C1 MC C1 C2 C2 C2
MC MC C1 MC MC C1 C1 C1 MC MC MC C1 MC MC MC C1 C1 MC MC MC C1 MC C2 MC
C1 C1 C1 C1 C1 C1 MC MC C1 MC C1 C1 C1 MC C1 C1 MC C1 MC C1 C1 MC C2 MC
MC MC MC MC MC MC C1 C1 C1 MC C1 MC MC MC C1 MC MC C1 MC C1 MC C2 C2 C2
MC MC MC MC MC C1 C1 MC MC MC C1 C1 MC C1 C1 C1 C1 C1 MC C1 C1 MC C2 MC
C1 MC MC MC C1 C1 MC C1 MC C1 C1 MC MC C1 MC MC MC MC MC C1 MC MC C2 MC
C1 Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb MC C1 C1 C1 C1 MC MC MC C1 C1 MC C2 C2 C2
C1 MC MC C1 MC C1 C1 C1 MC C1 C1 C1 MC MC MC C1 MC C1 C1 MC MC MC C2 MC
C1 C1 C1 C1 MC C1 MC MC MC C1 MC MC C1 MC C1 C1 MC C1 MC C1 C1 MC C2 MC
MC MC MC MC MC C1 C1 MC C1 C1 C1 C1 C1 MC C1 MC MC C1 MC C1 MC C2 C2 C2
MC MC MC MC C1 C1 MC MC C1 MC MC MC MC MC C1 C1 C1 C1 MC C1 C1 MC C2 MC
C1 MC MC C1 C1 MC C1 C1 C1 C1 MC MC MC C1 C1 MC MC MC MC C1 MC MC C2 MC
C1 C1 C1 C1 MC MC C1 MC MC MC C1 MC C1 C1 MC C1 MC MC C1 C1 MC C2 C2 C2
C1 MC MC MC C1 C1 C1 C1 MC C1 C1 MC C1 MC MC C1 C1 C1 C1 MC MC MC C2 MC
C1 C1 MC C1 C1 MC MC MC MC C1 MC MC C1 C1 C1 C1 MC MC MC C1 C1 MC C2 MC
MC MC MC C1 MC C1 MC MC C1 C1 C1 C1 C1 MC MC MC C1 MC C1 C1 MC C2 C2 C2
MC MC C1 C1 MC C1 C1 C1 C1 MC MC MC MC C1 MC C1 C1 MC C1 MC C1 MC C2 MC
C1 C1 C1 MC MC C1 MC MC MC C1 MC MC C1 C1 MC C1 MC MC C1 MC C1 MC C2 MC
MC MC MC C1 C1 C1 C1 MC C1 C1 C1 C1 C1 MC MC C1 C1 C1 C1 MC C1 C2 C2 C2
C1 MC C1 C1 MC MC MC MC C1 MC MC MC MC C1 C1 C1 MC MC MC MC C1 MC C2 MC
MC MC C1 MC C1 MC MC C1 C1 C1 MC MC C1 C1 MC MC C1 MC MC C1 C1 MC C2 MC
C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1
C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2
C1 C1 C1 C1 C1 Blank C1 Blank C1 C1 Blank Blank Blank C1 C1 Blank C1 Blank Blank Blank C1 Blank Blank Blank
C2 MC C2 C2 MC C2 C2 MC C2 C2 C1 C2 C2 C1 C2 C2 C1 C2 C2 C1 C2 C2 MC C2
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1

Pattern 1

Pattern 1 Dataset

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
None None None None None None None None K2TOG K2TOG Blank SSK SSK None None None None None None None None MC C2 MC
None None None None None None None K2TOG K2TOG Blank C1 Blank SSK SSK None None None None None None None C2 C2 C2
None None None None None None K2TOG K2TOG C1 Blank C1 Blank Blank SSK SSK None None None None None None MC C2 MC
None None None None None K2TOG K2TOG C1 Blank Blank C1 Blank Blank Blank SSK SSK None None None None None MC C2 MC
None None None None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK None None None None C2 C2 C2
None None None K2TOG C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank SSK SSK None None None MC C2 MC
None None K2TOG K2TOG Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank SSK SSK None None MC C2 MC
None K2TOG K2TOG Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank SSK SSK None C2 C2 C2
K2TOG K2TOG C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank SSK SSK MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C2 C2 C2
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C2 C2 C2
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C2 C2 C2
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank C1_Thumb Blank_Thumb Blank_Thumb C1_Thumb Blank_Thumb Blank_Thumb C1_Thumb Blank_Thumb Blank_Thumb C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C2 C2 C2
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C2 C2 C2
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank C2 C2 C2
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank MC C2 MC
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C2 C2 C2
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank MC C2 MC
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank MC C2 MC
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC
C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank
Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank Blank
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank
C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank
Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC

How did we do it?

To generate the pattern, we set up a looping structure to go row by row and stitch by stitch, just like you’d knit!

for(i in 1:nrow(template)){ # Every row
  for(j in 1:ncol(template)){ # Every stitch
    # Generate the pattern
  }
}

CA Generator

Generating a random knitting pattern

Random Pattern

Random Dataset

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
None None None None None None None None K2TOG K2TOG C1 SSK SSK None None None None None None None None MC C2 MC
None None None None None None None K2TOG K2TOG Blank C1 Blank SSK SSK None None None None None None None C2 C2 C2
None None None None None None K2TOG K2TOG C1 Blank Blank C1 Blank SSK SSK None None None None None None MC C2 MC
None None None None None K2TOG K2TOG Blank Blank C1 Blank C1 Blank C1 SSK SSK None None None None None MC C2 MC
None None None None K2TOG K2TOG Blank Blank C1 Blank Blank C1 C1 Blank C1 SSK SSK None None None None C2 C2 C2
None None None K2TOG K2TOG C1 Blank Blank Blank Blank C1 C1 Blank Blank Blank Blank SSK SSK None None None MC C2 MC
None None K2TOG K2TOG C1 Blank Blank Blank Blank C1 Blank C1 Blank Blank C1 C1 Blank SSK SSK None None MC C2 MC
None K2TOG K2TOG Blank Blank C1 Blank C1 Blank C1 C1 Blank Blank Blank C1 C1 Blank C1 SSK SSK None C2 C2 C2
K2TOG K2TOG Blank C1 C1 Blank Blank Blank C1 Blank Blank Blank Blank Blank Blank C1 Blank Blank Blank SSK SSK MC C2 MC
C1 C1 Blank Blank C1 C1 Blank C1 Blank Blank Blank C1 Blank Blank Blank C1 Blank C1 Blank C1 Blank MC C2 MC
C1 Blank C1 Blank Blank Blank C1 C1 Blank C1 Blank C1 C1 Blank Blank Blank Blank C1 Blank C1 Blank C2 C2 C2
Blank C1 Blank C1 C1 C1 C1 C1 Blank C1 Blank Blank Blank Blank Blank Blank Blank C1 Blank Blank C1 MC C2 MC
Blank C1 Blank Blank C1 C1 C1 Blank C1 Blank Blank Blank C1 Blank Blank Blank Blank C1 C1 C1 Blank MC C2 MC
Blank Blank C1 C1 Blank Blank C1 Blank Blank Blank Blank C1 Blank C1 Blank C1 Blank Blank C1 C1 C1 C2 C2 C2
Blank C1 C1 C1 Blank Blank C1 Blank C1 Blank Blank Blank Blank Blank Blank C1 Blank Blank Blank C1 C1 MC C2 MC
Blank Blank C1 Blank Blank Blank C1 Blank C1 C1 Blank C1 Blank C1 Blank C1 Blank C1 Blank Blank C1 MC C2 MC
C1 Blank C1 Blank Blank C1 Blank Blank Blank C1 Blank Blank Blank C1 Blank Blank C1 Blank Blank C1 C1 C2 C2 C2
C1 C1 Blank C1 Blank Blank Blank Blank Blank C1 Blank C1 Blank Blank Blank Blank Blank C1 C1 Blank C1 MC C2 MC
Blank Blank C1 Blank C1 Blank C1 C1 C1 Blank Blank C1 Blank C1 Blank C1 Blank Blank Blank Blank C1 MC C2 MC
Blank Blank Blank Blank Blank Blank Blank C1 Blank C1 Blank C1 C1 C1 Blank C1 Blank C1 C1 Blank C1 C2 C2 C2
C1 Blank Blank Blank C1 C1 Blank Blank C1 Blank C1 Blank Blank Blank Blank Blank Blank C1 C1 Blank C1 MC C2 MC
C1 C1 Blank C1 Blank Blank C1 Blank Blank Blank C1 Blank Blank C1 Blank C1 Blank Blank Blank Blank C1 MC C2 MC
Blank C1 Blank Blank C1 Blank Blank Blank Blank Blank Blank C1 C1 Blank Blank C1 C1 Blank C1 Blank C1 C2 C2 C2
Blank Blank Blank Blank Blank C1 C1 Blank C1 C1 C1 Blank Blank C1 C1 Blank Blank C1 Blank Blank Blank MC C2 MC
Blank C1 C1 C1 C1 Blank Blank C1 Blank C1 Blank Blank Blank Blank C1 Blank Blank Blank C1 Blank Blank MC C2 MC
Blank Blank C1 Blank Blank C1 C1 Blank C1 Blank Blank Blank C1 Blank Blank C1 Blank Blank C1 Blank C1 C2 C2 C2
C1 C1 Blank Blank C1 Blank Blank C1 Blank C1 Blank Blank C1 C1 Blank Blank Blank C1 Blank C1 Blank MC C2 MC
C1 C1 C1 Blank C1 Blank C1 Blank Blank C1 C1 C1 Blank Blank Blank Blank Blank C1 Blank Blank Blank MC C2 MC
C1 Blank C1 Blank Blank Blank Blank Blank C1 C1 Blank Blank Blank C1 Blank C1 C1 Blank C1 Blank Blank C2 C2 C2
Blank C1 Blank C1 Blank Blank Blank Blank Blank C1 C1 Blank Blank Blank C1 C1 Blank C1 Blank C1 Blank MC C2 MC
C1 Blank Blank C1 C1 Blank Blank Blank C1 Blank Blank Blank C1 Blank C1 Blank C1 C1 C1 Blank C1 MC C2 MC
C1 Blank_Thumb Blank_Thumb Blank_Thumb Blank_Thumb C1_Thumb C1_Thumb Blank_Thumb Blank_Thumb Blank_Thumb Blank Blank Blank C1 Blank C1 C1 C1 Blank Blank C1 C2 C2 C2
C1 C1 C1 C1 C1 Blank Blank Blank Blank C1 Blank C1 Blank C1 Blank Blank Blank Blank Blank Blank C1 MC C2 MC
Blank Blank Blank C1 Blank C1 Blank C1 C1 Blank Blank Blank C1 Blank Blank C1 C1 Blank Blank C1 C1 MC C2 MC
Blank C1 Blank Blank C1 Blank C1 Blank Blank C1 Blank Blank Blank Blank C1 C1 Blank C1 Blank Blank C1 C2 C2 C2
C1 C1 Blank C1 Blank Blank Blank C1 C1 Blank C1 Blank C1 Blank Blank Blank C1 Blank Blank Blank C1 MC C2 MC
C1 C1 C1 C1 Blank Blank Blank C1 C1 Blank C1 Blank Blank Blank C1 Blank Blank C1 Blank Blank C1 MC C2 MC
Blank C1 C1 Blank Blank Blank Blank Blank C1 C1 Blank Blank C1 C1 C1 Blank Blank Blank C1 C1 Blank C2 C2 C2
C1 C1 C1 C1 Blank Blank C1 C1 Blank Blank Blank C1 Blank Blank C1 Blank Blank Blank C1 Blank Blank MC C2 MC
Blank C1 Blank C1 Blank Blank C1 Blank C1 C1 C1 Blank Blank C1 Blank Blank C1 Blank C1 C1 Blank MC C2 MC
Blank C1 C1 C1 C1 C1 Blank C1 C1 Blank Blank C1 Blank Blank Blank C1 Blank Blank Blank C1 Blank C2 C2 C2
Blank Blank Blank Blank C1 Blank C1 C1 C1 Blank C1 Blank Blank Blank Blank Blank Blank C1 Blank C1 C1 MC C2 MC
Blank C1 Blank C1 Blank Blank C1 Blank C1 C1 C1 Blank C1 C1 Blank C1 Blank Blank Blank C1 Blank MC C2 MC
Blank Blank Blank Blank Blank C1 C1 C1 Blank Blank C1 Blank C1 C1 C1 Blank C1 C1 Blank C1 Blank C2 C2 C2
C1 Blank C1 C1 C1 Blank Blank Blank C1 Blank Blank C1 Blank Blank Blank Blank Blank C1 Blank Blank C1 MC C2 MC
Blank C1 Blank C1 Blank C1 C1 Blank Blank Blank Blank C1 C1 Blank C1 Blank C1 Blank C1 C1 Blank MC C2 MC
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC
C1 C1 Blank Blank C1 C1 Blank Blank C1 C1 Blank C1 C1 C1 Blank Blank Blank Blank Blank Blank Blank Blank Blank C1
Blank Blank C1 C1 C1 Blank Blank Blank C1 C1 Blank C1 Blank Blank Blank C1 C1 Blank C1 Blank Blank Blank C1 Blank
C1 Blank C1 Blank Blank C1 Blank Blank C1 C1 Blank C1 C1 Blank C1 Blank Blank Blank Blank Blank C1 C1 Blank Blank
Blank C1 Blank Blank C1 Blank C1 Blank C1 C1 C1 Blank Blank C1 Blank Blank C1 Blank Blank Blank Blank C1 Blank C1
Blank Blank Blank Blank Blank Blank C1 Blank C1 Blank Blank C1 C1 C1 Blank C1 Blank Blank C1 Blank C1 C1 C1 Blank
C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 MC MC MC

Code Used

for(i in 1:nrow(random_pattern)){
  stitches <- sample(1:24, size = 10, replace = FALSE)
  for(j in 1:length(stitches)){
    if(random_pattern[i, stitches[j]] == "Blank"){
      random_pattern[i, stitches[j]] <- "C1"
    }
    if(random_pattern[i, stitches[j]] == "Blank_Thumb"){
      random_pattern[i, stitches[j]] <- "C1_Thumb"
    }
  }
}

Random with Fancy Cuff

Random repeating

Swatch patterns 2

Swatch patterns 3

Swatch patterns 4

Swatch patterns 5

Swatch patterns 6