Principles are the guiding set and when principles are followed to solve problems patterns are evolved.
Principles and patterns are inseparable. Usually when we observe a large set of problem then we can see categories in which we can categorize the problems. Over a period of time software development community has seen many problems and also have observed categories. Such major categories are Object Creation, Behavior addition and modification, and structuring code to avoid messy classes. Now when people followed good principles to solve these problem, again it was observed that solutions follow a kind of pattern. Such patterns were grouped togather by famous GOF
in a book.
IoC
is a principle, many software implement the principle like Spring. IoC solves many code messups and maintainability issues. If someone calls it a pattern its not wrong to say so. There is not much gain in arguing if its a pattern or principle as Both are inseparable.