小编ecj*_*cjb的帖子

在python中交互式旋转3D图-Matplotlib-Jupyter Notebook

我想知道如何像视频所述交互式地旋转3D图(如果您从上方或下方或从右或左进行选择)。我可以在spyder或jupyter Notebook中生成3D图,但此后它保持静态,无法与之交互并旋转/更改视点角度。

这是代码:

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import numpy as np

fig = plt.figure()
ax = fig.gca(projection='3d')

scale = 8
# Make data.
X = np.arange(-scale, scale, 0.25)
Y = np.arange(-scale, scale, 0.25)
X, Y = np.meshgrid(X, Y)
Z = X**2 + Y**2

# Plot the surface.
surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm,
                   linewidth=0, antialiased=False)

# Customize the z axis.
ax.set_zlim(0, 100)
ax.zaxis.set_major_locator(LinearLocator(10))
ax.zaxis.set_major_formatter(FormatStrFormatter('%.02f'))

# …
Run Code Online (Sandbox Code Playgroud)

python 3d interactive matplotlib jupyter-notebook

5
推荐指数
2
解决办法
8510
查看次数

无法在 Jupyter 的 PDF 输出中显示 Unicode 字符(如?)

我在jupyter notebook.

我想为我的工作结果生成一个 pdf。但是,在生成 pdf 时,?数学表达式?=3的 丢失了,因此 pdf 中的输出为=3

这是 jupyter 笔记本代码

In[1]: ?=3 
Out[1]: 3
Run Code Online (Sandbox Code Playgroud)

这是使用 jupyter notebook 生成的 pdf

In[1]: =3 
Out[1]: 3
Run Code Online (Sandbox Code Playgroud)

对于完全打印出nteract表达式的生成的pdf,情况并非如此?=3。但是,使用 .pdf 生成的 pdf 的整体外观nteract不如使用 .pdf 生成的 pdf 好jupyter notebook

这是生成的打印pdf nteract(看起来与代码本身完全相同):

In[1]: ?=3
Out[1]: 3
Run Code Online (Sandbox Code Playgroud)

有人可以知道如何用 打印这样的字符jupyter notebook吗?

提前谢谢了

pdf unicode mathematical-expressions julia jupyter-notebook

4
推荐指数
1
解决办法
1975
查看次数

调用函数时声明参数名称

Julia 1.4.0我有以下功能:

function output(W::Int64,F::Int64,P::Int64,S::Int64)
       return ((W-F+2*P)/S +1)
       end
Run Code Online (Sandbox Code Playgroud)

当我输入以下命令时,输出如预期

julia> output(28,5,0,1)
24.0
Run Code Online (Sandbox Code Playgroud)

现在,为了确定哪个参数是什么,我在调用函数时明确命名它们的名称(如果可能的话,如果可以以不同的顺序编写参数,这可能会有所帮助)

julia> output(W=28,F=5,P=0,S=1)
ERROR: MethodError: no method matching output(; W=28, F=5, P=0, S=1)
Closest candidates are:
  output(::Int64, ::Int64, ::Int64, ::Int64) at REPL[23]:2 got unsupported keyword arguments "W", "F", "P", "S"
  output(::Any, ::Any, ::Any, ::Any) at REPL[2]:2 got unsupported keyword arguments "W", "F", "P", "S"
Stacktrace:
 [1] top-level scope at REPL[25]:1
Run Code Online (Sandbox Code Playgroud)

其他类似的方法可能吗?

arguments function keyword-argument julia

4
推荐指数
1
解决办法
311
查看次数

如何在 PySide2 中使用 QLabel 加载图像

我是编码和 python 的初学者。我读到 tkinter 有点“基础”,如果你想开发一个有点复杂的应用程序,而 PyQt 在许可方面有问题。这就是为什么我选择PySide2来开发这种项目,但发现目前文档相对较少。这是正确的选择吗?

我目前的编码问题如下:我试图用 PySide2 加载图像但没有成功。这是我2次尝试的代码:

尝试 N°1:

import sys
import PySide2
from PySide2.QtWidgets import QApplication, QLabel

app = QApplication(sys.argv)
img = PySide2.QtGui.QImage("/Users/mymac/Downloads/ecg_measure.png")
pixmap=PySide2.QtGui.QPixmap(img)
label = PySide2.QtWidgets.QLabel.setPixmap(pixmap)
label.show()
app.exec_()
Run Code Online (Sandbox Code Playgroud)

我收到以下消息:

Traceback (most recent call last):

File "<ipython-input-1-86961df4959d>", line 8, in <module>
label = PySide2.QtWidgets.QLabel.setPixmap(pixmap)

TypeError: descriptor 'setPixmap' requires a 'PySide2.QtWidgets.QLabel' object but received a 'PySide2.QtGui.QPixmap'
Run Code Online (Sandbox Code Playgroud)

使用回溯中的信息,我尝试了以下尝试 N°2:

import sys
import PySide2
from PySide2.QtWidgets import QApplication, QLabel

app = QApplication(sys.argv)
img = PySide2.QtGui.QImage("/Users/mymac/Downloads/ecg_measure.png")
pixmap=PySide2.QtGui.QPixmap(img) …
Run Code Online (Sandbox Code Playgroud)

image qpixmap python-3.x qlabel pyside2

3
推荐指数
1
解决办法
8459
查看次数

朱莉娅:我们如何计算伴随或古典伴随(线性代数)?

我想在中计算经典伴随 Julia 1.0

