Python 2.7 在绘图中的不同位置包括自定义标记

Python 2.7 在绘图中的不同位置包括自定义标记,python-2.7,matplotlib,annotations,spyder,markers,Python 2.7,Matplotlib,Annotations,Spyder,Markers,我面临一个关于在图形中的不同位置放置自定义标记的问题。标记位置的x和y坐标已知。虽然这似乎是一件相当简单的事情,但我花了太多的时间来正确完成这件事。我请求Stack Overflow社区帮助我。下面是一个手写图,显示了我想在图中包括的标记类型 我已经包括了一个生成绘图的python绘图的简单工作示例。请注意,我应该能够给出标记位置的x和y坐标,并且标记应该有一条沿着它的直线虚线,如上图所示。标记是一个填充圆,其大小应由我修改 import numpy as np

我面临一个关于在图形中的不同位置放置自定义标记的问题。标记位置的x和y坐标已知。虽然这似乎是一件相当简单的事情,但我花了太多的时间来正确完成这件事。我请求Stack Overflow社区帮助我。下面是一个手写图,显示了我想在图中包括的标记类型

我已经包括了一个生成绘图的python绘图的简单工作示例。请注意,我应该能够给出标记位置的x和y坐标,并且标记应该有一条沿着它的直线虚线,如上图所示。标记是一个填充圆,其大小应由我修改

            import numpy as np
            from matplotlib import pyplot as plt
            from scipy.signal import savgol_filter
            import matplotlib.pyplot as plt
            #######################################################################
            data5= np.loadtxt('test1.txt',skiprows=1,unpack = True).T
            t3 = data5[:,2]
            C3 = data5[:,3]
            ####################################################################### 
            ######################################################################################################################
            plt.plot(t3,C3,'k',linestyle='solid',linewidth=1.0)
            plt.hold(True)
            plt.tick_params(axis='both',labelsize=9)
            plt.xlabel(r'$x$')
            plt.axhline(y=0.10,xmin=0,xmax=np.argmax(t3),linestyle='dotted',linewidth=0.5,color='black')
            plt.ylabel(r'$t$')
            ######################################################################################################################
            arrow_tip = 1.45,0.28
            text_pos = (1.6,0.25)
            label1=(r'$H=5.0$')
            plt.annotate(label1,xy=arrow_tip,xytext=text_pos,arrowprops=dict(arrowstyle="->",facecolor='black'),fontsize=9.5)   
            plt.text(1.10,0.105,r'Mixing Limit',fontsize=9.5)
            ######################################################################################################################
            plt.xlim(0,t3.max())
            plt.ylim(0,0.35)
            plt.savefig('test.eps',format='eps')
            plt.clf()
            plt.close()
            ######################################################################################################################
该链接提供了python代码运行所需的结果文件


非常感谢。

标记和虚线可以通过两个额外的绘图命令添加,例如,
plt.plot(t3[100],C3[100],'ok',markersize=10)
plt.plot([t3[100],t3[100],[C3[100]-0.05,C3[100]+0.05],'--k')
@JanKuiken非常感谢。你的解决方案奏效了。你能告诉我在上面的命令中“ok”代表什么吗?“o”代表一个圆圈标记,“k”代表黑色,参见示例。