我正在尝试从pandas
数据框中绘制分散的线条和标记,但在某些情况下,线条最终会在标记之上绘制。有没有办法分别设置线条和标记的zorder
,以确保标记始终绘制在任何一行的顶部,无论系列如何?例如像marker_zorder=2, line_zorder=1
例如,以下代码:
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'x': [1, 5, 10],
'y1': [24, 7, 14],
'y2': [14, 6, 35]})
fig, ax = plt.subplots(figsize=(3, 5))
df.plot.line(x='x', ls='--', marker='.', ms=15, ax=ax)
ax.set_ylim(bottom=0)
plt.savefig('test.png', bbox_inches='tight')
生成此图表:
我们可以看到橙色线在蓝色标记上绘制。
答案 0 :(得分:1)
不,没有Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Set rng = Range(Range("D2"), Range("D2").End(xlDown))
If Not Intersect(Target, rng) Is Nothing Then
If Target.Count = 1 Then
On Error GoTo ErrorHandler
If Target = "Yes" Then
Sheets(Target.Offset(, -1).Value).Visible = True
Else
Sheets(Target.Offset(, -1).Value).Visible = False
End If
End If
End If
Exit Sub
ErrorHandler:
MsgBox "The sheet '" & Target.Offset(, -1) & "' does not exist!"
End Sub
之类的东西。但是,您可以将数据绘制两次,一次作为一行,一次使用标记。
marker_zorder