Dav*_*ang 14 python matplotlib python-2.7 pandas jupyter-notebook
我知道如何在Jupyter Notebook中显示彼此相邻(水平)的两个图,但我不知道是否有办法显示旁边有数据框的图.我想它看起来像这样:
但是,我无法做到这一点,每当我打印出数据帧时,它都显示在我的情节下面......
这是一个类似的问题,但我也在同一个单元格中输出我希望垂直定向的图.
我目前有这个:
# line plots
df_plot[['DGO %chg','DLM %chg']].plot(figsize=(15,5),grid=True)
plt.ylim((-ylim,ylim))
df_plot[['Diff']].plot(kind='area',color='lightgrey',figsize=(15,1))
plt.xticks([])
plt.xlabel('')
plt.ylim((0,ylim_diff))
plt.show()
# scatter plots
plt.scatter(x=df_scat[:-7]['DGO'],y=df_scat[:-7]['DLM'])
plt.scatter(x=df_scat[-7:]['DGO'],y=df_scat[-7:]['DLM'],color='red')
plt.title('%s Cluster Last 7 Days'%asset)
plt.show()
# display dataframe
# display(df_scat[['DGO','DLM']][:10]) <-- prints underneath, not working
Run Code Online (Sandbox Code Playgroud)
红框显示我希望我的数据框出现的位置.有没有人对如何做到这一点有任何想法?
谢谢你的想法!
Cha*_*arr 12
我不知道如何控制DataFrame直接显示的位置 - 但我过去使用的一个解决方法是将DataFrame渲染为matplotlib表,然后它应该像任何其他matplotlib图一样.您可以使用:
import matplotlib.pyplot as plt
from matplotlib import six
import pandas as pd
import numpy as np
df = pd.DataFrame()
df['x'] = np.arange(0,11)
df['y'] = df['x']*2
fig = plt.figure(figsize=(8,5))
ax1 = fig.add_subplot(121)
ax1.scatter(x=df['x'],y=df['y'])
ax2 = fig.add_subplot(122)
font_size=14
bbox=[0, 0, 1, 1]
ax2.axis('off')
mpl_table = ax2.table(cellText = df.values, rowLabels = df.index, bbox=bbox, colLabels=df.columns)
mpl_table.auto_set_font_size(False)
mpl_table.set_fontsize(font_size)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6243 次 |
| 最近记录: |