tasuki 15 hours ago [-]
Wow, the first chart on that web page is really, really ugly. It has these weird 3-d effects that look like from 2001. All it's missing are reflections...
ajnin 13 hours ago [-]
A real throwback, I remember using JFreeChart back in 2006 or so. Looks like the design hasn't changed a bit since then. That's thanks to Java's backwards compatibility ethos I suppose ...
omneity 15 hours ago [-]
I read your comment first and was like it can’t be that bad. I then opened the page, scrolled frantically down and boy oh boy were you right.
specproc 15 hours ago [-]
Title needs a correction: Hideous charts with JRuby and JFreeChart.
nritchie 13 hours ago [-]
Being able to add an interpreted script engine to a Java application is a super-power for some uses. I embedded a Jython (Python in the JVM) command line into a Java Swing app to provide a level of flexibility that I never could with a GUI. Every time I look at JRuby I wonder if Jython was the right choice. It is too late now but JRuby looks awfully nice.
CopyOnWrite 4 hours ago [-]
IMHO it is one of the big tragedies of modern IT history, that JavaScript and Python 'own' the market for scripting languages in the mainstream.

From a pure technical perspective, I would guess JRuby or one of the JavaScript implementations would have been a better choice for scripting, especially given the poor state of Jython.

From a pragmatic perspective and what your users are mostly able to figure out, Python might have been the best choice. I even saw software developers with years of experience in imperative languages struggling to understand Rubys blocks...

Out of pure interest: What was the purpose of the Java application and which aspects did you allow the users of the application to script with Jython?

rorylaitila 2 hours ago [-]
JFreeChart is quite the throwback! Modern JavaScript chart libraries are much better for our users however. On the JVM, I've been successful running JS with GraalJS for the backend. We run GraalJS for https://docs.chartsql.com/ with the output being Apache ECharts (https://echarts.apache.org/en/index.html) for the browser. ECharts can generate SVG server side also, though I haven't tested it in production.
npongratz 16 hours ago [-]
> Everyone loves pie!

Oh gosh, no! Count me among those who greatly dislike pie charts in almost every context.

"Almost never use a pie chart for data"

https://theconversation.com/heres-why-you-should-almost-neve...

https://news.ycombinator.com/item?id=38912534

tmoertel 13 hours ago [-]
In early 1990s I worked at a mid-sized software company making software to help big businesses do big-business stuff. One day, another programmer pops into my cube and says:

"Hey, how do you draw a 3d pie chart?"

"What?" I asked. "Why?"

"Well, Excel can do them. And somebody saw one. Now they want our software to draw them."

"Are you serious?"

"Yes, I need it like now. I'm supposed to demo it later today."

So I get out a sheet of paper, draw some triangles, and work out that projection math. He walks away with the paper. Half an hour later, he calls me over.

"Hey, it's a 3d pie chart!"

And there it was: On a screen I was all too familiar with, where the 2d pie chart used to be, was a squat 3d pie chart, looking like it was a fat inch thick. Of course, there was too much margin above and below, because of the flatter aspect ratio, but hey, it was 3d and it was good enough for a demo.

I think that was the first day I realized that programming can be used for evil.

hinkley 10 hours ago [-]
3d pie charts are literally the devil.

It's 3d pie charts, dot charts, pie charts, and any chart that has the origin set to greater than 0 in descending order of evilness.

We need a ## anniversary edition of Lying with Statistics.

sokoloff 4 hours ago [-]
If your uptime (or your percentage score in a class) is best understood/consumed on a chart with an origin of zero, you’re having a very bad time.
brightball 15 hours ago [-]
That’s really impressive! Not the chart itself, but seeing how easy it is to use any existing Java library from within a Ruby codebase is super cool.

Ruby already has a pretty incredible gem ecosystem but having all things Java available too really adds tremendous utility.

Love JRuby. Thanks for all of the hard work headius!

sabslikesobs 7 hours ago [-]
Very cool. I'm one of the few (it seems) who likes these styles of chart, so that was a nice surprise.

I love Ruby, and one of my few qualms about using it is that it doesn't really have any cross-platform GUI libraries. Someday I'll try building one in JRuby...

gitroom 12 hours ago [-]
tbh those old 3d charts just crack me up - i remember seeing stuff like that in early office programs. you ever feel like some trends just stick around for way too long even when better stuff exists?
codr7 13 hours ago [-]
One word, Tufte; read them all, then read them again.
headius 2 days ago [-]
Why use C, Python, or JavaScript to generate charts for your Ruby applications? Use JRuby and it's so much easier!
mberning 15 hours ago [-]
Thank you for all your work on JRuby. I love it.
headius 12 hours ago [-]
I'm glad you find it useful!
knowitnone 16 hours ago [-]
article complains about a ruby gem(Charty) calling a python library(matplotlib) yet author is running Ruby in Java so they can access some Java library!
vidarh 16 hours ago [-]
I don't even like Java/JVM, and I still think that is more reasonable than running a gem that embeds Python.
brightball 15 hours ago [-]
The Ruby code is already running on the JVM so utilizing the library isn’t calling out to another runtime to execute like you normally would have to in order to do something like this.
fiddlerwoaroof 12 hours ago [-]
The whole point of the JVM is that languages don’t need to be limited to the low-level types C FFI forces you into.
dismalaf 16 hours ago [-]
https://github.com/ruby-numo/numo-gnuplot

There's always good 'ol Gnuplot and it's many wrappers... This one looks nice.