You can technically evolve a Chikorita into Bayleef using 16 rare candies, and you don’t have to battle. To get it to be a Meganium, 32 rare candies would do the trick.
This works with every Pokémon that evolves via level up. Just feed it rare candies until it hits the level it evolves at.
Another way is via the EXP share. If you put a Pokémon in your party with the EXP share on, it will gain EXP and eventually evolve, if it evolves, once again, through level up. Then it technically won’t participate in the battle, but still gain EXP and evolve.
Some Pokémon can evolve with a stone without leveling up at all. For example Eevee evolves into Flareon, Jolteon, and Vaporeon by using a Fire Stone, Thunder Stone, and Water Stone, respectively. You can do this at any level, so you can have a level 1 Jolteon.
Hope this helps! :)