ipysheets 修改布局:换行、列宽
ipysheets modify layout: wrap text, column width
我正在使用 ipysheets 在 jupyter 中显示交互式 sheet。
我正在关注文档:
https://readthedocs.org/projects/ipysheet/downloads/pdf/latest/
我只是不知道如何在创建后更改 ipysheet 的布局。
我想要特定的列宽,并使文本相对于特定列的内容换行(即,如果文本太长,则强制在单元格内换行)
import ipysheet as ip
import pandas as pd
API_link_to_data='https://raw.githubusercontent.com/jenfly/opsd/master/opsd_germany_daily.csv'
energyDF = pd.read_csv(API_link_to_data)
energy_ip = ip.sheet(ip.from_dataframe(energyDF))
energy_ip
当打印出 energy_ip(一个 ipysheet table 对象)时,我希望能够固定列的宽度(以像素为单位或以像素为单位)。
不过好像没有这样的属性:
ipysheet.easy.column(column,
value,
row_start=0,
row_end=None,
type=None,
color=None,
background_color=None,
font_style=None,
font_weight=None,
style=None,
choice=None,
read_only=False,
numeric_format=’0.000’,
date_format=’YYYY/MM/DD’,
renderer=None, **kwargs)
有什么想法吗?
您需要创建样式才能实现此目的。
尝试使用 style={'width:50px'}
将执行以下操作,希望它能回答您的问题:
import ipysheet as ip
import pandas as pd
import ipywidgets as w
API_link_to_data='https://raw.githubusercontent.com/jenfly/opsd/master/opsd_germany_daily.csv'
energyDF = pd.read_csv(API_link_to_data)
energyDF['comment'] = 'this column will have line breaks'
energy_ip = ip.sheet(ip.from_dataframe(energyDF))
# set column widths
energy_ip.column_width = [10,10,5,5,5,10]
energy_ip.layout = w.Layout(width='500px',height='100%')
for k,c in enumerate(energy_ip.cells):
c.style['textAlign']='center'
c.send_state()
energy_ip
我正在使用 ipysheets 在 jupyter 中显示交互式 sheet。
我正在关注文档: https://readthedocs.org/projects/ipysheet/downloads/pdf/latest/
我只是不知道如何在创建后更改 ipysheet 的布局。
我想要特定的列宽,并使文本相对于特定列的内容换行(即,如果文本太长,则强制在单元格内换行)
import ipysheet as ip
import pandas as pd
API_link_to_data='https://raw.githubusercontent.com/jenfly/opsd/master/opsd_germany_daily.csv'
energyDF = pd.read_csv(API_link_to_data)
energy_ip = ip.sheet(ip.from_dataframe(energyDF))
energy_ip
当打印出 energy_ip(一个 ipysheet table 对象)时,我希望能够固定列的宽度(以像素为单位或以像素为单位)。
不过好像没有这样的属性:
ipysheet.easy.column(column,
value,
row_start=0,
row_end=None,
type=None,
color=None,
background_color=None,
font_style=None,
font_weight=None,
style=None,
choice=None,
read_only=False,
numeric_format=’0.000’,
date_format=’YYYY/MM/DD’,
renderer=None, **kwargs)
有什么想法吗?
您需要创建样式才能实现此目的。 尝试使用 style={'width:50px'}
将执行以下操作,希望它能回答您的问题:
import ipysheet as ip
import pandas as pd
import ipywidgets as w
API_link_to_data='https://raw.githubusercontent.com/jenfly/opsd/master/opsd_germany_daily.csv'
energyDF = pd.read_csv(API_link_to_data)
energyDF['comment'] = 'this column will have line breaks'
energy_ip = ip.sheet(ip.from_dataframe(energyDF))
# set column widths
energy_ip.column_width = [10,10,5,5,5,10]
energy_ip.layout = w.Layout(width='500px',height='100%')
for k,c in enumerate(energy_ip.cells):
c.style['textAlign']='center'
c.send_state()
energy_ip