On Tue, Jul 28, 2015 at 11:03 AM, Oscar Benjamin <oscar.j.benja...@gmail.com > wrote:
> On Mon, 27 Jul 2015 at 20:53 Colin Ross <colin.ross....@gmail.com> wrote: > >> *Goal:* Shade between I_2 (curve 1) and I_3 (curve 2) with following >> conditions: >> - Green for 0 < x < 4 >> - Red for 4 < x < 12 >> >> *Code: * >> >> *Note: Code currently only attempting to shade green for 0 < x < 4 * >> >> import numpy as np >> import pylab >> from pylab import * >> import matplotlib.pyplot as plt >> import csv >> >> >> # Load data from .txt file >> >> with open('current_mirror_output_swing.csv', 'rb') as f: >> reader = csv.reader(f) >> your_list = list(reader) >> >> data = np.asarray(your_list) >> >> I_ref = np.asarray(data[1:,0]) >> I_1 = data[1:,1] >> I_2 = data[1:,2] >> I_3 = data[1:,3] >> >> # Create an array of x values to fill b/w curves with a certain color. >> >> > Here you specify the X values for the fill shape as going from 0 to 4: > > >> X1 = np.linspace(0.,4.,len(I_3)) >> >> I_ref = I_ref.astype(float)*1000. >> I_1 = I_1.astype(float)*1000. >> I_2 = I_2.astype(float)*1000. >> I_3 = I_3.astype(float)*1000. >> >> >> # Plotting commands. >> >> > Here you specify the X values for the line plots as being whatever I_ref > is (I don't know what it is since I can't see your csv file): > > >> plot(I_ref, I_2, 'r-') >> plot(I_ref, I_3, 'b-') >> title('Current Mirror Output Swing') >> xlabel('$I_{ref}$ (mA)') >> ylabel('I (mA)') >> >> > Try changing this line: > > >> plt.fill_between(X1, I_2, I_3, color = 'g', alpha = '0.5') >> > > to: > > plt.fill_between(I_ref, I_2, I_3, color = 'g', alpha = '0.5') > > and then the filled area should have the same X range as the lines. > > -- > Oscar > Thanks! This works now. _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor