标签: plotly

Plotly Cloropleth 地图在某些州有漏洞

我希望使用plotly.express 库中的 cloropleth 函数绘制状态图、值配对,由于某种原因,我在地图上看到了漏洞。在此输入图像描述

正如你所看到的,佛罗里达州和犹他州有一个洞,我不知道如何去除它们。我的代码如下,其中 state 只是状态的两个字母代码:

import plotly.express as px
fig = px.choropleth(df,
                    locations='state', 
                    locationmode="USA-states", 
                    scope="usa",
                    color='value',
                    color_continuous_scale="darkmint", 
                    title='Map'
                    )
Run Code Online (Sandbox Code Playgroud)

我的数据中没有缺失值,因此这是绘图的问题。谢谢。

python plotly

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

Plotly 中的相关矩阵

我正在做 Spotify 数据分析。我想使用 Plotly 创建一个相关矩阵。我的示例数据框如下(数据框名称称为“df”)

在此输入图像描述

我使用下面的代码创建了一个相关矩阵

import plotly.offline as pyo
import plotly.express as px
import plotly.graph_objs as go
import numpy as np
import pandas as pd


trace = go.Heatmap(z=df.values,x=df.index.values,y=df.columns.values,colorscale='RdBu_r',
                   zmax=1,zmin=-1,text=corr.values)
fig = go.Figure(data=[trace])
pyo.plot(fig)
fig.show()

Run Code Online (Sandbox Code Playgroud)

低于输出

在此输入图像描述

我需要获得清晰的相关矩阵输出,任何人都可以建议如何在 Plotly 中做到这一点吗?无法修复上述代码以获得正确的输出

python pandas plotly

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

情节 CSS 颜色的用户友好名称?

我知道人们可以将绘图默认颜色序列视为:

import plotly.express as px

print(px.colors.qualitative.Plotly)
Run Code Online (Sandbox Code Playgroud)

生成 CSS 颜色列表:

['#636EFA', '#EF553B', '#00CC96', '#AB63FA', '#FFA15A', '#19D3F3', '#FF6692', '#B6E880', '#FF97FF', '#FECB52']
Run Code Online (Sandbox Code Playgroud)

我可以通过从此列表中选择一个元素来指定绘图的颜色。例如:

go.Scatter(x=x, y=y, line={"color": '#636EFA'})
Run Code Online (Sandbox Code Playgroud)

在plotly中是否为这些颜色定义了更多用户友好的名称,或者CSS颜色是引用它们的唯一方法?

colors plotly

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

如何设置 Sankey 图 Plotly 中的节点顺序

所以我正在尝试制作一个给出不同sankey图表的循环,这是由于plotly节点处于不同位置的优化所致。我想将标准顺序设置为[正式、非正式、失业、不活跃]

import matplotlib.pyplot as plt
import pandas as pd
import plotly.graph_objects as go

df = pd.read_csv(path, delimiter=",")

Lista_Paises = df["code"].unique().tolist()

Lista_DF = []

for x in Lista_Paises:
    DF_x = df[df["code"] == x]
    Lista_DF.append(DF_x)


def grafico(df):
    df = df.astype({"Source": "category", "Value": "float", "Target": "category"})

    def category(i):
        if i == "Formal":
            return 0
        if i == "Informal":
            return 1
        if i == "Unemployed":
            return 2
        if i == "Inactive":
            return 3

    def color(i):
        if i == "Formal":
            return …
Run Code Online (Sandbox Code Playgroud)

python database math plotly sankey-diagram

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

Plotly:如何向 Choropleth 添加数据标签

我有以下Pandas数据框df,如下所示:

import pandas as pd
df = pd.DataFrame({'state' : ['NY', 'CA', 'FL', 'NJ', 'TX', 'CT', 'MA', 'WA', 'IL', 'GA'],
                   'user_id' : [10000, 3200, 1600, 1200, 800, 600, 400, 350, 270, 260]
                        })

    state   user_id
0   NY      10000
1   CA      3200
2   FL      1600
3   NJ      1200
4   TX      800
5   CT      600
6   MA      400
7   WA      350
8   IL      270
9   GA      260
Run Code Online (Sandbox Code Playgroud)

我希望能够创建一个 Plotly choropleth,其中包含每个州的数据标签。

为此,我使用add_scattergeo

