可视化
Polars DataFrame 中的数据可以使用常见的可视化库进行可视化。
我们使用鸢尾花数据集来展示绘图功能。我们读取一个CSV文件,然后绘制一列对另一列的图,并用另一列进行颜色编码。
import polars as pl
path = "docs/assets/data/iris.csv"
df = pl.read_csv(path)
print(df)
shape: (150, 5)
┌──────────────┬─────────────┬──────────────┬─────────────┬───────────┐
│ sepal_length ┆ sepal_width ┆ petal_length ┆ petal_width ┆ species │
│ --- ┆ --- ┆ --- ┆ --- ┆ --- │
│ f64 ┆ f64 ┆ f64 ┆ f64 ┆ str │
╞══════════════╪═════════════╪══════════════╪═════════════╪═══════════╡
│ 5.1 ┆ 3.5 ┆ 1.4 ┆ 0.2 ┆ Setosa │
│ 4.9 ┆ 3.0 ┆ 1.4 ┆ 0.2 ┆ Setosa │
│ 4.7 ┆ 3.2 ┆ 1.3 ┆ 0.2 ┆ Setosa │
│ 4.6 ┆ 3.1 ┆ 1.5 ┆ 0.2 ┆ Setosa │
│ 5.0 ┆ 3.6 ┆ 1.4 ┆ 0.2 ┆ Setosa │
│ … ┆ … ┆ … ┆ … ┆ … │
│ 6.7 ┆ 3.0 ┆ 5.2 ┆ 2.3 ┆ Virginica │
│ 6.3 ┆ 2.5 ┆ 5.0 ┆ 1.9 ┆ Virginica │
│ 6.5 ┆ 3.0 ┆ 5.2 ┆ 2.0 ┆ Virginica │
│ 6.2 ┆ 3.4 ┆ 5.4 ┆ 2.3 ┆ Virginica │
│ 5.9 ┆ 3.0 ┆ 5.1 ┆ 1.8 ┆ Virginica │
└──────────────┴─────────────┴──────────────┴─────────────┴───────────┘
使用Altair进行内置绘图
Polars 有一个 plot 方法,可以使用 Altair 创建图表:
chart = (
df.plot.point(
x="sepal_width",
y="sepal_length",
color="species",
)
.properties(width=500, title="Irises")
.configure_scale(zero=False)
.configure_axisX(tickMinStep=1)
)
chart.encoding.x.title = "Sepal Width"
chart.encoding.y.title = "Sepal Length"
chart
这是以下内容的简写:
import altair as alt
(
alt.Chart(df).mark_point(tooltip=True).encode(
x="sepal_length",
y="sepal_width",
color="species",
)
.properties(width=500)
.configure_scale(zero=False)
)
并且仅为了方便提供,以及表明已知Altair与Polars配合良好。
对于配置,我们建议阅读 图表配置。 例如,您可以:
- 使用
.properties(width=500, height=350, title="My amazing plot")更改宽度/高度/标题。 - 使用
.configure_axisX(labelAngle=30)更改 x 轴标签的旋转角度。 - 使用
.configure_point(opacity=.5)更改散点图中点的透明度。
hvPlot
如果你导入hvplot.polars,那么它会注册一个hvplot方法,你可以使用它来创建交互式图表,使用hvPlot。
import hvplot.polars
df.hvplot.scatter(
x="sepal_width",
y="sepal_length",
by="species",
width=650,
title="Irises",
xlabel='Sepal Width',
ylabel='Sepal Length',
)
Matplotlib
要创建散点图,我们可以将DataFrame的列直接作为Series传递给Matplotlib。Matplotlib没有对Polars对象的显式支持,但可以通过将其转换为NumPy数组来接受Polars Series(对于没有空值的数值数据,这是零拷贝的)。
请注意,由于列'species'不是数值型的,我们需要首先将其转换为数值,以便它可以作为参数传递给c。
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.scatter(
x=df["sepal_width"],
y=df["sepal_length"],
c=df["species"].cast(pl.Categorical).to_physical(),
)
ax.set_title('Irises')
ax.set_xlabel('Sepal Width')
ax.set_ylabel('Sepal Length')
<img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAlE1JREFUeJzs3Xd4VMXax/Hf7qY3QkIqJQm9hN6kS1FQwYqK2LtYjvVYjvVYjvVYjvVYjqKioqKioqKCoCAd6b2X0EIS0nuyO+8fC5ssCQkkm2yS/X2uay/Y2dnZJ5vN3jPzzDMOY4wRAAAAbMNZ0gUAAAAgvxEAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAYDMEQAAAABshAAIAANgMARAAAMBmCIAAAAA2QwAEAACwGQIgAACAzRAAAQAAbIYACAAAY
Seaborn 和 Plotly
Seaborn 和 Plotly 可以通过利用 数据框交换协议 来接受 Polars 的 DataFrame,该协议在可能的情况下提供零拷贝转换。请注意,该协议不支持所有 Polars 数据类型(例如 List),因此在此处您的体验可能会有所不同。
Seaborn
import seaborn as sns
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
sns.scatterplot(
df,
x="sepal_width",
y="sepal_length",
hue="species",
ax=ax,
)
ax.set_title('Irises')
ax.set_xlabel('Sepal Width')
ax.set_ylabel('Sepal Length')
<img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAniZJREFUeJzs3Xd8k+X6xvHnSdK9F6Wl7L1kKQqyFQc4cBw9x4V7H9fPvVCPW1y4cB8VxYV7gYqKbJQ9y2jL6N4jz++P0kDpSJq0T5Lr/Xr1lTZPk9xJ2lzX89z3fVvGGIOIiIiIhAxboAsQERERkYalACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIiIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIiIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqAIiIiIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoIiIiEiIUQAUERERCTEKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCTEKACKiIiIhBgFQBEREZEQowAoIiIiEmIUAEVERERCjAKgiIiISIhRABQREREJMQqAIiIiIiFGAVBEREQkxCgAioiIiIQYBUARERGREKMAKCIiIhJiFABFREREQowCoAiIiEiI+eyzz7Asi+zs7ECXEjAKgCIiIiIhRgFQREREJMQoAIqIiIiEGAVAERERkRCjACgiIiISYhQARUREREKMAqCIiIhIiFEAFBEREQkxCoAiIiIiIUYBUERERCT
Plotly
import plotly.express as px
px.scatter(
df,
x="sepal_width",
y="sepal_length",
color="species",
width=650,
title="Irises",
labels={'sepal_width': 'Sepal Width', 'sepal_length': 'Sepal Length'}
)