小编Man*_*lla的帖子

将.h文件中的常量导入python

我一直在寻找这个问题的简单答案,但似乎我找不到一个.我宁愿远离Python 2.6/2.7中尚未包含的任何外部库.

我有2个c头文件,类似于以下内容:

//constants_a.h
const double constant1 = 2.25;
const double constant2 = -0.173;
const int constant3 = 13;
Run Code Online (Sandbox Code Playgroud)

...

//constants_b.h
const double constant1 = 123.25;
const double constant2 = -0.12373;
const int constant3 = 14;
Run Code Online (Sandbox Code Playgroud)

...

我有一个python类,我想将这些常量导入:

#pythonclass.py
class MyObject(object):
    def __init(self, mode):
        if mode is "a":
            # import from constants_a.h, like:
            # self.constant1 = constant1
            # self.constant2 = constant2
        elif mode is "b":
            # import from constants_b.h, like:
            # self.constant1 = constant1
            # self.constant2 = constant2
Run Code Online (Sandbox Code Playgroud)

...

我有使用常量的c代码,类似于: …

c python ctypes header constants

15
推荐指数
2
解决办法
2万
查看次数

matplotlib中的gnuplot linecolor变量?

我有一组y值,形成一条线.另外,我有一个数组的元素数量与y数组的数量相同,范围从0到1.我们将这个数组称为'z'.我想绘制y值的数组,以便每个点的颜色对应于z值.

在gnuplot中,您可以使用'lc变量'来执行此操作:

plot ’data’ using 1:2:3 with points lc variable  
Run Code Online (Sandbox Code Playgroud)

使用此处的建议:Matplotlib scatterplot; 颜色作为第三个变量的函数 ,我能够使用散点图,它确实起作用:

import matplotlib as mpl  
import matplotlib.pyplot as plt  

plt.scatter(x, y, c=z, s=1, edgecolors='none', cmap=mpl.cm.jet)  
plt.colorbar()  
plt.show()  
Run Code Online (Sandbox Code Playgroud)

有没有办法用matplotlib中的plot方法做到这一点,类似于这个?

plt.plot(x, y, c=z)
Run Code Online (Sandbox Code Playgroud)

当我尝试上面的代码时,所有的行都显示为黑色.

python plot gnuplot matplotlib

6
推荐指数
2
解决办法
3119
查看次数

在matplotlib中绘制多个y轴和颜色条

我正在尝试生成一个散点图,它有两个不同的y轴和一个颜色条.

这是使用的伪代码:

#!/usr/bin/python

import matplotlib.pyplot as plt
from matplotlib import cm

fig = plt.figure()
ax1 = fig.add_subplot(111)
plt.scatter(xgrid,
        ygrid,
        c=be,                   # set colorbar to blaze efficiency
        cmap=cm.hot,
        vmin=0.0,
        vmax=1.0)

cbar = plt.colorbar()
cbar.set_label('Blaze Efficiency')

ax2 = ax1.twinx()
ax2.set_ylabel('Wavelength')

plt.show()
Run Code Online (Sandbox Code Playgroud)

它产生了这个情节: 情节http://i48.tinypic.com/2zix7x1.png

我的问题是,你如何使用不同比例的"波长"轴,以及如何将颜色条更多地向右移动,使其不是波长的方式?

python scatter matplotlib colorbar

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

单独文件中常量的python初始化

我有一个类似于这里提出的问题的问题:Importing a long list of constants to a Python file

基本上,我有一个单独的模块,它只包含一长串常量,例如

constants.py

x = 1.2
y = 30.4
.
.
.
Run Code Online (Sandbox Code Playgroud)

在另一个模块中,我想导入这些常量并将它们初始化为实例属性。

class.py

class something(object):
    def __init__(self):
        import constants
        self.x = constants.x
        self.y = constants.y
        .
        .
        .
Run Code Online (Sandbox Code Playgroud)

有没有更简单或更像 python 的方法来做到这一点,而不是重新输入所有变量名?

python import class constants

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

标签 统计

python ×4

constants ×2

matplotlib ×2

c ×1

class ×1

colorbar ×1

ctypes ×1

gnuplot ×1

header ×1

import ×1

plot ×1

scatter ×1