我有一个Python脚本,我想用它来学习iPython Notebook,我遇到了一个问题,它会在文本中显示图形。
以下是我正在使用的代码的一部分。
#import baseline and iteration files
df_final = pd.read_csv(os.path.join(CSV_dir, 'mean_prop_iter.csv'))
baseline = pd.read_csv(os.path.join(CSV_dir, 'mean_prop_base.csv'))
## create base figure
fig = plt.figure()
ax1 = fig.add_subplot(111)
## create histogram
df_final['iter_prop_in'].hist(bins=[0.5, 0.51, 0.52, 0.53, 0.54,
0.55, 0.56, 0.57, 0.58, 0.59, 0.60],
rwidth=1.0, align='mid', facecolor='red')
此时一切都很好。
我的后续命令不是我所期望的。
## define x-axis limits
label_range = np.arange(0.0, 1.1, 0.1)
labels = ax1.set_xticks(label_range)
## turn off ticks along the top and right axes
plt.tick_params(axis='both', top='off', right='off', direction='out')
这里是正确显示新x轴限制但不显示直方图的位置。 y轴刻度限制也变为0到1,这是我不期望的。
如果我在Python 2.7(Anaconda Spyder)中运行相同的命令,则直方图显示为我所期望的。
我做错了什么?
答案 0 :(得分:1)
这是因为您在不同的单元格中在笔记本中执行此操作。您应该将与同一图形相关的绘图命令分组到一个单元格中。
正如您的代码目前所示,笔记本认为您指的是一个新的数字。
不相关的提示:您可以考虑使用Fragment
为与绘图相关的命令添加后缀,这表示返回值输出抑制。省略这种情况往往会在细胞输出中打印出许多乱码。