| 1202 | |
| 1203 | template<typename NumericX, typename NumericY> |
| 1204 | bool semilogy(const std::vector<NumericX>& x, const std::vector<NumericY>& y, const std::string& s = "") |
| 1205 | { |
| 1206 | assert(x.size() == y.size()); |
| 1207 | |
| 1208 | detail::_interpreter::get(); |
| 1209 | |
| 1210 | PyObject* xarray = detail::get_array(x); |
| 1211 | PyObject* yarray = detail::get_array(y); |
| 1212 | |
| 1213 | PyObject* pystring = PyString_FromString(s.c_str()); |
| 1214 | |
| 1215 | PyObject* plot_args = PyTuple_New(3); |
| 1216 | PyTuple_SetItem(plot_args, 0, xarray); |
| 1217 | PyTuple_SetItem(plot_args, 1, yarray); |
| 1218 | PyTuple_SetItem(plot_args, 2, pystring); |
| 1219 | |
| 1220 | PyObject* res = PyObject_CallObject(detail::_interpreter::get().s_python_function_semilogy, plot_args); |
| 1221 | |
| 1222 | Py_DECREF(plot_args); |
| 1223 | if(res) Py_DECREF(res); |
| 1224 | |
| 1225 | return res; |
| 1226 | } |
| 1227 | |
| 1228 | template<typename NumericX, typename NumericY> |
| 1229 | bool loglog(const std::vector<NumericX>& x, const std::vector<NumericY>& y, const std::string& s = "") |
nothing calls this directly
no test coverage detected