当我将c选项添加到matplotlib中的散点图时,x轴标记为dissapear.这是一个例子:https://github.com/Kornel/scatterplot-matplotlib/blob/master/Scatter%20plot%20x%20axis%20labels.ipynb(欢迎拉取请求:))
这是与笔记本中相同的示例:
import pandas as pd
import matplotlib.pyplot as plt
test_df = pd.DataFrame({
"X": [1, 2, 3, 4],
"Y": [5, 4, 2, 1],
"C": [1, 2, 3, 4]
})
Run Code Online (Sandbox Code Playgroud)
现在比较结果:
test_df.plot(kind="scatter", x="X", y="Y", s=50);
Run Code Online (Sandbox Code Playgroud)
至:
test_df.plot(kind="scatter", x="X", y="Y", c="C");
Run Code Online (Sandbox Code Playgroud)
x轴标签在哪里?这是我缺少的一个功能吗?
熊猫版:0.18.1 Matplotlib:1.5.3 Python:3.5.2
谢谢你的帮助,Kornel
编辑:@Kewl指出的解决方案是调用plt.subplots并指定轴:
fig, ax = plt.subplots()
test_df.plot(kind="scatter", x="X", y="Y", s=50, c="C", cmap="plasma", ax=ax);
Run Code Online (Sandbox Code Playgroud)
给
PS它看起来像一个jupyter问题,没有jupyter笔记本时调用标签很好
假设一个简单的表有一个插入(或没有这个插入,并不重要).
CREATE TABLE test (
x int,
y int,
z int,
PRIMARY KEY (x, y, z)
);
create index z_index on test (z);
insert into test(x, y, z) values (1,2,3);
Run Code Online (Sandbox Code Playgroud)
我很难理解为什么我不能在索引z上使用in子句进行查询:
cqlsh:test> select*from test其中z in(3);
错误请求:PRIMARY KEY部分z不能被限制(前面部分y不受限制或非EQ关系)
可以使用简单的equals谓词:
cqlsh:test> select * from test where z = 3;
x | y | z
---+---+---
1 | 2 | 3
(0 rows)
Run Code Online (Sandbox Code Playgroud)
我认为在z上有一个索引会保留从z的特定值到行的映射,但这个假设似乎是错误的.
为什么这不符合我的预期?我猜索引的工作方式不同.
编辑:我正在使用[cqlsh 4.1.1 | Cassandra 2.0.6 | CQL规范3.1.1 | 节俭协议19.39.0]