我编写了以下代码:
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "UTF-8">
<meta name = viewport" content ="width=device-width, intial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content = "ie=edge">
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.min.js"></script>
<link rel ="stylesheet" href = "https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
<title>My Chart.js</title>
</head>
<body>
<div class = "container">
<canvas id="myChart"></canvas>
</div>
<script>
var c = [];
var randomNumber = Math.random()*190;
function getRandomDataPoint(x){
if (x == "x"){
var _return
return Math.random()*20;
}
else if (x == "y"){
return Math.random()*10 + randomNumber;
}
else{
}
}
var xPoints = []; …Run Code Online (Sandbox Code Playgroud) plot我使用seaborn三列进行了分散['Category','Installs' and 'Gross Income'],并使用数据集中的类别列进行了色调图。然而,在图例中,除了我想要出现的类别列之外,最后还有一个大自以为是的内容,显示了散点图中使用的列之一,安装。我想删除这个元素,但是通过搜索其他问题和文档seaborn,matplotlib我不知道如何继续。
这是我正在使用的代码片段:
fig, ax = pyplot.subplots(figsize=(12,6))
ax=sns.scatterplot( x="Installs", y="Gross Income", data=comp_income_inst, hue='Category',
palette=sns.color_palette("cubehelix",len(comp_income_inst)),
size='Installs', sizes=(100,5000), legend='brief', ax=ax)
ax.set(xscale="log", yscale="log")
ax.set(ylabel="Average Income")
ax.set_title("Distribution showing the Earnings of Apps in Various Categories\n", fontsize=18)
plt.rcParams["axes.labelsize"] = 15
# Move the legend to an empty part of the plot
plt.legend(loc='upper left', bbox_to_anchor=(-0.2, -0.06),fancybox=True, shadow=True, ncol=5)
#plt.legend(loc='upper left')
plt.show()
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
from matplotlib import pyplot as plt
dec = pd.read_csv('POLAR.txt', sep=" ", header=None, skiprows=1)
ra = [0,30,60,90,120,150,180,210,240,270,300,330]
ra = [x/180.0*np.pi for x in ra]
ax = plt.subplot(111, projection='polar')
plt.polar(ra, dec, 'ok')
plt.plot(ra,dec, data=ra , marker='o', color='olive', linewidth=2)
ax.set_yticklabels([])
Run Code Online (Sandbox Code Playgroud)
我仍然不确定如何连接最后一点和第一点。这就是我得到的:

