python - 散点图根据值标记不同的颜色
问题描述
我有两列数据框。一列表示 CPU 节点,另一列表示阈值。我需要为该数据框绘制散点图。我的问题是如何在阈值列上获得不同的颜色。例如,0-25% 的绿色、25-50% 的浅绿色、50-75% 的黄色和 75% 以上的红色。到目前为止,我只得到一种颜色。
下面是数据框
cpu node threshold
node 1 20
node 2 30
node 3 50
node 4 59
node 5 65
node 6 95
我写的代码:
fig = go.Figure(go.Scatter(mode="markers", x=cpu node, y=threshold, marker_symbol='triangle-up',
marker_line_color="midnightblue", marker_color="lightskyblue",
marker_line_width=2, marker_size=15,
hovertemplate=cpu node))
谁能告诉我如何使用自定义颜色获得看起来像这样的图形,即;['green', 'light green', 'yellow', 'red']基于值的范围
解决方案
在这种情况下,将标记颜色设置为 y 轴的值。
import plotly.graph_objects as go
fig = go.Figure(go.Scatter(mode="markers", x=df['cpu node'], y=df['threshold'], marker_symbol='triangle-up',
marker_line_color="midnightblue", marker_color=df['threshold'],
marker_line_width=2, marker_size=15,
hovertemplate=df['cpu node']))
fig.show()
推荐阅读
- sql-server - 从 SQL 查询将 XMLA DISCOVER_XML_METADATA 发送到 SSAS
- python - 无法使用reportlab打开字体文件
- linux - 为什么在命令中的字符之间放置反斜杠字符 ( \ ) 在 linux 中仍然可以正常工作?
- r - 在 R 中一次生成多个频率表
- python - 为什么python`multiprocessing`中的操作不生效
- java - 如何在 Windows 10 上的 Open JDK 和 JDK 之间切换?
- circuit - 逻辑门:为什么 OR 门中的 1 和 1 之和为 1?
- java - plexus-utils 库的 Spring Boot 依赖问题
- php - 致命错误:未捕获的错误:类 'Automattic\WooCommerce\Client'
- orbeon - 表单设置验证(应用程序和表单名称唯一性)