python - 如何使用 Python 在 Plotly express 中制作水平直方图?
问题描述
我正在尝试用我的数据制作水平直方图,但出现此错误:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
当我使用时,我总是得到一个漂亮的直方图
px.histogram(df, x="columnName")
但是当我尝试将其更改为水平时,它不起作用。
px.histogram(df, y="columnName") or px.histogram(df, x="columnName", orientation='h') don't work.
我没有使用 NoneType 的数据,我什至尝试过px.histogram(y=np.random.randn(500))
,但它仍然不起作用。
我尝试使用go.Figure(data=[go.Histogram(y=df['columnName'])])
which 确实给了我一个水平的 hist 但是我无法根据不同的列更改颜色。
任何帮助将不胜感激,在此先感谢:)
解决方案
建议
如果你看看下面的细节,你会发现我完全同意这有点奇怪。但是,如果您想确定方向,只需省略参数并在将值分配给和orientation
之间切换。x
y
水平的
fig = px.histogram(x=np.random.randn(500))
垂直的
fig = px.histogram(y=np.random.randn(500))
细节
这整件事似乎有点奇怪。orientation
被列为参数,px.histogram
并且应该采用'h'
或'v'
作为有效参数。
方向:str,
'h'
水平或'v'
垂直之一。(默认'v'
如果x
和y
被提供并且都是连续的或都是分类的,否则'v'
('h'
) 如果x
(y
) 是分类的并且y
(x
) 是连续的,否则'v'
('h'
) 如果只有x
(y
) 是
但我收到了这个错误:
类型错误:+ 不支持的操作数类型:“NoneType”和“str”
在任何情况下,都会px.histogram(x=np.random.randn(500))
产生以下水平绘图:
如果您想将其翻转为垂直,只需交换x with y
:
px.histogram(y=np.random.randn(500))
推荐阅读
- php - COMPOSER.json 与 dockerfile 一起安装
- opennlp - Apache OpenNLP 在运行其命名实体识别 (NER) 模型时默认使用哪些功能?
- sql - SQL Server - varchar 列上的分区表包含日期时间值而不更改列
- wpf - 为什么这个 WPF 边框显示在列周围而不是 StackPanel?
- regex - js正则表达式替换某些段落中的匹配项
- ios - iOS:带有复选框的 UIAccessibility(配音)无法正常工作
- shell - Grep 使用 shell 脚本来获取一些具有指定名称的无名文件的文件
- mysql - 在 node.js/Express 中插入 mysql 数据库后,用户列表未更新
- apache-camel - CamelExchangeException 交换标头上的无效关联键
- ibm-midrange - 有没有办法在 PCL-PR EXTPGM 中设置默认值?