我想知道如何用曲线连接这些点?有没有办法得到这个花生形图的方程?
我正在尝试使用从实验中收集的指标数据创建一个简单的散点图。我每天都会测试多个实验样本,并且样本数量各不相同。我正在尝试创建一个散点图,其中将天数作为 x 值,将当天收集的所有实验值作为 y 值。
到目前为止我已经尝试了几种方法。
我将保留完整的代码,但这里是数据的示例:
XVals = ['10-Dec-18', '11-Dec-18']
YVals = [[0.88, 0.78, 0.92, 0.98, 0.91],[0.88, 0.78, 0.92, 0.98]]
Run Code Online (Sandbox Code Playgroud)
由于 pyplot 希望 x 和 y 具有相同的维度,我尝试了以下建议
for xe, ye in zip(XVals, YVals):
plt.scatter([xe] * len(ye), ye)
Run Code Online (Sandbox Code Playgroud)
这给了我一个值错误,因为我的 xval 是字符串。
ValueError: could not convert string to float: '10-Dec-18'
Run Code Online (Sandbox Code Playgroud)
我还尝试以以下方式生成绘图,但我再次收到错误消息,因为 x 和 y 的尺寸不同:
fig, ax = plt.subplots()
ax.scatter(XVals, YVals)
plt.show()
Run Code Online (Sandbox Code Playgroud)
这给了我一个明显的错误:
ValueError: x and y must be the same size
Run Code Online (Sandbox Code Playgroud)
我无法找到类似图的任何示例(多个 Y 值与分类 X 值)。任何帮助,将不胜感激!
我在将散点图中的两组点相互连接时遇到问题,使得一条线(在本例中使用虚拟数据)将所有“前”点与相应的“后”点连接起来。'marker = 'o-' 参数不适用于 plt. 分散,但适用于 plt。阴谋。建议如何连接相应的值?谢谢并希望这个问题有意义!
import matplotlib.pyplot as plt
import numpy as np
x1 = ["pre"] * 4
x2 = ["post"] * 4
y1 = [0.1, 0.15, 0.13, 0.25]
y2 = [0.85, 0.76, 0.8, 0.9]
plt.scatter(x1, y1, color='y')
plt.scatter(x2, y2, color='g')
plt.show()
Run Code Online (Sandbox Code Playgroud) 我的文本文件中有三列,前两列代表 x 轴和 y 轴位置,我试图在 x 轴和 y 轴处绘制第三列。第三列由 0-5 数字组成。
我已经尝试了以下代码,但它没有给我所需的结果。
import numpy as np
import matplotlib.pyplot as plt
x, y, z = np.loadtxt('test.txt', delimiter=' ', unpack=True)
plt.plot(x, '.', y, '.', z)
plt.xlabel('Distance in meters')
plt.ylabel('Distance in meters')
plt.title('distribution of values')
plt.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)
这是示例 txt 文件。
2411.02 3310.21 3
-1246.65 -3098.39 4
166.298 6042.84 0
----
-51.7214 -2374.09 5
7285.08 661.326 0
-1390.51 4438.9 2
-2741.8 466.014 5
0 0 0
Run Code Online (Sandbox Code Playgroud)
图显示了我从下面的代码中得到的实际图。但是,第三个值应根据 x 轴和 y 轴位置以圆形形式绘制。
这是输出图:
在这些资源的帮助下解决: 在此处输入链接描述 …
我想要 Matplotlib 中的一个函数类似于Matlab 的“scatterhist”函数,它采用“x”和“y”轴的连续值,加上一个分类变量作为输入;并生成一个散点图,其中包含边际 KDE 图和两个或多个不同颜色的分类变量作为输出:
我在 Matplotlib 中
找到了带有边缘直方图的散点图示例,在 Seaborn jointplot 中找到了边缘直方图,在 Matplotlib 中找到了重叠直方图,在 Matplotib 中找到了边缘 KDE 图;但我还没有找到任何将散点图与边际 KDE 图结合起来并用颜色编码来指示不同类别的示例。
如果可能的话,我想要一个使用“vanilla”Matplotlib而不使用Seaborn的解决方案,因为这将避免依赖性并允许使用标准Matplotlib命令完全控制和自定义绘图外观。
我打算尝试根据上面的例子写一些东西;但在此之前,我想检查一下类似的功能是否已经可用,如果没有,那么将不胜感激有关最佳使用方法的任何指导。
我想不使用点或像素而是使用绘图单位来指定散点大小。以下面为例:
import matplotlib.pyplot as plt
x = [0]
y = [0]
plt.scatter(x,y)
plt.show()
Run Code Online (Sandbox Code Playgroud)
这会产生如下图:
比如说,如果我希望标记的半径恰好为 0.002 个绘图单位,该怎么办?据我了解,该s参数表示标记大小的区域(以磅为单位)。有没有办法直接以绘图单位提供它?如果不是,从绘图单位转换为点的最佳方法是什么,以便我可以将其传递到s参数中?
我还看到了一些其他问题,建议使用 aPatchCollection并简单地绘制具有指定半径的圆。我不想使用这种方法。我想避免广泛重写现有代码,而是将s参数与plt.scatter.
我尝试使用这个问题中的代码,它显然允许您根据绘图单位控制标记大小。但是我无法真正让它适用于我的基本情况:
import matplotlib.pyplot as plt
import numpy as np
class scatter():
def __init__(self,x,y,ax,size=1,**kwargs):
self.n = len(x)
self.ax = ax
self.ax.figure.canvas.draw()
self.size_data=size
self.size = size
self.sc = ax.scatter(x,y,s=self.size,**kwargs)
self._resize()
self.cid = ax.figure.canvas.mpl_connect('draw_event', self._resize)
def _resize(self,event=None):
ppd=72./self.ax.figure.dpi
trans = self.ax.transData.transform
s = ((trans((1,self.size_data))-trans((0,0)))*ppd)[1]
if s != self.size:
self.sc.set_sizes(s**2*np.ones(self.n))
self.size = s …Run Code Online (Sandbox Code Playgroud) matplotlib.pyplot.scatter有一个facecolors=None参数将使数据点标记看起来内部是空心的。我怎样才能获得相同的外观pandas.DataFrame.plot.scatter()?
matplotlib.pyplot.scatter()有一个facecolors=None参数将使数据点看起来内部是空心的。如何获得相同的外观seaborn.jointplot()?
在早期版本的seaborn中也发现了相同的论点,但由于某种原因在最新版本(0.11)中被删除。
scatter-plot ×10
matplotlib ×8
python ×8
seaborn ×2
arrays ×1
chart.js ×1
graph ×1
histogram ×1
javascript ×1
jointgrid ×1
jointplot ×1
kde-plasma ×1
margin ×1
pandas ×1
smoothing ×1