我正在为JQuery寻找一个可靠的图形插件,它可以为我提供一个在我的网站上使用的有吸引力的散点图.我真的不需要很多花哨的功能 - 只是能够根据我给出的X轴和Y轴值在图表上绘制点.
我唯一有点特殊的要求是点有能力成为不同的颜色.除了在X轴上跟踪项目的"状态",以及在Y轴上的"输入时间",我想用它的实际颜色代表它的"状态"(不要与"状态"混淆)点.顺便提一下,有5个州和5个州.
我在快速谷歌搜索中发现了一些很有前途的,但没有看到指定点的颜色的能力(我找到了一个让我改变大小的能力).任何人的任何建议将不胜感激.
下面是我想要的,但我认为点将在5个不同的列(基于5个州)中更清晰地排列.但它可能有助于可视化.
alt text http://i50.tinypic.com/14jrwv7.jpg
谢谢.
我已经为此工作了一段时间,但找不到任何合理的解释来解释为什么我的 x 和 y 轴的名称是正确的颜色,而不是标题。
p <- ggplot(movies, aes(x=budget, y=rating))+
geom_point(shape=1) +
theme(axis.title.x = element_text(colour = "#7F3D17"),
axis.title.y = element_text(colour = "#7F3D17"),
axis.title = element_text(colour = "#7F3D17"),
panel.background = element_rect(fill='#FFD197'),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.border = element_blank()) +
labs(x="Budget (in millions)", y="Rating", title="Scatterplot of budget vs movies")
p
Run Code Online (Sandbox Code Playgroud)
散点图看起来像这样(注意标题仍然是黑色的):

