Voltage[v_,i_,B_] := If[Abs[v]>.1,((Abs[v])/v)B*i,(B/(.1))*i*v]
Qline[R_,Vcc_,Vce_] := If[Vcc>0,
If[Vce<0,0,(((-Vcc)/R)/Vcc)*Vce + (Vcc/R)],
If[Vce>0,0,(((-Vcc)/R)/Vcc)*Vce + (Vcc/R)]
]

PlotVBeta[B_]:=Plot[{
Voltage[x,0],
Voltage[x,10*(10^(-6)),B],
Voltage[x,20*(10^(-6)),B],
Voltage[x,30*(10^(-6)),B],
Voltage[x,40*(10^(-6)),B],
Voltage[x,50*(10^(-6)),B],
Qline[2.7*(10^3),15,x],
Qline[2.7*(10^3),-15,x],
Qline[2.8*(10^3),15,x],
Qline[2.8*(10^3),-15,x],
Qline[2.8*(10^3),15,x],
Qline[6*(10^3),-15,x]
},{x,-15,15},PlotLegends -> Placed[{
"0μA","10μA","20μA","30μA","40μA","50μA",
"NPN Fixed Bias",
"PNP Fixed Bias",
"NPN 4-R Bias",
"PNP 4-R Bias",
"NPN-PNP Bias Ckt (NPN)",
"NPN-PNP Bias Ckt (PNP)"
},Below],
Ticks->{{
-16,
-14,
-12,
-10,
-8,
-6,
-4,
-2,
0,
2,
4,
6,
8,
10,
12,
14,
16},
{-.01,
-.009,
-.008,
-.007,
-.006,
-.005,
-.004,
-.003,
-.002,
-.001,
0,
.001,
.002,
.003,
.004,
.005,
.006,
.007,
.008,
.009,
.01
}},
AxesLabel->{"(Subscript[V, ce]) (Volts)","(Subscript[I, c]) (Amps)"}
]

Peter Chinetti Lab #5 Prelim Graphs

β = 200

PlotVBeta[200]

β = 300

PlotVBeta[300]

β = 20

B=20
Plot[{
Voltage[x,0],
Voltage[x,10*(10^(-3)),B],
Voltage[x,20*(10^(-3)),B],
Voltage[x,30*(10^(-3)),B],
Voltage[x,40*(10^(-3)),B],
Voltage[x,50*(10^(-3)),B]
},{x,-15,15},PlotLegends -> Placed[{
"0mA","10mA","20mA","30mA","40mA","50mA"
},Below],
Ticks->{{
-16,
-14,
-12,
-10,
-8,
-6,
-4,
-2,
0,
2,
4,
6,
8,
10,
12,
14,
16}},
AxesLabel->{"(Subscript[V, ce]) (Volts)","(Subscript[I, c]) (Amps)"}
]