Does your "existing solution" allow embedding SVG or PDF files? It sounds
to me like what you need is an image that is a higher resolution but
without changing the size it appears to be on the display. And if that's
the case, then either you need a vector image format (thus SVG or PDF, or
perhaps EPS), or otherwise you're up against the physical size of each
pixel in your display, which is well beyond the reach of any software.

Hope this helps!
-jo

On 11/18/13 3:31 PM, "Bradley Coleman" <colem...@sec.gov> wrote:

>Chad and Alan, yes that¹s the problem.  Thanks for responding.
>
>³If you like the way the image appears on screen, use the DPI argument to
>savefig()²
>
>I don¹t exactly understand this.  What do you mean on screen?  This code
>is
>integrated with a big project that I¹m running inside of ecplise, so I¹m
>not
>sure what you mean by on screen?  Either way, when I add and change a DPI
>argument to savefig(), it just blows up the dimensions of the PNG.
>
>³My question back to you is, why does it matter?  Most layout programs
>will
>let you set the physical size of the figure and scale the DPI to match.²
>
>So you¹re saying, fine let it produce a huge png and then shrink it with
>the
>html img tag and that will do the job, right?  Well, that¹s really hard
>for
>us to do because we¹re using an existing solution and changing that will
>involve lawyers, I kid you not.
>
>So, I can increase the DPI on the savefig call and correspondingly shrink
>the dimensions of the file in inches to get it to stay the same size, but
>the problem is the text and the lines, and the axis tick marks don¹t
>shrink
>too, which is really frustrating.  I can then shrink the fonts, but I
>don¹t
>know how to shrink the tick marks and the lines.  Anyways, it really seems
>like there should be an easier way to increase resolution ­ not to appear
>unappreciative in any way of the hard work the devs put into this
>excellent
>project!
>
>Alan, I read about pixel size in that link you sent me and I have no idea
>what to do.  Perhaps you guys can have a look at my code?
>
>Thanks!
>Bradley
>
>
>
>
>from matplotlib.pyplot import figure, cm
>from numpy import arange
>
># Determine array sizes depending on input data set
>topOfGradientColor = cm.colors.hex2color('#B5DBEF')
>bottomOfGradientColor = wht = cm.colors.hex2color('#FFFFFF')
>blumd = cm.colors.hex2color('#6BC3DE')
>bludk = cm.colors.hex2color('#6396A5')
>redmd = cm.colors.hex2color('#F7B27B')
>reddk = cm.colors.hex2color('#E7754A')
>gradientColorMap =
>cm.colors.LinearSegmentedColormap.from_list('gradientColorMap',
>[bottomOfGradientColor, topOfGradientColor], 256)
>blugrd = 
>cm.colors.LinearSegmentedColormap.from_list('blugrd',[blumd,bludk],256)
>blugrd_r =
>cm.colors.LinearSegmentedColormap.from_list('blugrd_r',[bludk,blumd],256)
>redgrd = 
>cm.colors.LinearSegmentedColormap.from_list('redgrd',[redmd,reddk],256)
>redgrd_r =
>cm.colors.LinearSegmentedColormap.from_list('redgrd_r',[reddk,redmd],256)
>
>numYears = len(barChartData)
>xMin = -0.3
>xMax = numYears + 0.3
>xLim = (xMin, xMax)
>paddingFactor = max(abs(yMin), abs(yMax)) * 0.18
>yLim = (yMin- paddingFactor, yMax + paddingFactor)
>
>fig = figure(figsize = (numYears*0.75, 3.5))
>
># Determine actual plot area
>subplot = fig.add_subplot(111, xlim=xLim, ylim=yLim, autoscale_on=False
>,axisbg=wht)
>subplot.imshow([[.7, .7],[.5,.5]], interpolation='bicubic',
>cmap=gradientColorMap, \
>        extent=(xMin, xMax, yMin - paddingFactor, yMax + paddingFactor),
>alpha=1)
>
># Create bars on chart
>values = [tuple[1] for tuple in barChartData]
>labels = ["'" + str(tuple[0])[2:] for tuple in barChartData]
>
>xArray = arange(numYears) + 0.25
>width=0.5
>
># Create bars and bar labels, adjusting for pos/neg values
>bottom = 0
>X = [[.6, .3],[.6,.3]]
>for left,top in zip(xArray, values):
>    right = left + width
>    strlab = "{0:.2f}".format(top) + '%'
>    if top >= 0:
>        subplot.imshow(X, interpolation='bicubic', cmap=blugrd,
>extent=(left, left+(width/2.0)+.01, bottom, top), alpha=1)
>        subplot.imshow(X, interpolation='bicubic', cmap=blugrd_r,
>extent=(left+(width/2.0), right, bottom, top), alpha=1)
>        subplot.text(left+width/2., top + (paddingFactor/5), strlab,
>ha='center', va='bottom', fontsize=8, family='serif')
>    else:
>        subplot.imshow(X, interpolation='bicubic', cmap=redgrd,
>extent=(left, left+(width/2.0)+.01, bottom, top), alpha=1)
>        subplot.imshow(X, interpolation='bicubic', cmap=redgrd_r,
>extent=(left+(width/2.0), right, bottom, top), alpha=1)
>        subplot.text(left+width/2., top - (paddingFactor/1.5), strlab,
>ha='center', va='bottom', fontsize=8, family='serif')
>
>subplot.set_xticks(xArray + width / 2) #sets x ticks
>subplot.set_xticklabels(labels, fontsize=8, family='serif') # sets x
>labels
>subplot.set_yticks([], minor=True) # minor=True means that it dynamically
>assigns tick values
>for lab in subplot.get_yticklabels(): # set_yticks doesn't accept font
>args,
>so we manually set them here
>    lab.set_fontsize(8)
>    lab.set_family('serif')
>
>subplot.hlines(0, -0.3, numYears + 0.3) # this is the horizontal line set
>to
>zero
>
>subplot.set_aspect('auto') # really no idea what this does.
>
>fig.savefig(fileNameBase + '/barchart.png', bbox_inches='tight', dpi=300)
>
>
>
>--------------------------------------------------------------------------
>----
>Shape the Mobile Experience: Free Subscription
>Software experts and developers: Be at the forefront of tech innovation.
>Intel(R) Software Adrenaline delivers strategic insight and game-changing
>conversations that shape the rapidly evolving mobile landscape. Sign up
>now. 
>http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktr
>k
>_______________________________________________
>Matplotlib-users mailing list
>Matplotlib-users@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/matplotlib-users


------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to