All plants need a number of inputs to grow well: light, water, nutrients, carbon dioxide; as well as an appropriate environment (temperature, humidity) in which to grow.
Different plant species naturally vary in their requirements for each of these - lettuce can grow well under relatively low light conditions and cooler temperatures than say, peppers. In terms of temperature and light requirement, cannabis is more like pepper than it is like lettuce.
Cannabis will survive temperatures in the 30s at night, but this puts a lot of stress on the plant and they will not grow well. Even temperatures in the mid 40s are not ideal - like pepper and tomato, in our experience cannabis really needs nighttime lows of 50+ to thrive. This is the limiting factor for growth in the climate in Oregon, as nighttime lows are only reliably in the 50s from June-August. The use of greenhouses dramatically extends the season for optimal growth in our climate. The plants grow optimally with daytime temperatures of 75-85F; temperatures above 90 start to cause stress and will slow growth.
A lot of people overestimate the need for light - the fact is that there is plenty of light to grow high quality plants at least from March-October in Oregon. What limits growth during this time is outdoor temperatures. At the same time, in a warm indoor or greenhouse space, carbon dioxide can become limiting. By adding carbon dioxide we can force plants to grow faster - but only if the temperatures and light levels match the carbon dioxide requirement!
It is a complicated relationship between each of the inputs, the plant, and the environment - if any one piece is missing the plant will not perform as well as it could otherwise, and any time you change one variable you potentially alter how the plant will react to the others!
Becoming a better grower requires a time commitment - it is important to spend time with your plants, observe them, ask yourself what is limiting their growth, and experiment!