Which types of Pokemon attacks are effective against which types of Pokemon?

Bug Type
Good against Grass, Psychic, Dark
Bad against Fire, Fighting, Poison, Flying, Ghost, Steel

Dark Type
Good against: Ghost, Psychic
Bad against: Fighting, Dark Steel

Dragon Type
Good against:  Dragon
Bad against:  Ice, Steel

Electric Type
Good against: Water, Flying
Bad against: Grass, Electric, Ground, Dragon

Fighting Type
Good against: Normal, Ice, Rock, Dark, Steel
Bad against: Poison, Flying, Bug, Ghost , Psychic

Fire Type
Good against: Grass, Ice, Bug, Steel
Bad against: Water, Fire, Dragon, Rock

Flying Type
Good against: Grass, Fighting, Bug
Bad against: Electric, Rock, Steel

Ghost Type
Good against: Ghost, Psychic
Bad against: Dark, Steel

Grass Type
Good against: Water, Ground, Rock
Bad against: Fire, Grass, Poison, Flying, Bug, Dragon, Steel

Ground Type
Good against: Fire, Poison, Electric, Rock, Steel
Bad against: Grass, Flying, Bug

Ice Type
Good against: Grass, Ground, Flying, Dragon
Bad against: Water, Ice, Fire, Steel

Normal Type
Bad against:  Fighting, Ghost, Rock, Steel

Poison
Good against: Grass
Bad against: Poison, Ground, Rock, Ghost, Steel

Psychic Type
Good against: Fighting, Poison
Bad against: Psychic, Dark, Steel

Rock Type
Good against: Ice, Fire, Flying, Bug
Bad against: Fighting, Ground, Steel

Steel Type
Good against: Ice, Rock
Bad against: Water, Fire, Water, Steel

Water Type
Good against:  Fire, Ground, Rock
Bad against:  Water, Grass, Dragon