A filesystem is both a reference to a tree structure of directories and files as well as a overarching structure that can be placed on a physical medium such as a hard drive or other similar types of medium.
At the end of of the day they're both layers of abstraction that people create so that things are standardized.
The directories + files analogy used is to mimic how people think, with respect to the physical world for storing items (files) inside of something (folders).
So too is a filesystem such as ext4 of fat32. Here it might not be so obvious, but the structure that this type of filesystem provides serves the same purpose, just at a lower level.
For example, a raw disk is just a sequence of bits. By creating a structure on top of it using inodes, we're able to access sections of the disk in an organized methodical fashion.
Notice the image of the inode structure (from wikipedia article titled: inode pointer structure
The structure of a filesystem representing files + directories
One thing you'll notice as you continue to study computer architectures is that the same concepts are used over and over again. The notion of hostnames is nested too.
^------------>| .com | | .net |
| '------' '------'
| google | | stackexchange |
| www | | unix |
Or in programming, class inheritance (Ruby):
puts "inhale and exhale"
class Cat < Mammal
jake = Cat.new