fig = px.choropleth(df,
                    locations = …
Run Code Online (Sandbox Code Playgroud)

python plotly

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

更改 Plotly Express 条形图中的文本

我想知道如何更改条形内的文本以表示百分比而不是数字。我查看了plotly库,似乎我能做到这一点的唯一方法是使用plolty.graph_objects。有什么办法可以避免使用plotly.graph_objects?

编辑:我的目标是让 y 轴保留值,但图表中的文本显示百分比。本质上,我想自定义图表中的文本。

这是我试图放入图表中的数据,该数据将变成数据框(df):

    Use-Cases   2018    2019    2020    2021
0   Consumer    50      251     2123    210
1   Education   541     52      32      23
2   Government  689     444     441     456

df=pd.read_excel('Book1.xlsx')
df=df.transpose()
fig=px.bar(df,template='seaborn',text_auto='.3s')
fig.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

python plotly plotly-express

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

Plotly sunburst - 为内圈和外圈定义不同的颜色

我正在尝试为著名的Kaggle Titanic 挑战做一些数据可视化。我想绘制几个饼图,旭日变体,在内圈中放入一些特定特征(性别,机票类别,...),在外圈上放置该特征幸存/死亡。

这是一个例子:

在此输入图像描述

我想对内圈和外圈使用不同的颜色。例如,蓝色/粉色代表男性/女性,绿色/灰色代表幸存者/死亡者。我做不到,如果我按性别区分,我就无法按生存区分,反之亦然。

这是我的代码:

color_discrete_sequence = ['#8B25BE', '#2D9157', '#2D5F91', '#97909A']

fig = px.sunburst(
    total_raw_df,
    path=['sex', 'survived'],
    # names='sex',
    labels=[{'0': 'Deceased', '1': 'Survived'}],
    color=total_raw_df['sex'],
    color_discrete_sequence=color_discrete_sequence
)
fig.update_traces(
    textinfo="label+percent parent",
    insidetextorientation='horizontal'
)
fig.update_layout(
        font=dict(size=18)
    )
fig.show()
Run Code Online (Sandbox Code Playgroud)

该数据集是经典的泰坦尼克号数据集,仅供参考,这些是数据框列:

Index(['pclass', 'survived', 'name', 'sex', 'age', 'sibsp', 'parch', 'ticket',
   'fare', 'cabin', 'embarked', 'boat', 'body', 'home.dest'],
  dtype='object')
Run Code Online (Sandbox Code Playgroud)

python plotly sunburst-diagram plotly-python

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

Plotly杀了我的python安装

我只是尝试使用pip安装Plotly.我从Anaconda运行python,现在任何时候我尝试运行任何python我得到以下错误,我不知道如何解决它.我在Windows 7 64bit,Python3,4上运行

    PS Z:\> pip
Traceback (most recent call last):
  File "C:\Anaconda3\Scripts\pip-script.py", line 3, in <module>
    from pip import main
  File "C:\Anaconda3\lib\site-packages\pip\__init__.py", line 11, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "C:\Anaconda3\lib\site-packages\pip\vcs\mercurial.py", line 9, in <module>
    from pip.download import path_to_url
  File "C:\Anaconda3\lib\site-packages\pip\download.py", line 22, in <module>
    from pip._vendor import requests, six
  File "C:\Anaconda3\lib\site-packages\pip\_vendor\requests\__init__.py", line 58, in <module>
    from . import utils
  File "C:\Anaconda3\lib\site-packages\pip\_vendor\requests\utils.py", line 25, in <module>
    from .compat import parse_http_list as _parse_list_header
  File …
Run Code Online (Sandbox Code Playgroud)

python pip anaconda plotly

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

保持geom_rect半透明区域,但轮廓为彩色

我正在尝试使用R中的plotly创建一个带有矩形的交互式图。

我的主要想法是工作。但是,我坚持要允许每个矩形具有彩色轮廓(如数据的“填充”列中所描绘的),但要有一个完全透明的区域。

以下是正在运作的MWE:

library(ggplot2)
library(dplyr)
library(plotly)
set.seed(1)
data <- data.frame(Name = paste0("Name",seq(1:10)), xmin = runif(10, 0, 1), xmax = runif(10, 1, 2), ymin = runif(10, 0, 1), ymax = runif(10, 1, 2), fill = sample(c("black","purple"),10, replace=TRUE) )

p <- ggplot(data, aes(xmin = xmin, xmax = xmax, ymin = ymin, ymax = ymax, fill = NULL, colour = fill, text = Name)) + geom_rect(size = 0.3, alpha = 0.5) + scale_colour_identity() + theme_bw()
ggplotly(p, tooltip = "text") %>% layout(dragmode = "select") …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 plotly

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

Plotly: How to discard older points?

TL; DR我想使用Plotly.js显示长时间运行的带状图。我不知道该如何抛弃旧观点。

细节

我的CodePen的以下更新程序位于https://codepen.io/Michael-F-Ellis/pen/QvXPQr,几乎可以满足 我的要求。它显示了2条迹线中的20个样本,它们以500毫秒的间隔连续更新。在演示的最后,它将绘制所有点以显示它们仍然存在。

var cnt = 0;
var interval = setInterval(function() {
  // Add next point to each trace
  Plotly.extendTraces('graph', {
    y: [[rand()], [rand()]]
  }, [0, 1])
  // Display only 20 most recent points
  Plotly.relayout('graph', { 'xaxis.range': [cnt-20, cnt]})

  cnt = cnt+1;
  if(cnt === 100) {
    // Before ending the run, show all points
    // to demonstrate they still exist in Plotly.
    Plotly.relayout('graph', { 'xaxis.range': [0, cnt]});
    clearInterval(interval);
  }
}, 500);
Run Code Online (Sandbox Code Playgroud)

问题是我确实要删除较旧的点。真正的应用程序需要在内存有限的系统上永远永久运行。我正在寻找将删除最旧的N个跟踪点的Plotly调用。由于目标系统的性能也受到限制,因此它必须合理有效。

谢谢!

javascript plotly

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