如果有人可以提供帮助,我将不胜感激。
matplotlib 文档说明scatter():
\n\n除了上述参数之外,该函数还可以采用 data 关键字参数。如果给出这样的数据参数,则以下参数将替换为 data[]:
\n具有以下名称的所有参数:\xe2\x80\x98s\xe2\x80\x99、\xe2\x80\x98color\xe2\x80\x99、\xe2\x80\x98y\xe2\x80\x99、\xe2\x80 \x98c\xe2\x80\x99、\xe2\x80\x98linewidths\xe2\x80\x99、\xe2\x80\x98facecolor\xe2\x80\x99、\xe2\x80\x98facecolors\xe2\x80\x99、\xe2 \x80\x98x\xe2\x80\x99,\xe2\x80\x98edgecolors\xe2\x80\x99。
\n
但是,我不知道如何让它工作。\n最小的例子
\nimport matplotlib.pyplot as plt\nimport numpy as np\n\ndata = np.random.random(size=(3, 2))\nprops = {'c': ['r', 'g', 'b'],\n 's': [50, 100, 20],\n 'edgecolor': ['b', 'g', 'r']}\n\nplt.scatter(data[:, 0], data[:, 1], data=props)\nplt.show()\nRun Code Online (Sandbox Code Playgroud)\n生成具有默认颜色和大小的图,而不是提供的图。
\n有人用过这个功能吗?
\n我有一个 ScatterChart,我需要在其中绘制一条对角线(函数 y=x)作为视觉辅助。是否可以 ?如果是这样,我该怎么办?
scatterplot3d在 R 中使用,我试图从观察到回归平面绘制红线:
wh <- iris$Species != "setosa"
x <- iris$Sepal.Width[wh]
y <- iris$Sepal.Length[wh]
z <- iris$Petal.Width[wh]
df <- data.frame(x, y, z)
LM <- lm(y ~ x + z, df)
library(scatterplot3d)
G <- scatterplot3d(x, z, y, highlight.3d = FALSE, type = "p")
G$plane3d(LM, draw_polygon = TRUE, draw_lines = FALSE)
Run Code Online (Sandbox Code Playgroud)
要获得下图的 3D 等效项:
在 2D 中,我可以使用segments:
pred <- predict(model)
segments(x, y, x, pred, col = 2)
Run Code Online (Sandbox Code Playgroud)
但是在 3D 中,我对坐标感到困惑。
我有一个数据集,由 2 个变量(每个变量有 3 个值)的组合观察到的 9 个点组成,即
x <- c(0,10,100)
y <- c(0,25,30)
z <- matrix(c(1,2,3,4,5,6,7,8,9), nrow = 3, ncol = 3, byrow = TRUE)
Run Code Online (Sandbox Code Playgroud)
用这些数据我创建了一个等高线图
filled.contour(x,y,z)
Run Code Online (Sandbox Code Playgroud)
我分别从收集数据的点创建了散点图
A <- matrix(c(0,0,0,10,10,10,100,100,100), nrow = 3, ncol = 3) #As x
B <- matrix(c(0,0,0,25,25,25,30,30,30), nrow = 3, ncol = 3, byrow = TRUE) #As y
plot(A,B)
Run Code Online (Sandbox Code Playgroud)
然而,当我尝试将它们放在一起时,效果并不好。有人可以帮助我吗?如何正确地将散点图放在等高线图上?
x <- c(0,10,100)
y <- c(0,25,30)
z <- matrix(c(1,2,3,4,5,6,7,8,9), nrow = 3, ncol = 3, byrow = TRUE)
A <- matrix(c(0,0,0,10,10,10,100,100,100), nrow = 3, ncol …Run Code Online (Sandbox Code Playgroud) lll我尝试用和bbb变量绘制散点图amplitudes带有颜色条的 mollweide 投影来绘制
如果我做
import pylab as plt
import numpy as np
lll=N.random.uniform(-180,180,10000)
bbb=N.random.uniform(-90,90,10000)
amp=N.random.uniform(0,1,10000)
fig = plt.figure(figsize=(12,9))
ax = fig.add_subplot(111, projection="mollweide")
ax.scatter(N.array(lll)*N.pi/180., N.array(bbb)*N.pi/180., c=amp)
ax.grid(True)
Run Code Online (Sandbox Code Playgroud)
我得到了我想要的图,但没有颜色条。如果我添加一行ax.colorbar()或plt.colorbar()它不起作用。
在此先感谢您的帮助。
我试图将 Pandas 列中的数据可视化为 3D 散点图。我面临的问题是将颜色条匹配调整到我的 z 轴的确切大小。
我的代码:
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
s = pd.read_csv('FahrerVP8.out_1.csv', index_col=0)
ax = plt.figure()
three_d = ax.gca(projection='3d')
three_d1 = three_d.scatter(s['Latitude'], s['Longitude'],s['Mean_ VehicleSpeed'], c =s['Mean_ VehicleSpeed'] )
three_d.set_xlabel('Latitude')
three_d.set_ylabel('Longitude')
three_d.set_zlabel('Mean Vehicle Speed')
plt.colorbar(three_d1)
plt.show()
Run Code Online (Sandbox Code Playgroud)
我的结果
我希望用 z 轴高度调整我的彩条高度。
我有一个简单的数据框,以时间为索引,以虚拟值为例。[
] 我做了一个简单的散点图,正如你在这里看到的:
简单的问题:如何调整xaxis,以便从 00:00 到 23:00 的所有时间值都在xaxis? 绘图的其余部分很好,它显示了所有数据点,只是标签。尝试了不同的东西,但没有成功。
到目前为止我所有的代码是:
import pandas as pd
import seaborn as sns
import matplotlib.dates as mdates
from datetime import time
data = []
for i in range(0, 24):
temp_list = []
temp_list.append(time(i))
temp_list.append(i)
data.append(temp_list)
my_df = pd.DataFrame(data, columns=["time", "values"])
my_df.set_index(['time'],inplace=True)
my_df
fig = sns.scatterplot(my_df.index, my_df['values'])
fig.set(xlabel='time', ylabel='values')
Run Code Online (Sandbox Code Playgroud) 我正在遵循这个示例,我想创建更大的气泡,但无论我将尺寸列乘以多大,它们仍然很小,是否需要调整某种比例因子?我在文档中找不到它。
import seaborn as sns; sns.set()
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
ax = sns.scatterplot(x="total_bill", y="tip", data=tips)
cmap = sns.cubehelix_palette(dark=.3, light=.8, as_cmap=True)
ax = sns.scatterplot(x="total_bill", y="tip",
hue="size", size="size",
palette=cmap,
data=tips)
Run Code Online (Sandbox Code Playgroud)
tips['size'] = 100 * tips['size']
ax = sns.scatterplot(x="total_bill", y="tip",
hue="size", size="size",
palette=cmap,
data=tips)
Run Code Online (Sandbox Code Playgroud)
示例代码在这里
scatter-plot ×10
matplotlib ×4
python ×4
r ×3
pandas ×2
seaborn ×2
axis-labels ×1
charts ×1
contour ×1
ggplot2 ×1
graph ×1
javascript ×1
jquery ×1
jupyter ×1
plot ×1
plugins ×1
python-3.x ×1
scatter3d ×1