Dear All,
I am trying to write a program in matplotlib to generate stacked bar graphs.
My problem is that the commands - plt.show() and self.fig.savefig(fileName)
generate different outputs.
I tried different output formats like PDF, PNG, EPS. But the problem remains
the same.
This happens for the lines that I am trying to draw outside the plot.
I am trying to draw vertical lines between xticklabels.
I have uploaded the data file and the code file.
http://old.nabble.com/file/p33893817/data.dat data.dat
http://old.nabble.com/file/p33893817/matplot1.py matplot1.py
Could anyone explain how to resolve this problem?
Thank You,
Raj
···
--
View this message in context: http://old.nabble.com/Difference-in-show-and-output-file-tp33893817p33893817.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
Just in case, if anyone needs the answer, I figured it out.
I used the transData transform in order to draw the lines correctly.
Here is the code -
# The code below is to add the lines near the tick labels
fig = barGraph.fig
xAxisLim=barGraph.ax.xaxis.get_view_interval()
tickLocArray = barGraph.ax.xaxis.get_majorticklocs()
yStart=-70
yEnd=-0.5
line = Line2D([xAxisLim[0], xAxisLim[0]],
[yStart,yEnd],linewidth=2, color='black',
transform=barGraph.ax.transData)
fig.lines.append(line)
for i in xrange(11):
lnWidth=2
yStartOffset=0
if((i+1)%4 != 0):
lnWidth=1
yStartOffset=20
xOffset = tickLocArray[i] + (tickLocArray[i+1] - tickLocArray[i])/2
line = Line2D([xOffset, xOffset],
[yStart+yStartOffset,yEnd],linewidth=lnWidth, color='black',
transform=barGraph.ax.transData)
fig.lines.append(line)
line = Line2D([xAxisLim[1], xAxisLim[1]],
[yStart,yEnd],linewidth=2, color='black',
transform=barGraph.ax.transData)
fig.lines.append(line)
plt.figtext(0.247, 0.05, '1')
plt.figtext(0.523, 0.05, '2')
plt.figtext(0.797, 0.05, '4')
Thank You!
Raj
rajtendulkar wrote:
···
Dear All,
I am trying to write a program in matplotlib to generate stacked bar
graphs.
My problem is that the commands - plt.show() and
self.fig.savefig(fileName) generate different outputs.
I tried different output formats like PDF, PNG, EPS. But the problem
remains the same.
This happens for the lines that I am trying to draw outside the plot.
I am trying to draw vertical lines between xticklabels.
I have uploaded the data file and the code file.
http://old.nabble.com/file/p33893817/data.dat data.dat
http://old.nabble.com/file/p33893817/matplot1.py matplot1.py
Could anyone explain how to resolve this problem?
Thank You,
Raj
--
View this message in context: http://old.nabble.com/Difference-in-show-and-output-file-tp33893817p33894599.html
Sent from the matplotlib - users mailing list archive at Nabble.com.