Python 如何在Plotly图表中隐藏图例条目
Plotly是一个开源的Python绘图库,可以生成多种不同类型的图表。Python用户可以使用Plotly创建交互式的基于web的可视化,包括科学图表、3D图表、统计图表、金融图表等。Plotly还可以用于静态文档出版和桌面编辑器,如PyCharm和Spyder。
在本教程中,我们将展示如何使用Plotly隐藏特定字段的图例条目。按照以下步骤来隐藏图例条目。
步骤1
导入 plotly.offline 模块并将其别名设为py。
import plotly.offline as py
步骤2
导入 plotly.graph_objs 模块,并将其别名为 go。
import plotly.graphs_objs as go
步骤3
创建一个包含以下值的数据集 −
data = {
'one':[1,2,3,4,5],
'two':[5,6,7,8,9],
'three':[3,4,5,6,7]
}
df = pd.DataFrame(data)
步骤4
按照以下步骤创建一个散点图:
# generate scatter plot
fig = df.iplot(kind='scatter', asFigure=True)
步骤5
设置“for”循环和“if”条件来隐藏第一列和第三列的图例。
# set for loop for figure data
for trace in fig['data']:
# Hide legend column names not equal to 'two'
if(trace['name'] != 'two'): trace['showlegend'] = False
示例
隐藏图例项的完整代码如下:
import pandas as pd
import plotly.offline as py
import cufflinks as cf
cf.go_offline()
# Create a dataset
data = {
'one':[1,2,3,4,5],
'two':[5,6,7,8,9],
'three':[3,4,5,6,7]
}
# Generate dataframe
df = pd.DataFrame(data)
# generate scatter plot
fig = df.iplot(kind='scatter', asFigure=True)
# set for loop for figure data
for trace in fig['data']:
# hide legend column names not equal to 'two'
if(trace['name'] != 'two'): trace['showlegend'] = False
# generate webpage
py.plot(fig)
输出
它将在浏览器上显示以下输出:
观察到前两行的图例条目被隐藏。