2

我有一个数据分布,我想在 C++ 程序中显示它(例如通过 Eclipse)。我可以在这里使用图书馆吗?我查找了 graphics.h,但构建这样的东西似乎需要很多时间。像这样的东西会很棒,但更简单的版本也适合我。 在此处输入图像描述

4

1 回答 1

1

是的,您可以尝试使用ImageMagick。它具有除 C/C++ 之外的许多其他语言的包装器!

这里的这个小演示足以让你开始你想要的!

int main( int argc, char * argv[] )
{
    int value[ 5 ] = { 10, 20, 30, 20, 10 };

    double width( 200 ), height( 200 );

    Magick::Image chart;
    chart.size( Magick::Geometry( width, height ) );
    chart.draw( Magick::DrawableRectangle( 0.0, 0.0, width, height ) );

    chart.strokeColor( Magick::Color( 255, 255, 255 ) );
    chart.draw( Magick::DrawableLine( width * 0.1, 0.0, width * 0.1, height ) );
    chart.draw( Magick::DrawableLine( 0.0, height * 0.9, width, height * 0.9 ) );

    double W( width * 0.8 / 5.0 );

    for ( int i( 0 ); i <= 4; i++ )
    {
        double X0( width * 0.1 + i * W );
        double Y0( height * 0.9 );

        chart.draw( Magick::DrawableRectangle( X0, Y0, X0 + W, Y0 - 4.0 * value[ i ] ) );
    }

    chart.write( "chart.png" );

    return 0;
}

它创建一个像这样的图形:

在此处输入图像描述

祝你好运!

于 2013-09-24T23:20:02.143 回答