标签: plotly

R Plotly 为条形图设置自定义颜色

我的 Shiny 应用程序中有一个plotly条形图,我想在生成的条形图中为每列设置特定的颜色。

#Here's some reproducible data
df=data.frame(Month=c("Jan","Feb","Mar","Apr","May","Jun"),Criteria1=c(10,15,20,15,7,6),Criteria2=c(3,8,5,7,9,10),Criteria3=c(11,18,14,9,3,1))

#Plot

colNames <- names(df)[-1] #Month is the first column

# Here is where I set the colors for each `Criteria`, assuming that the order of colors follows the same order as the factor levels of the `Criteria`.

p <- plotly::plot_ly(marker=list(colors=c('#CC1480', '#FF9673', '#E1C8B4')))

for(trace in colNames){
  p <- p %>% plotly::add_trace(data = df, x = ~Month, y = as.formula(paste0("~`", trace, "`")), name = trace, type = "bar")
}

p %>% 
  layout(title …
Run Code Online (Sandbox Code Playgroud)

r shiny plotly

10
推荐指数
2
解决办法
9901
查看次数

redis.exceptions.DataError:类型输入无效:“NoneType”。先转换为字节、字符串或数字

我最近开始使用 Redis 和 RQ 来运行后台进程。我构建了一个 Dash 应用程序,它在 Heroku 上运行良好,并且过去也可以在本地运行。最近,我尝试再次在本地测试同一个应用程序,但不断收到以下错误 - 尽管我使用的是 Heroku 上托管的完全相同的代码:

redis.exceptions.DataError: Invalid input of type: 'NoneType'. Convert to a byte, string or number first.
Run Code Online (Sandbox Code Playgroud)

在我的requirements.txt和Ubuntu 18.04上的虚拟环境中,我有redis v.3.0.1,rq 0.13.0

当我在终端上运行 redis-server 时,我看到使用了 Redis 4.0.9(这也让我感到困惑)。

我尝试谷歌搜索两天寻找解决方案,但没有成功。

有谁知道可能发生了什么以及如何解决这个错误?

这是完整的相关回溯:

File "/home/tom/dashenv/pb101_models/pages/cumulative_culture.py", line 1026, in stop_or_start_update
  job = q.fetch_job(job_id)
File "/home/tom/dashenv/dash/lib/python3.6/site-packages/rq/queue.py", line 142, in fetch_job
  self.remove(job_id)
File "/home/tom/dashenv/dash/lib/python3.6/site-packages/rq/queue.py", line 186, in remove
  return self.connection.lrem(self.key, 1, job_id)
File "/home/tom/dashenv/dash/lib/python3.6/site-packages/redis/client.py", line 1580, in lrem
  return self.execute_command('LREM', name, count, value)
File "/home/tom/dashenv/dash/lib/python3.6/site-packages/redis/client.py", line 754, …
Run Code Online (Sandbox Code Playgroud)

redis plotly plotly-dash

10
推荐指数
1
解决办法
2万
查看次数

在 jupyter 实验室中未呈现 Plotly Express

以下代码不会在 Jupyter 实验室中呈现:

%matplotlib widget
import plotly.express as px  
import numpy as np 
import pandas as pd

df = pd.DataFrame(np.random.randint(0,100,size=(5, 4)), columns=list('ABCD'))
px.bar(df, x='A', y='B')
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明 我试图安装这里提到的所有依赖项和扩展 https://plot.ly/python/getting-started/#jupyterlab-support-python-35

还有这里的步骤 https://github.com/matplotlib/jupyter-matplotlib

没有任何效果

这是我的设置:

jupyter lab --version
1.0.2

python --version
Python 3.6.1 :: Continuum Analytics, Inc.

conda list jupyterlab
# packages in environment at C:\Users\***\Anaconda3:
#
# Name                    Version                   Build  Channel
jupyterlab                1.0.2            py36hf63ae98_0
jupyterlab_launcher       0.13.1                   py36_0
jupyterlab_server         1.0.0                      py_0

conda list nodejs
# packages in environment at C:\Users\***\Anaconda3:
#
# Name                    Version …
Run Code Online (Sandbox Code Playgroud)

python plotly jupyter-lab plotly-express

10
推荐指数
1
解决办法
8719
查看次数

使用显示的 Plotly Express 小部件保存 Jupyter Notebook

我有一个 Jupyter 笔记本(python),我使用 plotly express 在笔记本中绘图以进行分析。我想与非编码人员共享此笔记本,并且仍然可以使用交互式视觉效果 - 但它似乎不起作用。

我尝试遵循此处提出的建议,但即使在保存小部件状态并使用 之后nbconvert,当我打开新的 HTML 文件时,视觉效果也不可用。

绘图的示例线如下所示:

import plotly_express as px
fig = px.scatter(
    df, 
    x='size', 
    y='size_y', 
    color='clients',
    hover_data=['id'], 
    marginal_y="histogram", 
    marginal_x="histogram"
)
fig.show()
Run Code Online (Sandbox Code Playgroud)

python data-visualization plotly jupyter-notebook plotly-express

10
推荐指数
2
解决办法
5423
查看次数

如何在 Python 中使用 Plotly Express 在同一 y 轴上绘制多条线

我刚刚安装了plotly express。我正在尝试做一些简单的事情 - 将我的数据框的每一列绘制在同一个 y 轴上,索引作为 x 轴。以下是问题/观察:

数据框是否有必要将索引作为列用作 x 轴?我可以不直接使用 x 轴的索引吗?如何为同一个 x 轴添加在 y 轴上以绘图方式调用的多个轨迹?

请注意,我不是尝试使用 plotly 添加跟踪,而是尝试使用 plotly-express。

此外,网上有一些类似的帖子,最接近的是这个https : //community.plot.ly/t/multiple-traces-plotly-express/23360 但是,这篇文章展示了如何添加散点,而不是一条线. 我想绘制一条线,但没有类似于此处示例中显示的 add_scatter 的 add_line。

提前感谢任何帮助

示例代码:

import plotly.express as px 
import pandas as pd 
import numpy as np 

# Get some data
df = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/finance-charts-apple.csv')

# Plot 
fig = px.line(df, x='Date', y='AAPL.High')

# Only thing I figured is - I could do this 
fig.add_scatter(x=df['Date'], y=df['AAPL.Low']) # Not what is desired - need …
Run Code Online (Sandbox Code Playgroud)

python plotly plotly-express

10
推荐指数
2
解决办法
2万
查看次数

有没有办法绘制印度地图?

我正在尝试使用 plotly 绘制印度地图,但无法找到一种方法来做到这一点。以下是我为美国尝试的代码。

import pandas as pd

df_sample = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/laucnty16.csv')
df_sample['State FIPS Code'] = df_sample['State FIPS Code'].apply(lambda x: str(x).zfill(2))
df_sample['County FIPS Code'] = df_sample['County FIPS Code'].apply(lambda x: str(x).zfill(3))
df_sample['FIPS'] = df_sample['State FIPS Code'] + df_sample['County FIPS Code']

colorscale = ["#f7fbff","#ebf3fb","#deebf7","#d2e3f3","#c6dbef","#b3d2e9","#9ecae1",
              "#85bcdb","#6baed6","#57a0ce","#4292c6","#3082be","#2171b5","#1361a9",
              "#08519c","#0b4083","#08306b"]
endpts = list(np.linspace(1, 12, len(colorscale) - 1))
fips = df_sample['FIPS'].tolist()
values = df_sample['Unemployment Rate (%)'].tolist()

fig = ff.create_choropleth(
    fips=fips, values=values,
    binning_endpoints=endpts,
    colorscale=colorscale,
    show_state_data=False,
    show_hover=True, centroid_marker={'opacity': 0},
    asp=2.9, title='USA by Unemployment %',
    legend_title='% unemployed'
)

fig.layout.template = None
fig.show() …
Run Code Online (Sandbox Code Playgroud)

python plotly

10
推荐指数
2
解决办法
4594
查看次数

Plotly:如何更改绘图表达散点图的配色方案?

我正在尝试与plotly,特别是ploty express,构建一些可视化。

我正在构建的一件事是散点图

我在下面有一些代码,它产生了一个很好的散点图:

import plotly.graph_objs as go, pandas as pd, plotly.express as px
df = pd.read_csv('iris.csv')
fig = px.scatter(df, x='sepal_length', y='sepal_width',
              color='species', marker_colorscale=px.colors.sequential.Viridis)
fig.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

但是,我想尝试更改配色方案,即为每个物种呈现的颜色。

我读过了:

但是不能让颜色改变。

试:

fig = px.scatter(df, x='sepal_length', y='sepal_width',
              color='species', marker_colorscale=px.colors.sequential.Viridis)
Run Code Online (Sandbox Code Playgroud)

产量:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-6-78a9d58dce23> in <module>
      2 # https://plotly.com/python/line-and-scatter/
      3 fig = px.scatter(df, x='sepal_length', y='sepal_width',
----> 4               color='species', marker_colorscale=px.colors.sequential.Viridis)
      5 fig.show()

TypeError: scatter() got an unexpected keyword argument 'marker_colorscale'
Run Code Online (Sandbox Code Playgroud)

试: …

python visualization data-visualization plotly

10
推荐指数
2
解决办法
2万
查看次数

Plotly:如何使用 plotly express 在辅助 y 轴上绘图

我如何利用 plotly.express 在一个 Pandas 数据框中的两个 yaxis 上绘制多条线?

我发现这对于绘制包含特定子字符串的所有列非常有用:

    fig = px.line(df, y=df.filter(regex="Linear").columns, render_mode="webgl")
Run Code Online (Sandbox Code Playgroud)

因为我不想遍历所有过滤的列并使用以下内容:

    fig.add_trace(go.Scattergl(x=df["Time"], y=df["Linear-"]))
Run Code Online (Sandbox Code Playgroud)

在每次迭代中。

python express plotly yaxis

10
推荐指数
1
解决办法
8090
查看次数

Plotly:如何在 plotly express 折线图中更改图例的变量/标签名称?

我想在python中的plotly express中更改变量/标签名称。我首先创建一个情节:

import pandas as pd
import plotly.express as px

d = {'col1': [1, 2, 3], 'col2': [3, 4, 5]}
df = pd.DataFrame(data=d)
fig = px.line(df, x=df.index, y=['col1', 'col2'])
fig.show()
Run Code Online (Sandbox Code Playgroud)

其中产生:

在此处输入图片说明

我想将标签名称从col1更改为hello并将col2更改为hi。我曾尝试在图中使用标签,但无法使其正常工作:

fig = px.line(df, x=df.index, y=['col1', 'col2'], labels={'col1': "hello", 'col2': "hi"})
fig.show()
Run Code Online (Sandbox Code Playgroud)

但这似乎没有任何作用,同时不会产生错误。显然我可以通过更改列名来实现我的目标,但我试图创建的实际图并没有真正允许这样做,因为它来自几个不同的数据框。

python label plotly

10
推荐指数
3
解决办法
7939
查看次数

Plotly:如何在 Excel 中嵌入完全交互式的 Plotly 图形?

我正在尝试将交互式绘图(或散景)图嵌入到 excel 中。

为此,我尝试了以下三件事:

  1. 将 Microsoft Web Browser UserForm 嵌入到 excel 中,如下所示:

如何在 Excel VBA 表单中嵌入浏览器?

这有效并且可以加载在线和离线 html

  1. 创建一个情节 html

'''

import plotly
import plotly.graph_objects as go


x = [0.1, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0]
y = [i**2 for i in x]

fig = go.Figure()

fig.add_trace(go.Scatter(x=x, y=x, mode='markers', name="y=x", marker=dict(color='royalblue', size=8)))
fig.add_trace(go.Scatter(x=x, y=y, name="y=x^2", line=dict(width=3)))

plotly.offline.plot(fig, filename='C:/Users/.../pythonProject/test1.html')
Run Code Online (Sandbox Code Playgroud)
  1. 使用.Navigate本地 plotly.html 将excel 中的 webbrowser 对象重新指向。横幅弹出

“.... 限制此文件显示可以访问您的计算机的活动内容”

点击横幅,我遇到了这个错误:

在此处输入图片说明

可以在浏览器中打开相同的 HTML。

有没有办法在excel中显示交互式绘图?

python excel vba plotly plotly-python

10
推荐指数
1
解决办法
1227
查看次数