I am using matplotlib and I’m finding some problems when trying to plot large vectors.
sometimes get “MemoryError”
My question is whether there is any way to reduce the scale of values that i need to plot ?

In this example I’m plotting a vector with size 2647296!
is there any way to plot the same values on a smaller scale?
It is very unlikely that you have so much resolution on your display that you can see 2.6 million data points in your plot. A simple way to plot less data is to sample e.g. every 1000th point:
plot(x[::1000]). If that loses too much and it is e.g. important to see the extremal values, you could write some code to split the long vector into suitably many parts and take the minimum and maximum of each part, and plot those: