【发布时间】:2021-12-22 09:09:04
【问题描述】:
我正在尝试通过 plotly 将推文作为点/散点图添加到现有图上。
目前,我的代码如下:
fig = px.line(total_data,
x = 'date', y = ['doge_close','btc_close','eth_close','shib_close'],
color = 'has_tweet', hover_data = ['content', 'of_interest']
)
fig.show()
我要做的是在折线图本身上绘制推文,但作为散点图而不是 has_tweet = 1 线。 (通过 Photoshop 添加点)
我在 plotly python 文档中找不到任何东西,但不幸的是用 R 找到了一些,而且fig.add_trace 对输入的处理能力相当有限,因此添加多个轴无济于事。
感谢您的帮助!
编辑:
感谢一位非常友善的评论员,我快到了。
我已经更新了代码:
fig = px.line(total_data, x = total_data.date,
y = total_data.doge_close)
fig.add_trace(
go.Scatter(
x=total_data[total_data.has_tweet==1].date,
y=total_data[total_data.has_tweet == 1['doge_close'],
mode = 'markers',
name = 'Tweet',
hovertext = ['content', 'of_interest']))
fig.show()
但是,当我试图让它显示推文内容时,hovertext 除了doge_price 和日期之外没有显示任何内容。提供了悬停的图像。
编辑#2
fig = px.line(total_data, x = total_data.date,
y = total_data.doge_close)
fig.add_trace(
go.Scatter(
x=total_data[total_data.has_tweet==1].date,
y=total_data[total_data.has_tweet == 1['doge_close'],
mode = 'markers',
hovertemplate =
'<i>tweet:</i>'+ '<br>' +
'<i>%{text}</i>',
text = [t for t in total_data['content'] != 'NaN'],
name = 'has_tweets'))
fig.show()
给我带来麻烦的地方在这里:text = [t for t in total_data['content'] != 'NaN']
content 列有 7113 行长,但只有 139 行包含任何内容(推文)。我尝试确定它在哪里!= 'NaN',它似乎工作,除了逻辑上,它将所有内容都设置为 true(事后看来这是完全合理的),我不知道如何绕过它。
【问题讨论】:
-
如果没有您的数据样本,最后一部分有点难以回答。如果到目前为止我的建议对您有所帮助,您会考虑将最后一部分作为一个新问题提出吗?
-
@vestland stackoverflow.com/questions/69920851/… 我又提出了一个新问题。
标签: python pandas plotly plotly-python