Compare commits
No commits in common. "46e6239b9a9ac0afdf3cf87d02b05e9134f34d6d" and "ecb444e430f8a03bd95e5838a86fe325116b0c4c" have entirely different histories.
46e6239b9a
...
ecb444e430
8 changed files with 9 additions and 18108 deletions
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -194,9 +194,6 @@ def decorate_ax(ax, plot_config):
|
||||||
row.mode= "expand"
|
row.mode= "expand"
|
||||||
row.align="right"
|
row.align="right"
|
||||||
|
|
||||||
if('legend_title' in plot_config):
|
|
||||||
legend.set_title(plot_config['legend_title']);
|
|
||||||
|
|
||||||
ax.grid(True);
|
ax.grid(True);
|
||||||
|
|
||||||
def plot_single_graph(fig, plot_config, plot_data):
|
def plot_single_graph(fig, plot_config, plot_data):
|
||||||
|
@ -210,7 +207,7 @@ def plot_single_graph(fig, plot_config, plot_data):
|
||||||
x_data = plot_data[x_key];
|
x_data = plot_data[x_key];
|
||||||
y_data = plot_data[y_key];
|
y_data = plot_data[y_key];
|
||||||
|
|
||||||
ax.plot(x_data, y_data, linewidth=plot_config.get('linewidth'));
|
ax.plot(x_data, y_data);
|
||||||
|
|
||||||
if(not 'xformatter' in plot_config):
|
if(not 'xformatter' in plot_config):
|
||||||
plot_config['xformatter'] = 'engineering';
|
plot_config['xformatter'] = 'engineering';
|
||||||
|
@ -234,19 +231,16 @@ def plot_lt_sweep(fig, plot_config, plot_data):
|
||||||
if(y_key == None):
|
if(y_key == None):
|
||||||
raise RuntimeError("No Y-Data Key (`y_key`) specified for plot!")
|
raise RuntimeError("No Y-Data Key (`y_key`) specified for plot!")
|
||||||
|
|
||||||
num_steps = len(plot_data['steps'])
|
|
||||||
|
|
||||||
for idx, step in enumerate(plot_data['steps']):
|
|
||||||
plot_params = dict()
|
|
||||||
plot_params['label'] = step['step']
|
|
||||||
|
|
||||||
if(plot_config.get('colourmap', 'coolwarm') == 'coolwarm'):
|
if(plot_config.get('colourmap', 'coolwarm') == 'coolwarm'):
|
||||||
|
num_steps = len(plot_data['steps'])
|
||||||
cmap = plt.cm.coolwarm
|
cmap = plt.cm.coolwarm
|
||||||
plot_params['color'] = cmap(idx/(num_steps-1))
|
|
||||||
|
|
||||||
plot_params['linewidth'] = plot_config.get('linewidth');
|
for idx, step in enumerate(plot_data['steps']):
|
||||||
|
ax.plot(step[x_key], step[y_key], color=cmap(idx/(num_steps-1)), label=step['step']);
|
||||||
ax.plot(step[x_key], step[y_key], **plot_params)
|
else:
|
||||||
|
for idx, step in enumerate(plot_data['steps']):
|
||||||
|
ax.plot(step[x_key], step[y_key], label=step['step']);
|
||||||
|
|
||||||
if(not 'xformatter' in plot_config):
|
if(not 'xformatter' in plot_config):
|
||||||
plot_config['xformatter'] = 'engineering';
|
plot_config['xformatter'] = 'engineering';
|
||||||
|
@ -272,45 +266,9 @@ def perform_bandwidth_normalization(plot_data, plot_config):
|
||||||
|
|
||||||
step[plot_config['y_key']] = new_y_data
|
step[plot_config['y_key']] = new_y_data
|
||||||
|
|
||||||
def perform_peak_normalization(plot_data, plot_config):
|
|
||||||
print("Normalizing peak height to 1")
|
|
||||||
|
|
||||||
for step in plot_data['steps']:
|
|
||||||
y_data = step[plot_config['y_key']]
|
|
||||||
new_y_data = []
|
|
||||||
|
|
||||||
y_max = max(y_data)
|
|
||||||
y_min = min(y_data)
|
|
||||||
|
|
||||||
scaling_factor = 0.1 + 0.9*(y_max if (y_max > (-y_min)) else y_min)
|
|
||||||
|
|
||||||
for datapoint in y_data:
|
|
||||||
new_y_data.append(datapoint / scaling_factor)
|
|
||||||
|
|
||||||
step[plot_config['y_key']] = new_y_data
|
|
||||||
|
|
||||||
def perform_offset_removal(plot_data, plot_config):
|
|
||||||
print("Removing offset")
|
|
||||||
|
|
||||||
for step in plot_data['steps']:
|
|
||||||
y_data = step[plot_config['y_key']]
|
|
||||||
new_y_data = []
|
|
||||||
|
|
||||||
offset_value = np.percentile(y_data, 30) * 0.8
|
|
||||||
|
|
||||||
for datapoint in y_data:
|
|
||||||
new_y_data.append(datapoint - offset_value)
|
|
||||||
|
|
||||||
step[plot_config['y_key']] = new_y_data
|
|
||||||
|
|
||||||
|
|
||||||
def perform_processing_step(data_process_step, plot_data, plot_config):
|
def perform_processing_step(data_process_step, plot_data, plot_config):
|
||||||
if(data_process_step == 'normalize_bandwidth'):
|
if(data_process_step == 'normalize_bandwidth'):
|
||||||
perform_bandwidth_normalization(plot_data, plot_config)
|
perform_bandwidth_normalization(plot_data, plot_config)
|
||||||
if(data_process_step == 'remove_offset'):
|
|
||||||
perform_offset_removal(plot_data, plot_config)
|
|
||||||
if(data_process_step == 'normalize_peak'):
|
|
||||||
perform_peak_normalization(plot_data, plot_config)
|
|
||||||
|
|
||||||
def generate_plot(plot_config):
|
def generate_plot(plot_config):
|
||||||
global YAML_DIR;
|
global YAML_DIR;
|
||||||
|
|
|
@ -7,56 +7,6 @@ defaults:
|
||||||
Cin: $C_{in}$
|
Cin: $C_{in}$
|
||||||
|
|
||||||
plots:
|
plots:
|
||||||
- loadtype: multicsv
|
|
||||||
load:
|
|
||||||
Gemitiv: IMS Measurements/Spectrum_7.csv
|
|
||||||
HighTIME: IMS Measurements/Spectrum_23.csv
|
|
||||||
|
|
||||||
load_values: ["time", "voltage"]
|
|
||||||
|
|
||||||
type: lt_sweep
|
|
||||||
|
|
||||||
data_processing_steps:
|
|
||||||
- normalize_peak
|
|
||||||
- remove_offset
|
|
||||||
- normalize_peak
|
|
||||||
|
|
||||||
y_key: voltage
|
|
||||||
x_key: time
|
|
||||||
|
|
||||||
xscale: linear
|
|
||||||
|
|
||||||
xlabel: Zeit (s)
|
|
||||||
ylabel: Normalisierter Messwert (a.u.)
|
|
||||||
|
|
||||||
linewidth: 1
|
|
||||||
|
|
||||||
ofile: IMS Measurements/averaged_compare.png
|
|
||||||
- loadtype: multicsv
|
|
||||||
load:
|
|
||||||
Gemitiv: IMS Measurements/Spectrum_59.csv
|
|
||||||
HighTIME: IMS Measurements/Spectrum_37.csv
|
|
||||||
|
|
||||||
load_values: ["time", "voltage"]
|
|
||||||
|
|
||||||
type: lt_sweep
|
|
||||||
|
|
||||||
data_processing_steps:
|
|
||||||
- normalize_peak
|
|
||||||
- remove_offset
|
|
||||||
- normalize_peak
|
|
||||||
|
|
||||||
y_key: voltage
|
|
||||||
x_key: time
|
|
||||||
|
|
||||||
xscale: linear
|
|
||||||
|
|
||||||
xlabel: Zeit (s)
|
|
||||||
ylabel: Normalisierter Messwert (a.u.)
|
|
||||||
|
|
||||||
linewidth: 0.8
|
|
||||||
|
|
||||||
ofile: IMS Measurements/raw_compare.png
|
|
||||||
- load:
|
- load:
|
||||||
47M N.1: V1_Measurements/V1.1-a1/47M_cap/linearity_1.csv
|
47M N.1: V1_Measurements/V1.1-a1/47M_cap/linearity_1.csv
|
||||||
47M N.2: V1_Measurements/V1.1-a1/47M_cap/linearity_2.csv
|
47M N.2: V1_Measurements/V1.1-a1/47M_cap/linearity_2.csv
|
||||||
|
@ -718,7 +668,6 @@ plots:
|
||||||
y_key: V(n002) dB
|
y_key: V(n002) dB
|
||||||
|
|
||||||
title: Verstärkung bei variiertem GBWP
|
title: Verstärkung bei variiertem GBWP
|
||||||
legend_title: GBWP
|
|
||||||
ylabel: Normalisierte Verstärkung (dB)
|
ylabel: Normalisierte Verstärkung (dB)
|
||||||
|
|
||||||
- load: DesignEstimate/CompositeStage_ADA4817_StageAmpSweep_bandwidth.txt
|
- load: DesignEstimate/CompositeStage_ADA4817_StageAmpSweep_bandwidth.txt
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue