仅使用plot.ly 中的这几行代码将在 jupyter notebook 中为您提供以下图:
片段 1:
import plotly
import cufflinks as cf
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
init_notebook_mode(connected=True)
iplot(cf.datagen.lines().iplot(asFigure=True,
kind='scatter',xTitle='Dates',yTitle='Returns',title='Returns'))
Run Code Online (Sandbox Code Playgroud)
情节 1:
您如何设置它以便您可以在下面的图中使用交替的背景颜色,就像这篇文章中使用matplotlib显示的那样?
片段 2:
df.iplot(vspan={'x0':'2015-02-15','x1':'2015-03-15','color':'rgba(30,30,30,0.3)','fill':True,'opacity':.4},
filename='cufflinks/custom-regions')
Run Code Online (Sandbox Code Playgroud)
情节 2:
感谢您的任何建议!
我正在尝试使用绘图库绘制图表,并且我想设置每条线的特定宽度。
这是我的代码。
x_link = [125, 257, None, 125, 787, None]
y_link = [383, 588, None, 383, 212, None]
z_link = [65, 85, None, 65, 526, None]
link_size = [3,6]
trace1= go.Scatter3d(
x = x_link,
y = y_link,
z = z_link,
line=dict(
color='#0061ff',
width=link_size
)
)
Run Code Online (Sandbox Code Playgroud)
但它会引发这个错误。
scatter3d.line 的“width”属性收到的“builtins.list”类型的值无效收到的值:[3, 6]
'width' 属性是一个数字,可以指定为: - 区间 [0, inf] 内的 int 或 float
那么,有没有办法设置每行的具体宽度呢?
谢谢。
plotly.express 非常方便地生成漂亮的交互式绘图。下面的代码生成一个按国家/地区着色的折线图。现在我需要的是在图中添加点。有谁知道如何向折线图添加点?
import plotly.express as px
gapminder = px.data.gapminder().query("continent=='Oceania'")
fig = px.line(gapminder, x="year", y="lifeExp", color='country')
fig.show()
Run Code Online (Sandbox Code Playgroud) 我需要制作一个条形图,其中条形按值降序排列。我首先按值降序对数据框进行排序。然后我使用plotly.express 生成交互式条形图。但是,我发现条形仍然按升序排列。有谁知道我做错了什么?非常感谢您的帮助。
import plotly.express as px
dat = pd.DataFrame({'word': ['apple', 'grape', 'orange', 'pear'],
'counts': [20, 5, 25, 10] } )
dat = dat.sort_values('counts', ascending=False)
px.bar(dat, x = 'counts',y='word', orientation='h')
Run Code Online (Sandbox Code Playgroud) 我正在使用plotly.express饼图帮助页面iso_num中的示例,并尝试向hover_data属性添加额外的元素(iso_num是gapminder数据框中的int64列)
import plotly.express as px
df = px.data.gapminder().query("year == 2007").query("continent == 'Americas'")
fig = px.pie(df, values='pop', names='country',
title='Population of American continent',
hover_data=['lifeExp','iso_num'], labels={'lifeExp':'life expectancy','iso_num':'iso num'
})
fig.update_traces(textposition='inside', textinfo='percent+label')
fig.show()
Run Code Online (Sandbox Code Playgroud)
将鼠标悬停在饼图的切片上会给出以下结果:
其中iso numvalue 是%{customdata[1]}而不是列中的数值。
我缺少什么?
谢谢!
Dash 中 (空格)的 HTML 等价物是什么?
html.Div(
[
dcc.Input(),
<add horizontal space here>
dcc.Input()
]
)
Run Code Online (Sandbox Code Playgroud) 我知道 savefig 有一个选项 dpi。但如果我用plotly 绘图并写入图像,我就没有设置dpi 的选项。
如何用plotly设置dpi?
TypeError: write_image() got an unexpected keyword argument 'dpi'
Run Code Online (Sandbox Code Playgroud) 是否可以在与我的绘图相同的 html 文件上添加一些文本?
例如:这是生成图表的代码:
data = pd.read_csv('file.csv')
data.columns = ['price', 'place', 'date']
fig = px.scatter(data, x = "place", y = "price", )
fig.write_html("done.html")
Run Code Online (Sandbox Code Playgroud)
该图将在 html 文件中生成 pyplot 图表,我想在图表下添加一些简单的文本(例如解释图表的结论线)。
这是我想要的输出示例: ly
我可以使用以下方法更改默认主题:
import plotly.io as pio
pio.templates.default = 'plotly_white'
Run Code Online (Sandbox Code Playgroud)
但我如何更改默认调色板?
我正在尝试使用 python 中的plotly 创建一个条形图,它既是堆叠的又是分组的。
玩具示例(不同年份花费和赚取的钱):
import pandas as pd
import plotly.graph_objs as go
data = pd.DataFrame(
dict(
year=[2000,2010,2020],
var1=[10,20,15],
var2=[12,8,18],
var3=[10,17,13],
var4=[12,11,20],
)
)
fig = go.Figure(
data = [
go.Bar(x=data['year'], y=data['var1'], offsetgroup=0, name='spent on fruit'),
go.Bar(x=data['year'], y=data['var2'], offsetgroup=0, base=data['var1'], name='spent on toys'),
go.Bar(x=data['year'], y=data['var3'], offsetgroup=1, name='earned from stocks'),
go.Bar(x=data['year'], y=data['var4'], offsetgroup=1, base=data['var3'], name='earned from gambling'),
]
)
fig.show()
Run Code Online (Sandbox Code Playgroud)
结果一开始看起来不错:
但是看看当我关闭例如“花在水果上”时会发生什么:
“花在玩具上”的痕迹仍然是浮动的,而不是从 0 开始。
这个问题可以修复吗?或者也许整个offsetgroup+base方法在这里不起作用。但我还能做什么呢?
谢谢!
更新:根据此 Github 问题,正在为未来的绘图版本开发堆叠、分组条形图,因此这可能不再是问题。