小编Cur*_*tis的帖子

在matplotlib中使用NaN值

我有每小时数据,包括许多列.第一列是日期(date_log),其余列包含不同的样本点.问题是即使每小时使用不同的时间记录采样点,因此每列至少有几个NaN.如果我使用第一个代码进行绘图,它可以很好地工作,但我希望在一天左右没有记录器数据的情况下存在间隙,并且不希望这些点被连接起来.如果我使用第二个代码,我可以看到间隙,但由于NaN点数据点没有加入.在下面的例子中,我只是绘制前三列.

如果存在像蓝点这样的巨大差距(01/06-01/07/2015),我希望有一个差距然后得分加入.第二个例子没有加入点.我喜欢第一个图表,但是当24小时日期范围内没有样本数据点时,我希望创建像第二种方法那样的间隙,等待较长时间的缺失数据点作为间隙.

有什么工作吗?谢谢

1-方法:

Log_1a_mask = np.isfinite(Log_1a) # Log_1a is column 2 data points
Log_1b_mask = np.isfinite(Log_1b) # Log_1b is column 3 data points

plt.plot_date(date_log[Log_1a_mask], Log_1a[Log_1a_mask], linestyle='-', marker='',color='r',)
plt.plot_date(date_log[Log_1b_mask], Log_1b[Log_1b_mask], linestyle='-', marker='', color='b')
plt.show()
Run Code Online (Sandbox Code Playgroud)

2-方法:

plt.plot_date(date_log, Log_1a, ‘-r*’, markersize=2, markeredgewidth=0, color=’r’) # Log_1a contains raw data with NaN
plt.plot_date(date_log, Log_1b, ‘-r*’, markersize=2, markeredgewidth=0, color=’r’) # Log_1a contains raw data with NaN
plt.show()
Run Code Online (Sandbox Code Playgroud)

1方法输出: 在此输入图像描述

2方法输出: 在此输入图像描述

python matplotlib

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

改变散点图标记厚度

如何更改散点图中标记线的粗细plt.scatter()markeredgewidth是一个有效的属性plt.plot(); scatter情节是否有任何等效属性?

例如,当您更改散点图的大小(使用marker = 'x')时,标记只会变大,但线条粗细不会改变.

我不是想改变尺寸而是线厚!

python matplotlib

8
推荐指数
1
解决办法
1万
查看次数

如何设置日期图 x 轴的格式,以便月份以字母显示

我一直在尝试更改 X 轴标签,以便我看到字母中的月份,例如 01 January 或 01 Jan,而不是当前生成的 01 01。

有办法实现吗?我通过操作日期在单个图表上绘制多个数据集,以便它们出现在单个图表上,但它们不一定属于同一年。因此,我一直试图删除年份标签,但剩余的月份数字看起来不太好。

import matplotlib.dates as mdates
from datetime import date
import matplotlib.pyplot as plt

def fig_formatter(ax):
    months = mdates.MonthLocator()
    myFmt = mdates.DateFormatter('%d/%m')
    ax.xaxis.set_major_formatter(myFmt)
    plt.gcf().autofmt_xdate()
    plt.grid()
    ax.xaxis.set_minor_locator(months)
    ax.xaxis.grid(True, 'major', linewidth=1)
    ax.xaxis.grid(True, 'minor', linewidth=0.5)

x_data = [date(2017, 1, 1), date(2017, 5, 1), date(2017, 12, 1)]
y_data = [5, 30, 10]
plt.plot_date(x_data, y_data, '-o')

ax = plt.subplot(111)
fig_formatter(ax)
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

python matplotlib

5
推荐指数
0
解决办法
6704
查看次数

UIButton填充内部图像来自各个方面

我有一个按钮,a)图像和b)背景图像 - 都内置在故事板中.当背景图像具有不同的形状时,图像从按钮弹出.我想给实际图像(a)从各个方向的一些填充,以便它可以在背景图像内缩回.我不能用插图做,因为他们只给不相对的边提供填充,当相同的插图设置到相对的边 - 图像不缩小.很高兴知道它是如何在故事板和编程中完成的.

xcode uibutton uiimage ios swift

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

Pyodbc没有更新表

基本上,我试图更新Table1中的Column1_mbgl字段数据,这些数据均基于MS Access数据库。该脚本被执行而没有任何错误,但是在检查表时没有发生更新。我尝试了代码中所示的两个选项,但均未成功。第二个选项是直接从MS Access查询生成的SQL代码。有人可以建议我在代码中缺少什么吗?

#import pypyodbc
import pyodbc

# MS ACCESS DB CONNECTION
pyodbc.lowercase = False
conn = pyodbc.connect(
    r"Driver={Microsoft Access Driver (*.mdb, *.accdb)};" +
    r"Dbq=C:\temp\DB_access.accdb;")

# OPEN CURSOR AND EXECUTE SQL
cur = conn.cursor()

# Option 1 - no error and no update
cur.execute("UPDATE Table1 SET Column1_mbGL = Column2_mbGL-0.3 WHERE ((Column3_name='PZ01') AND (DateTime Between #6/14/2016 14:0:0# AND #6/16/2016 12:0:0#) AND (TYPE='LOG'))");

# Option 2 - no error and no update
#cur.execute("UPDATE Table1 SET Table1.Column1_mbGL = [Table1]![Column2_mbGL]-0.3 WHERE (((Table1.Column3_name)='PZ01') AND ((Table1.DateTime) …
Run Code Online (Sandbox Code Playgroud)

python ms-access pyodbc

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

标签 统计

python ×4

matplotlib ×3

ios ×1

ms-access ×1

pyodbc ×1

swift ×1

uibutton ×1

uiimage ×1

xcode ×1