{"id":234,"date":"2025-06-26T10:54:19","date_gmt":"2025-06-26T02:54:19","guid":{"rendered":"https:\/\/xiaoxiaoxiaoyu.com\/?p=234"},"modified":"2025-06-26T10:55:11","modified_gmt":"2025-06-26T02:55:11","slug":"matplotlib-matplotlib-cpp%e9%81%bf%e5%9d%91","status":"publish","type":"post","link":"https:\/\/xiaoxiaoxiaoyu.com\/?p=234","title":{"rendered":"matplotlib\/matplotlib-cpp\u907f\u5751"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">docker\u5185\u672a\u5b89\u88c5\u865a\u62df\u663e\u793a\u5668\u6216\u672a\u5171\u4eab\u5bbf\u4e3b\u673a\u663e\u793a\u5668\u670d\u52a1\uff0cpython\u4f7f\u7528matplotlib\u4f1a\u62a5\u9519\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">exception _tkinter.tclerror: &#8216;no display name and no $display environment variable&#8217; in<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C++\u4f7f\u7528matplotlib-cpp\u662f\u4f1a\u5bfc\u81f4\u7a0b\u5e8f\u5d29\u6e83\uff0c\u5c24\u5176\u662fmatplotlib\u7684save\uff08\uff09\u6216savefig\uff08\uff09\uff0c\u4f7f\u7528gdb\u67e5\u770bcore\u6587\u4ef6\u4e00\u5806libc\u5e93\u95ee\u9898\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">0 __GI_raise (sig=sig@entry=6) at ..\/sysdeps\/unix\/sysv\/linux\/raise.c:50<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1 0x00007fe46be30859 in __GI_abort () at abort.c:79<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2 0x00007fe46c2088d1 in ?? () from \/lib\/x86_64-linux-gnu\/libstdc++.so.6<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3 0x00007fe46c21437c in ?? () from \/lib\/x86_64-linux-gnu\/libstdc++.so.6<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4 0x00007fe46c2143e7 in std::terminate() () from \/lib\/x86_64-linux-gnu\/libstdc++.so.6<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">5 0x00007fe46c214699 in __cxa_throw () from \/lib\/x86_64-linux-gnu\/libstdc++.so.6<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">6 0x000055847916b667 in matplotlibcpp::save (filename=&#8221;output\/trajectory.png&#8221;, dpi=0) at \/home\/zhito\/SensorX2car\/pose_sensor2car\/3rdparty\/matplotlib-cpp\/matplotlibcpp.h:2642<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">7 0x000055847916643f in YawCalib::LoadData (this=0x7fffeed0c970, file_path=&#8221;data\/novatel_enu.csv&#8221;, start_frame=0, end_frame=2147483647) at \/home\/zhito\/SensorX2car\/pose_sensor2car\/src\/yawCalib.cpp:58<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">8 0x000055847916569c in main (argc=3, argv=0x7fffeed0cb38) at \/home\/zhito\/SensorX2car\/pose_sensor2car\/src\/run_imu2car.cpp:45<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ubuntu\u7cfb\u7edf\u4e00\u822c\u81ea\u5e26X11\u670d\u52a1\u5668\uff0c\u5b89\u88c5X11\u670d\u52a1\u5668\uff1asudo apt-get install x11-xserver-utils<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u6253\u5f00X11\u670d\u52a1\u5668\u6743\u9650\uff1axhost +<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bbe\u7f6e\u5bbf\u4e3b\u673a\u73af\u5883\u53d8\u91cfexport DISPLAY=:0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fdb\u5165\u5bb9\u5668\u65f6\u6dfb\u52a0\u73af\u5883\u53d8\u91cf\u5171\u4eab\u4e0e\u7f51\u7edc\u5171\u4eab\uff1adocker run -it -e DISPLAY=$DISPLAY &#8211;net=host dockername<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p class=\"text-justify\">docker\u5185\u672a\u5b89\u88c5\u865a\u62df\u663e\u793a\u5668\u6216\u672a\u5171\u4eab\u5bbf\u4e3b\u673a\u663e\u793a\u5668\u670d\u52a1\uff0cpython\u4f7f [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-234","post","type-post","status-publish","format-standard","hentry","category-9"],"_links":{"self":[{"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=\/wp\/v2\/posts\/234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=234"}],"version-history":[{"count":1,"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=\/wp\/v2\/posts\/234\/revisions"}],"predecessor-version":[{"id":235,"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=\/wp\/v2\/posts\/234\/revisions\/235"}],"wp:attachment":[{"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xiaoxiaoxiaoyu.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}