You should forget about power readings until you can read both the voltage and current separately, and you get sensible numbers to work with.
Are you able to read anything coming from your MCP3008? What are the numbers you are seeing inside the ESP32, immediately after you read the ADC; and are they reasonable? With no voltage input or current, I’d expect a constant value - maybe with a few digits of noise - that is about half the maximum from the ADC (half of 1024). Anything a long way from that is probably wrong, and you might have an error in your hardware, or you might not be controlling and reading the MCP3008 correctly.
Think about it: P = V × I. If either V = 0 or I = 0, then P = 0. Am I correct?
How is power factor calculated? What is the formula used in emonLib? What are the values of those two variables now? Or, how can you have a power factor when you have no power?
Just link the voltage and the current inputs at the ADC pins.