为此,我复制了维基百科中作为示例给出的矩阵

julia> B = [-3 2 -5; -1 0 -2; 3 -4 1]
3×3 Array{Int64,2}:
 -3   2  -5
 -1   0  -2
  3  -4   1
Run Code Online (Sandbox Code Playgroud)

在我看来,这似乎是在计算其转置B而不是其伴随。相反,我们应该(从Wikipedia)得到这个:

并尝试使用此处adjoint()茱莉亚文档中提到的函数来获得其伴随,尽管该文档没有具体说明该函数的作用

julia> adjoint(B)
3×3 Adjoint{Int64,Array{Int64,2}}:
 -3  -1   3
  2   0  -4
 -5  -2   1
Run Code Online (Sandbox Code Playgroud)

相反,我想得到这个:

在此处输入图片说明

在Matlab中,我确实得到了:

>> adjoint(B)

ans =

   -8.0000   18.0000   -4.0000
   -5.0000   12.0000   -1.0000
    4.0000   -6.0000    2.0000
Run Code Online (Sandbox Code Playgroud)

linear-algebra julia

3
推荐指数
1
解决办法
142
查看次数

如何将 Python pandas 转换为 Julia DataFrame(使用 PyJulia)并返回 Python Pandas

我想用它PyJulia来加速代码的某些部分

import numpy as np
import julia
import pandas as pd
import random
from julia import Base
from julia import Main
from julia import DataFrames

n = 100000
randomlist = []
for i in range(0,n):
    num = random.randint(1,100)
    randomlist.append(num)

data = {
    'Score': list(randomlist),
        'ScoreBin': list(np.zeros(n))
           }
df = pd.DataFrame(data, columns = ['Score', 'ScoreBin'])
Main.dfj = df

Main.eval(""" 
for i = 1:10
    #println(i)
    if dfj.Score[i] >= 10
        println(dfj.Score[i])
    end
end
"""
)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误消息:

JuliaError: Exception 'TypeError: non-boolean (PyObject) …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas julia julia-dataframe

3
推荐指数
1
解决办法
1226
查看次数

Julia - 按元素检查向量 x 的元素是否在向量 y 中

我想按元素(或广播)检查向量 x 的元素是否在 Julia 中的向量 y 中,就像函数checkin所做的那样:

\n\n
x = ["one", "two", "three", "four"]\ny = ["two", "three", "five", "four"]\n\nfunction checkin(x,y)\n    for i = 1:length(y)\n        if y[i] \xe2\x88\x88 x\n            println(true)\n        else \n            println(false)\n        end\n    end\nend\ncheckin(x,y)\n
Run Code Online (Sandbox Code Playgroud)\n\n

输出:

\n\n
true\ntrue\nfalse\ntrue\n
Run Code Online (Sandbox Code Playgroud)\n\n

如果我输入

\n\n
x .\xe2\x88\x88 y\n
Run Code Online (Sandbox Code Playgroud)\n\n

或者

\n\n
x .in y\n
Run Code Online (Sandbox Code Playgroud)\n\n

我收到一个错误

\n\n

通常,我确信存在一种更简单的方法来做到这一点,例如编写 9 行函数,但我找不到它

\n

element vector broadcasting julia

2
推荐指数
1
解决办法
1014
查看次数

如何在终端的脚本中显示 r 中的绘图

可以从终端运行 ar 脚本:

假设我有一个文件“message.r”,其中包含以下内容:

print("hello world")
Run Code Online (Sandbox Code Playgroud)

我可以使用以下命令从终端运行脚本:

$ Rscript message.r
[1] "hello world"
Run Code Online (Sandbox Code Playgroud)

现在让我们说我有一个包含情节名称代码的脚本plot.r,内容如下:

x = c(1,2,3)
y = c(2,3,6)
plot(x,y)
Run Code Online (Sandbox Code Playgroud)

输入命令

Rscript plot.r
Run Code Online (Sandbox Code Playgroud)

没发生什么事

如何从终端显示绘图?

terminal plot r

2
推荐指数
1
解决办法
3190
查看次数

zsh 中的可视 (Vim) 模式下的 Yank 不会复制到剪贴板以便在其他应用程序中使用 Ctrl + d 进行粘贴

我最近从 转到bashzshzsh.

当我在 Visual 中突出显示一个字符串并用 拉出它时y,我可以毫无问题地将其粘贴到 zsh 中。但是,当我尝试将相同的字符串粘贴到外部zsh(使用命令Ctrl+ d)时,它不起作用。相反,最后复制的带有Ctrl+的项目c将被复制到那里。

是否有额外的命令要写入.zshrc

macos vim zsh copy-paste key-bindings

2
推荐指数
1
解决办法
3595
查看次数

有没有办法从终端关闭使用 matplotlib 创建的绘图(无需用鼠标关闭窗口)

有没有办法从终端中的命令关闭使用 matplotlib 创建的绘图(无需用鼠标关闭窗口)?

zsh在 macos 10.15.7 上使用

假设我有一个plot1.py包含以下内容的文件:

import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
Run Code Online (Sandbox Code Playgroud)

从命令行,当我执行python plot1.py此操作时,会打开一个显示绘图的窗口。我想做的是使用键盘命令从终端关闭此窗口。我尝试了ctrl+cctrl+y但没有成功,我必须通过单击关闭按钮用鼠标关闭窗口

注意:我没有使用 anaconda (如这个问题中提到的

python terminal command-line matplotlib

2
推荐指数
1
解决办法
1723
查看次数