Stax, 20 bytes
ÿ(,╥-║)♂^:Mxä²çα₧<v▬ Unpacked, ungolfed, and commented, it looks like this.
" vibgyor" string literal ,^:m increment input, then repeat literal to that length |] get all prefixes Mr rectangularize, transpose array of arrays, then reverse this is the same as rotating counter-clockwise m map over each row with the rest of the program, then implicitly output the stack starts with just the row itself _h push the first character of the row _r push the reversed row L wrap the entire stack in a single array