我以科学计数法绘制了x轴,但是10 ^( this )“ this ”不可读:
将其另存为png时,情况会更糟:
我正在使用 GoogleColab 。
数据框:
max_VG total_dose uG time_plot_color
0 1.23599 0.000 25.349
10 1.23740 0.000 45.743
20 1.23584 14214.736 6.107
30 1.23212 49751.576 26.516
40 1.23427 53305.260 46.810
50 1.23227 82905.740 7.137
60 1.22827 156906.940 27.457
70 1.23081 156906.940 47.839
80 1.22877 213017.740 8.149
90 1.22450 325239.340 28.436
100 1.22849 325239.340 48.802
110 1.22595 401273.540 9.145
120 1.22225 538135.100 29.494
130 1.22687 538135.100 49.902
140 1.22438 652308.380 10.241
150 1.22174 823568.300 30.597
160 1.22662 823568.300 51.021
我正在使用 holder 变量和 exec函数作为占位符,因此我可以在多个图中使用同一模板图形
class TemplatePlots:
def __init__(self, plot):
self.plot=plot
def template_simple (self, ax_label='x', ay_label='y', title=None ):
#set up the figure
fig, (ax) = plt.subplots(1, sharex=True, figsize=(14,7))
fig.suptitle(title, fontsize=16)
ax.set_xlabel(ax_label, fontsize=14, color='blue')
ax.set_ylabel(ay_label, fontsize=14, color='blue')
ax.ticklabel_format(style='sci', axis='y', scilimits=(0,0) , useMathText=True)
ax.ticklabel_format(style='sci', axis='x', scilimits=(0,0) , useMathText=True)
#the actual plot
exec(self.plot)
plt.show()
holder='''
plt.scatter(df['total_dose uG'], df['max_VG'],
c= df['time_plot_color']),
clb = plt.colorbar()
clb.ax.set_title('time(s)')
'''
temp=TemplatePlots(holder)
temp.template_simple(ax_label='total_dose uG', ay_label='maxVG (V)', title=f"MaxVG vs Dose: {maxVG['file'].iloc[0]}")